comp.lang.ada
 help / color / mirror / Atom feed
* Group newbie !
@ 1996-12-22  0:00 Mike Paley
  1996-12-23  0:00 ` Larry Kilgallen
                   ` (2 more replies)
  0 siblings, 3 replies; 13+ messages in thread
From: Mike Paley @ 1996-12-22  0:00 UTC (permalink / raw)



Ah sod it, I'll start a new thread !

Started at Aston University in Birmingham uk in October. :(

God knows why they've chosen Ada - it ain't that popular in the UK!

I suppose I'm looking for an Ada manual or user guide or whatever you 
wanna call it stuffed with hard facts. All I'm advised to get (by the 
uni), and books I see in shops are all "flowery"*.

The sort of thing I'm after is a book with a chapter devoted to Ada 
statements, one per page (or so), giving an explanation, clear syntax, 
a couple of examples and a list of related or similar statements. The 
statements should be listed in alphabetical order as well.

Any really useful pages to point browsers at would be useful as well, 2 
(other thread) URLs noted.

* Flowery - used in "A Christmas Carol" Crescent Theatre, Birmingham. 
6-11th Jan 1997.

TIA

-- 
Comm again, Mike. 

MM   MM  EEEEE  RRRR   RRRR    Y      Y     X     X  MM   MM     A      SSS
M M M M  E      R   R  R   R    Y    Y       X   X   M M M M    A A    S   S
M  M  M  E      R   R  R   R     Y  Y         X X    M  M  M    A A    S
M     M  EEEE   RRRR   RRRR        Y           X     M     M   A   A    SSS
M     M  E      R R    R R        Y           X X    M     M   AAAAA       S
M     M  E      R  R   R  R      Y           X   X   M     M  A     A  S   S
M     M  EEEEE  R   R  R   R    Y           X     X  M     M  A     A   SSS

Ex Turnpike user.

If you want to see the rest of this sig. file or find out more about me, 
have a look at http://www.paley.demon.co.uk/ [1996:11:30]







^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Group newbie !
  1996-12-22  0:00 Group newbie ! Mike Paley
@ 1996-12-23  0:00 ` Larry Kilgallen
  1996-12-24  0:00   ` Mike Paley
  1996-12-24  0:00 ` Rich Maggio
  1997-01-05  0:00 ` Robert Dewar
  2 siblings, 1 reply; 13+ messages in thread
From: Larry Kilgallen @ 1996-12-23  0:00 UTC (permalink / raw)



In article <441435224wnr@paley.demon.co.uk>, Mike Paley <mike@paley.demon.co.uk> writes:

> God knows why they've chosen Ada - it ain't that popular in the UK!

No doubt you would have learned some more popular language through
other methods :-).

> I suppose I'm looking for an Ada manual or user guide or whatever you 
> wanna call it stuffed with hard facts. All I'm advised to get (by the 
> uni), and books I see in shops are all "flowery"*.
> 
> The sort of thing I'm after is a book with a chapter devoted to Ada 
> statements, one per page (or so), giving an explanation, clear syntax, 
> a couple of examples and a list of related or similar statements. The 
> statements should be listed in alphabetical order as well.
> 
> Any really useful pages to point browsers at would be useful as well, 2 
> (other thread) URLs noted.

www.adahome.com gives pointers to almost everything Ada on the web.

If the books you find reviewed there do not meet your standards,
you might have to be more specific and one of the authors (they all
seem to post here) will write one more to your needs the next time out :-).

Considering that you might not be able to wait that long,
give a try at some of what's there.  The actual statements might
be of less interest than what you currently see as fluff.  After
all, you _know_ that Ada must have an addition operator, and with
a few tries you might even be able to guess what the syntax is for
addition.

But what will happen when you try to add two variables containing
small integers and the compiler tells you they have different types
and cannot be added?  At that point, you really should have the
background on how Ada handles typing (you knew it was strongly typed,
but at some point even the most ardent fan of strong typing will cry
"uncle" without that background information).

Another area you might regard as superfluous at the start is all
that stuff regarding compilation units and packages, etc.  Do not be
fooled.  Ada compilers are well trained to complain bitterly over
many instances of fuzziness that other compilers would let slide.
Once you have got it right, it is really in your best interest
use that piece again later on.  That is where separate compilation
units, and packages, and especially "generics" are important.

In summary, for Ada a lot of the things you will need are those
you probably don't know you need.  For looking up specific items,
the books tend to be well indexed and the on-line aids have hypertext
links everywhere you need.  Many compilers will even quote you the
chapter and paragraph number of your alleged language standard violation,
or even pop your browser into the relevant page.

Larry Kilgallen




^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Group newbie !
  1996-12-23  0:00 ` Larry Kilgallen
@ 1996-12-24  0:00   ` Mike Paley
  1996-12-24  0:00     ` Norman H. Cohen
  0 siblings, 1 reply; 13+ messages in thread
From: Mike Paley @ 1996-12-24  0:00 UTC (permalink / raw)



In article: <1996Dec22.214856.1@eisner>  kilgallen@eisner.decus.org (Larry 
Kilgallen) writes:
:) > God knows why they've chosen Ada - it ain't that popular in the UK!
:) 
:) No doubt you would have learned some more popular language through
:) other methods :-).

Like going out and buying a "popular" compiler and do a DIY job on it. I 
could still do that and use the university as a "front".

:) 
:) > I suppose I'm looking for an Ada manual or user guide or whatever you 
:) > wanna call it stuffed with hard facts. All I'm advised to get (by the 
:) > uni), and books I see in shops are all "flowery"*.
:) > 
:) > The sort of thing I'm after is a book with a chapter devoted to Ada 
:) > statements, one per page (or so), giving an explanation, clear syntax, 
:) > a couple of examples and a list of related or similar statements. The 
:) > statements should be listed in alphabetical order as well.
:) > 
:) > Any really useful pages to point browsers at would be useful as well, 2 
:) > (other thread) URLs noted.
:) 
:) www.adahome.com gives pointers to almost everything Ada on the web.

Noted, for later perusal.

:) 
:) If the books you find reviewed there do not meet your standards,
:) you might have to be more specific and one of the authors (they all
:) seem to post here) will write one more to your needs the next time out 
:-).

It wouldn't surprise me if one doesn't exist already. What do you get when 
you buy an Ada compiler anyway ?

[Probably not a lot since manuals seem to be well out of fashion when you 
buy computers, peripherals or software nowadays.]

:) 
:) Considering that you might not be able to wait that long,
:) give a try at some of what's there.  The actual statements might
:) be of less interest than what you currently see as fluff.

I'm not after interest, I'm after hard facts.

  After
:) all, you _know_ that Ada must have an addition operator, and with
:) a few tries you might even be able to guess what the syntax is for
:) addition.
:) 
:) But what will happen when you try to add two variables containing
:) small integers and the compiler tells you they have different types
:) and cannot be added? 

I made a guess at the type string. It gave an error, so I added a bit more:
string(20) and still got an error. Checked in a recommended book and saw 
fluff. Fortunately, there were answers to problems in the back of the book 
and a few seconds browse through them I found:
string(1..20) - problem solved.

From further investigation, I think I've only scratched the surface of the 
type, but it is far more than they've done at the university.

 At that point, you really should have the
:) background on how Ada handles typing (you knew it was strongly typed,
:) but at some point even the most ardent fan of strong typing will cry
:) "uncle" without that background information).

What do you mean by "strong typing" ?

:) 
:) Another area you might regard as superfluous at the start is all
:) that stuff regarding compilation units and packages, etc.  Do not be
:) fooled. 

I'm here to learn - to find out how Ada works. I'll not ignore facts but it 
is trying to get the facts out of the fluff that's the problem.

 Ada compilers are well trained to complain bitterly over
:) many instances of fuzziness that other compilers would let slide.

Yeah ! it's a shame !

Possibly this is why they've chosen Ada - to stop sloppy practices !

:) Once you have got it right, it is really in your best interest
:) use that piece again later on. 

This one of the points that they do make. Create a piece of code that does a 
job then re-use it where the same thing is needed, sometimes with small 
modifications as necessary.


 That is where separate compilation
:) units, and packages, and especially "generics" are important.

One day I'll look up "generic" in a dictionary and try to remember what it 
says about it !

:) 
:) In summary, for Ada a lot of the things you will need are those
:) you probably don't know you need.  

True of many things !

For looking up specific items,
:) the books tend to be well indexed and the on-line aids have hypertext
:) links everywhere you need.  Many compilers will even quote you the
:) chapter and paragraph number of your alleged language standard violation,
:) or even pop your browser into the relevant page.
:) 
:) Larry Kilgallen
:) 
:) 

Thanks very much Larry, I'll also keep my eye on this group as well :)

-- 
Comm again, Mike. 

MM   MM  EEEEE  RRRR   RRRR    Y      Y     X     X  MM   MM     A      SSS
M M M M  E      R   R  R   R    Y    Y       X   X   M M M M    A A    S   S
M  M  M  E      R   R  R   R     Y  Y         X X    M  M  M    A A    S
M     M  EEEE   RRRR   RRRR        Y           X     M     M   A   A    SSS
M     M  E      R R    R R        Y           X X    M     M   AAAAA       S
M     M  E      R  R   R  R      Y           X   X   M     M  A     A  S   S
M     M  EEEEE  R   R  R   R    Y           X     X  M     M  A     A   SSS

Ex Turnpike user.

If you want to see the rest of this sig. file or find out more about me, 
have a look at http://www.paley.demon.co.uk/ [1996:11:30]






^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Group newbie !
  1996-12-24  0:00   ` Mike Paley
@ 1996-12-24  0:00     ` Norman H. Cohen
  1996-12-28  0:00       ` john babrick
  1996-12-29  0:00       ` john babrick
  0 siblings, 2 replies; 13+ messages in thread
From: Norman H. Cohen @ 1996-12-24  0:00 UTC (permalink / raw)



Mike Paley wrote:

> I made a guess at the type string. It gave an error, so I added a bit more:
> string(20) and still got an error. Checked in a recommended book and saw
> fluff. Fortunately, there were answers to problems in the back of the book
> and a few seconds browse through them I found:
> string(1..20) - problem solved.

Somewhere in all that "fluff", there was, no doubt, an explanation of
"unconstrained array types" and "index constraints".  Had you read it,
the "fluff" would have explained that String is an unconstrained array
type, and that when you declare an object of an unconstrained array
type, you must specify either an initial value, an index constraint like
(1..20), or both.  And you would then be well on your way to
understanding not only how to declare strings, but how to write, read,
and use general-purpose array-manipulation routines, e.g. a function to
sum all the elements in an array of arbitrary length.

It really is worth investing the effort to learn the concepts underlying
the syntax.

-- 
Norman H. Cohen
mailto:ncohen@watson.ibm.com
http://www.research.ibm.com/people/n/ncohen




^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Group newbie !
  1996-12-22  0:00 Group newbie ! Mike Paley
  1996-12-23  0:00 ` Larry Kilgallen
@ 1996-12-24  0:00 ` Rich Maggio
  1996-12-25  0:00   ` Mike Paley
  1996-12-27  0:00   ` Mike Paley
  1997-01-05  0:00 ` Robert Dewar
  2 siblings, 2 replies; 13+ messages in thread
From: Rich Maggio @ 1996-12-24  0:00 UTC (permalink / raw)



Mike,

I, like you, was provided with the "opportunity" to learn Ada in a 
data structures class that I took.  I am an experienced "C" programmer
and was not all that happy about the fact that I had to delve into 
learning another programming language as part of the course.

But, as you may have noted by my recent post to the news group, I am
glad that I took the oppertunity.  I won't repeat it here.

I started with the Barnes Ada 95 book.  I don't recommend this for a 
beginner (to Ada that is) because it goes into too much detail and is
very 
overwhelming.  I was overwhelmed by it an I write "C" code for a living!

My teacher lent me a book by Michael Feldman.  The exact title escapes
me,
but it has Ada 95 in the title.  An excellent book.  This book, in
combination
with the Barnes Ada 95 book, were just what the doctor ordered.  The
thing 
missing in the Barnes book is complete examples.  The Feldman book has
PLENTY.
The Feldman book starts out easy and gets into the more complicated
stuff at
a nice pace without being boring.  As I recall, there is an appendix in
the
back that shows abbreviated syntax rules.  A very useful book.  

Also, familiarize yourself with the Adahome website.  I found out about
this
only recently and I wish I knew about it back in September.  Get youself
a copy
of the GNAT compiler - it's free and it works GREAT!  If you have a DOS
machine,
the EZ2LOAD package is a breeze to both install and use.

So, I recommend that you get the GNAT compiler and spend some time
familiarizing 
yourself with it.  Get the Feldman book and work with some of the very
simple 
examples to get going with the compiler.  Get familiar with GDB (the
debugger) also.
It's best to do this BEFORE you have a project due the next day and you
can't track
down a bug in your code!  

One last thing - if you get the GNAT package, be sure to read the file
EZ2LOAD.DOC
from beginning to end before you even fire the compiler up.  There are
lots of little
things in there that you NEED to know to be successful with the
compiler.  There are
some things that it is picky about (namely file naming conventions) that
will drive 
you up the wall if you have to figure it out on your own.

Just thought I would share some of my experience - maybe some out there
can benefit
from it, as well as you Mike.

Hope it helps!
Rich Maggio


> I suppose I'm looking for an Ada manual or user guide or whatever you
> wanna call it stuffed with hard facts. All I'm advised to get (by the
> uni), and books I see in shops are all "flowery"*.
> 
> The sort of thing I'm after is a book with a chapter devoted to Ada
> statements, one per page (or so), giving an explanation, clear syntax,
> a couple of examples and a list of related or similar statements. The
> statements should be listed in alphabetical order as well.
> 
> Any really useful pages to point browsers at would be useful as well, 2





^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Group newbie !
  1996-12-24  0:00 ` Rich Maggio
@ 1996-12-25  0:00   ` Mike Paley
  1996-12-27  0:00   ` Mike Paley
  1 sibling, 0 replies; 13+ messages in thread
From: Mike Paley @ 1996-12-25  0:00 UTC (permalink / raw)



In article: <E2wHqA.oE@nonexistent.com>  Rich Maggio <maggior@world2u.com> 
writes:
:) My teacher lent me a book by Michael Feldman.  The exact title escapes
:) me,
:) but it has Ada 95 in the title.  An excellent book.  This book, in
:) combination

Thanks Rich, great information there :))))

Does:

MB Feldman & EB Koffman - Ada95 - Problem Solving and Program Design, 
Addison-Wesley, 1995

ring any bells ? It is listed on my reading list. Barnes is not on the list 
but I've seen it on bookshelves.

I've also forwarded your posting to my mailbox !

-- 
Comm again, Mike. 

MM   MM  EEEEE  RRRR   RRRR    Y      Y     X     X  MM   MM     A      SSS
M M M M  E      R   R  R   R    Y    Y       X   X   M M M M    A A    S   S
M  M  M  E      R   R  R   R     Y  Y         X X    M  M  M    A A    S
M     M  EEEE   RRRR   RRRR        Y           X     M     M   A   A    SSS
M     M  E      R R    R R        Y           X X    M     M   AAAAA       S
M     M  E      R  R   R  R      Y           X   X   M     M  A     A  S   S
M     M  EEEEE  R   R  R   R    Y           X     X  M     M  A     A   SSS

Ex Turnpike user.

If you want to see the rest of this sig. file or find out more about me, 
have a look at http://www.paley.demon.co.uk/ [1996:11:30]







^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Group newbie !
  1996-12-24  0:00 ` Rich Maggio
  1996-12-25  0:00   ` Mike Paley
@ 1996-12-27  0:00   ` Mike Paley
  1 sibling, 0 replies; 13+ messages in thread
From: Mike Paley @ 1996-12-27  0:00 UTC (permalink / raw)



In article: <E2wHqA.oE@nonexistent.com>  Rich Maggio <maggior@world2u.com> 
writes:
:)  Get yourself a copy of the GNAT compiler 

From where ? the Adahome page ?

-- 
Comm again, Mike. 

If I have offended anyone, please accept my apologies. To prevent this 
re-occurring, next time you read one of my posts, wear a blindfold.

Ex Turnpike user.

If you want to see the rest of this sig. file or find out more about me, 
have a look at http://www.paley.demon.co.uk/ [1996:11:30]






^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Group newbie !
  1996-12-24  0:00     ` Norman H. Cohen
@ 1996-12-28  0:00       ` john babrick
  1996-12-29  0:00         ` Mike Paley
  1996-12-29  0:00       ` john babrick
  1 sibling, 1 reply; 13+ messages in thread
From: john babrick @ 1996-12-28  0:00 UTC (permalink / raw)



> It really is worth investing the effort to learn the concepts underlying the syntax.
> 

Way to go Normie !!!





^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Group newbie !
  1996-12-24  0:00     ` Norman H. Cohen
  1996-12-28  0:00       ` john babrick
@ 1996-12-29  0:00       ` john babrick
  1 sibling, 0 replies; 13+ messages in thread
From: john babrick @ 1996-12-29  0:00 UTC (permalink / raw)



> It really is worth investing the effort to learn the concepts underlying the syntax.
> 

Way to go Normie !!!





^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Group newbie !
  1996-12-28  0:00       ` john babrick
@ 1996-12-29  0:00         ` Mike Paley
  1996-12-30  0:00           ` Norman H. Cohen
  0 siblings, 1 reply; 13+ messages in thread
From: Mike Paley @ 1996-12-29  0:00 UTC (permalink / raw)



In article: <32C56A7A.6BDD@earthlink.net>  john babrick 
<antialias@earthlink.net> writes:
:) > It really is worth investing the effort to learn the concepts 
underlying the syntax.
:) > 
:) 
:) Way to go Normie !!!
:) 

Are you implying I can't do that from the syntax ?

-- 
Comm again, Mike. 

If I have offended anyone, please accept my apologies. To prevent this 
re-occurring, next time you read one of my posts, wear a blindfold.

Ex Turnpike user.

If you want to see the rest of this sig. file or find out more about me, 
have a look at http://www.paley.demon.co.uk/ [1996:11:30]






^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Group newbie !
  1996-12-29  0:00         ` Mike Paley
@ 1996-12-30  0:00           ` Norman H. Cohen
  1997-01-02  0:00             ` Mike Paley
  0 siblings, 1 reply; 13+ messages in thread
From: Norman H. Cohen @ 1996-12-30  0:00 UTC (permalink / raw)



Mike Paley wrote:
 
> > It really is worth investing the effort to learn the concepts
> > underlying the syntax.
> 
> Are you implying I can't do that from the syntax ?

I certainly am.  

Consider the example that started this thread, the need to specify an
index constraint for an uninitialized variable of type String.  The
syntax of a variable declaration tells you that a variable declaration
includes a subtype name (or, as the syntax rules call it, a "subtype
mark") optionally followed by a constraint, and the syntax tells you the
various forms that constraints may take.  But the syntax does not
explain which kinds of constraints are compatible with which kinds of
subtype marks, or which kinds of variable declarations REQUIRE a
constraint.  You have to read the "fluff" to understand that.

-- 
Norman H. Cohen
mailto:ncohen@watson.ibm.com
http://www.research.ibm.com/people/n/ncohen




^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Group newbie !
  1996-12-30  0:00           ` Norman H. Cohen
@ 1997-01-02  0:00             ` Mike Paley
  0 siblings, 0 replies; 13+ messages in thread
From: Mike Paley @ 1997-01-02  0:00 UTC (permalink / raw)



In article: <32C813AA.1F29@watson.ibm.com>  "Norman H. Cohen" 
<ncohen@watson.ibm.com> writes:
:) > > It really is worth investing the effort to learn the concepts
:) > > underlying the syntax.
:) > 
:) > Are you implying I can't do that from the syntax ?
:) 
:) I certainly am.  
:) 
:) Consider the example that started this thread, the need to specify an
:) index constraint for an uninitialized variable of type String.  The
:) syntax of a variable declaration tells you that a variable declaration
:) includes a subtype name (or, as the syntax rules call it, a "subtype
:) mark") optionally followed by a constraint, and the syntax tells you the
:) various forms that constraints may take.  But the syntax does not
:) explain which kinds of constraints are compatible with which kinds of
:) subtype marks, or which kinds of variable declarations REQUIRE a
:) constraint.  You have to read the "fluff" to understand that.
:) 

You only get the one concept from the one syntax. I can work out what's 
going on from one line, but can't work out alternatives.

I'd like to say more on this but I've "timed-out" :( ! :)

BTW, I was not pleased to find a semicolon was more than an end of statement 
marker and a character.

-- 
Comm again, Mike. 

If I have offended anyone, please accept my apologies. To prevent this 
re-occurring, next time you read one of my posts, wear a blindfold.

Ex Turnpike user.

If you want to see the rest of this sig. file or find out more about me, 
have a look at http://www.paley.demon.co.uk/ [1996:11:30]






^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Group newbie !
  1996-12-22  0:00 Group newbie ! Mike Paley
  1996-12-23  0:00 ` Larry Kilgallen
  1996-12-24  0:00 ` Rich Maggio
@ 1997-01-05  0:00 ` Robert Dewar
  2 siblings, 0 replies; 13+ messages in thread
From: Robert Dewar @ 1997-01-05  0:00 UTC (permalink / raw)



Mike says

"The sort of thing I'm after is a book with a chapter devoted to Ada
statements, one per page (or so), giving an explanation, clear syntax,
a couple of examples and a list of related or similar statements. The
statements should be listed in alphabetical order as well."

The fact that you think this would be an appropriate way to present a
programming language shows that you do have a lot to learn from Ada!

The fundamental concepts of a language like Ada revolve around its notion
of types and objects and operations. The statement forms are a relatively
trivial part of the language.

I suspect what you need is one of the "flowery" books.

Meanwhile, try rumaging around at www.adahome.com

By the way, Ada is probably a good choice for teaching. One thing to
remember is that the purpose of the course you are taking has nothing
to do with learning to code in some language, or gathering coding skills.
it has to do with learning some fundamnental concepts about programming
languages and programming. You seem to assume that the appropriate choice
for a programming language for teaching would be necessarily to use a 
widely used language -- this is a common misconception, particularly among
those just starting to learn programming!

It is a little like expecting a math course to begin with useful stuff like
how to balance a checkbook :-)





^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~1997-01-05  0:00 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1996-12-22  0:00 Group newbie ! Mike Paley
1996-12-23  0:00 ` Larry Kilgallen
1996-12-24  0:00   ` Mike Paley
1996-12-24  0:00     ` Norman H. Cohen
1996-12-28  0:00       ` john babrick
1996-12-29  0:00         ` Mike Paley
1996-12-30  0:00           ` Norman H. Cohen
1997-01-02  0:00             ` Mike Paley
1996-12-29  0:00       ` john babrick
1996-12-24  0:00 ` Rich Maggio
1996-12-25  0:00   ` Mike Paley
1996-12-27  0:00   ` Mike Paley
1997-01-05  0:00 ` Robert Dewar

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox