Comments about Lovelace By Its Users

The following are email comments about Lovelace. If you're curious what other people are saying about Lovelace, here's your answer. I've shortened these messages, in particular I've:

I've also added a few comments from me, enclosed in brackets [], where I thought it would be appropriate. These comments are in the order I received them. Enjoy.

From Fri Jan 20 18:12:50 1995

Date: Fri, 20 Jan 1995 18:10:15 -0500 From: Frances L VanScoy <> Message-Id: <> To: Subject: nice tutorial! Cc: I was browsing The Home of the Brave Ada Programmers page this evening and found the new Ada 95 tutorial and noticed it was yours! Congratulations! It looks good! Frances

From Sat Jan 21 09:36:59 1995

Message-Id: <> Subject: Lovelace Tutorial To: Date: Sat, 21 Jan 1995 15:35:13 +0100 (MET) Cc: (Laurent Guerby) Hi, This tutorial is very interesting. ... Laurent Guerby. Laurent Guerby / Dominique le Campion / Alain Le Guennec / Denis Wallez guerby@ lecampio@ leguenne@ wallez@ | students at Telecom Bretagne Try GNAT and Ada 95 ! | 29285 BREST (France) GATO project

From Mon Jan 23 07:44:35 1995

From: (Audrey Hook) Message-Id: <> Subject: Re: FYI - Ada 95 tutorial (Lovelace) To: (David Wheeler) Date: Mon, 23 Jan 1995 07:43:32 -0500 (EST) Good work. Thanks Audrey

From Mon Jan 23 10:32:06 1995

Date: Mon, 23 Jan 95 10:29:44 EST From: (Richard L. Conn) Message-Id: <> To: Subject: Lovelace tutorial Dave, Your Lovelace tutorial looks really nice. ... Thanks for the good work, Rick

From Mon Jan 23 18:42:32 1995

Date: Mon, 23 Jan 95 15:41:18 -0800 From: Dan McLaughlin <> Message-Id: <> To: Subject: Lovelace Dave, Great tutorial! I'd be glad to add a few sections. Let me know what you would like me to do. -Dan -- Member Team Ada -- Dan McLaughlin -- (707) 577-5676 -----------------------------------------------------------------------------

From Tue Jan 24 12:12:20 1995

Message-Id: <> To: Subject: RE: Lovelace Date: Tue, 24 Jan 1995 12:12:08 -0500 From: Cheryl Marquis <> David: First, very nice tutorial (even though I just skimmed it - got a few questions right, though :> )! ... Just thought you might want to know. Cheryl

From Wed Jan 25 08:26:32 1995

Date: Wed, 25 Jan 95 08:25:18 EST From: (Arra Avakian) Message-Id: <> To: Subject: Lovelace - Master Outline ref to Lesson 7 David, Congratulations on your on-line tutorial. ... Arra

From Wed Jan 25 20:38:02 1995

From: Adina Ragenovich <> To: Subject: Lovelace tutorial Message-Id: <> Dear Mr. Wheeler; I have just taken the Lovelace Ada tutorial. I thought it was very informative and easy to understand. Thank you for providing it through the WWW. ... Sincerely, Adina Ragenovich

From Tue Jan 31 17:51:55 1995

From: Michael Feldman <> Message-Id: <> Subject: Re: Interested in expanding an Ada tutorial (Lovelace)? To: (David Wheeler) Date: Tue, 31 Jan 1995 17:50:42 -0500 (EST) Cc: Team-Ada@ACM.ORG ... This looks like a very nice start! I wandered around it a bit using Lynx, as I'm at home and don't have PPP. As far as it goes, it's very nice. ... I will get around to working some on Lovelace, too, but for the next few weeks I am absolutely up to my ears. Good work! Mike Feldman

From Fri Feb 3 11:05:08 1995

From: (Stephen Hunt) Date: Fri, 3 Feb 95 17:03:53 +0100 Message-Id: <> To: Subject: Ada Tutorial - 3.1 Hi, I am working through the tutorial you have provided for Ada, and find it very useful. I notice that in the Quiz of section 3.1 (Identifiers), you have a question involving underlines. As Netscape (browser I am using) underlines links, it is impossible to distinguish underlined from non-underlined. I don't know if you were aware of this. Cheers, Stephen.

From Fri Feb 3 12:50:41 1995

From: (Stephen Hunt) Date: Fri, 3 Feb 95 18:49:27 +0100 Message-Id: <> To: Subject: Lovelace Hi, I have finished the Lovelace course, so here is some feedback. Overall I fond it a very useful introduction to the language. I have some knowledge of other programming languages, and Lovelace has provided useful in learning (some of) Ada. More specific comments: ... (various bugs) I have some background in OO (MODSIM II) so was able easily to transfer my ideas from there to your Ada examples and text in section 7. I am not sure how easily non-OO people would react to these, but I notice in the 'to-do' that you mention this. Again, I found it very useful and good luck with adding further tutorial sessions. Cheers, Stephen.

From Wed Feb 8 14:13:43 1995

Date: Wed, 8 Feb 1995 14:20:25 -0500 To: (David Wheeler) From: (Doug Smith) Subject: Re: Comments on a brief OO intro? Hey David, This looks good. A couple of grammatical corrections and a quibble noted below... I especially like the text in the responses to the questions. Nice touch. Doug ...

From mprice@RBSE.Mountain.Net Fri Feb 17 14:49:29 1995

Date: Fri, 17 Feb 1995 14:39:22 -0500 (EST) From: Margie Price <mprice@RBSE.Mountain.Net> Subject: Mklesson is in ELSA To: David Wheeler <> > Mklesson is a free tutorial generation program which simplifies > creating online tutorials for the World Wide Web (WWW). It looks good. I've just included Mklesson in collections: "Education" and "WWW Information and Utilization" I saw the link for The Tutorial Gateway (Carleton University) in the User Guide, so I'll include that too. Thank you, Margie

From scott_ankrum@VNET.IBM.COM Mon Feb 20 10:44:52 1995

Message-Id: <> Date: Mon, 20 Feb 95 10:13:31 EST From: "T. Scott Ankrum" <scott_ankrum@VNET.IBM.COM> To: Subject: Lovelace Tutorial I just finished going through your Lovelace Ada tutorial and am sending you comments. Ada is not needed for my job. I am taking a programming languages course at American Univ. and our project requires us to learn two new languages. I spread the tutorial over three days. Two weeks ago I knew nothing about Ada, but I have been reading a small text and lightly browsing the Ada 9X reference. Your tutorial is very easy, possibly too easy. I doubt that anyone could write even a simple program with only Lovelace as his/her background. I am writing a small program using the GNAT compiler from NYU and I am having a lot of trouble understanding supplied packages. Lovelace helped me understand what a package is and how to write my own small package. What I am missing is an understanding of supplied packages. As a new Ada programmer, I need to know what I/O packages every Ada compiler should provide and how do I find what a particular compiler is supplying. (For GNAT, I am told I should be browsing ????.ads files.) In particular, I had trouble locating floating point I/O. Noone should expect to learn very much of a language from an on-line tutorial, especially a free one. One should expect to be able to write some simple (but more complex than "Hello World") programs to get started. Please try take these comments in the best possible light. I was very pleased to find an Ada tutorial on the WWW and I got a lot out of it. I am just trying to gave back a little with some (hopefully) constructive comments. In summary, my two suggestions are: 1. Make the unit quizzes harder. 2. Add a unit that talks about using supplied packages. T. Scott Ankrum -- IBM, Software Solutions Division, Bethesda Phone: (301)-803-1990 FAX: (301)-803-2377 Inter-Enterprise: USIB1JKV at IBMMAIL Internet: |~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| | Life: "It is a tale told by an idiot, full of sound | | and fury, signifying nothing." Shakespeare | |___________________________________________________________| [Since this comment, Lovelace has more than doubled in size, including a section on input/output, other information on the standard libraries, and a larger example program.] From: Lee Oades <> Message-Id: <> Subject: Re: Lovelace To: (David Wheeler) Date: Wed, 22 Feb 1995 14:30:11 +0000 (GMT) David, Thanks for the reply about Lovelace. ... By the way, I think that this is a very good way to learn to use Ada. O can not only go at my own pace, but can do it when I feel like it. I'm now on section 7 and the last many sections have been really good, clear explanations, good examples and the quiz to make sure you're understanding. Well done. Are you constantly updating it, adding new pages? Cheers, Lee.

From Fri Feb 24 18:37:59 1995

Return-Path: <> Date: Fri, 24 Feb 1995 20:04:56 +0000 (GMT) From: Hyoseob Kim <> To: Subject: about misprint in 'Lovelace' Message-Id: <> ... By the way, your Lovelace is giving me [a] valuable knowledge on [the] Ada language. Thank you for that! from Hyoseob Kim at University of Durham in England

From Mon Feb 27 06:15:43 1995

Return-Path: <> Date: Mon, 27 Feb 1995 10:41:42 +0000 (GMT) From: Hyoseob Kim <> To: David Wheeler <> Subject: Re: about misprint in 'Lovelace' Message-Id: <> ... Anyway, I must thank you for your effort to provide that nice Ada Tutor. I really enjoyed it. What a great 'electronical distance learning'(?) it was! I hope it is expanded and enhanced soon. from Hyoseob Kim in the United Kingdom

From Mon Feb 27 04:22:11 1995

Return-Path: <> Date: Mon, 27 Feb 1995 10:19:41 +0100 From: "Jesus M. Gonzalez" <> Message-Id: <> Subject: Ada tutorial. To: Hi! I've seen your HTML tutorial on Ada, and it's very impressive. I'd like to know if we can use it as the grounds for an Spanish tutorial on Ada9X we are going to write. We plan to use it for helping our students, and make it freely available from our WWW server. ... Jesus. PS: And congratulations for your work on the tutorial. -- Jesus M. Gonzalez Barahona | Universidad Carlos III (Madrid, Spain) tel: +34 1 624 94 58 | e-mail: fax: +34 1 624 94 30 | (Sometimes our headers are not o.k., please reply to any of this addresses) .From within Universidad Carlos III, you can better use

From Sun Mar 5 16:24:15 1995

Message-Id: <> From: (Andreas Almroth) Subject: Lovelace Ada Tutorial To: Date: Sun, 5 Mar 1995 22:17:24 +0100 (GMT+0100) Hi David! First, many thanks for your tutorial! I'm new to Ada, and I've tried to learn the language the last couple of weeks. Your tutorial gave me a "kick" to learn more about the language. I've finished the seven chapters, and I'm hungry for more... :) Well, you mentioned at the end that someone wanted to translate the tutorial into French, I'm interested in translating it into Swedish. I see this as a very good chance for me to learn more about Ada. I've a book written by Jan Skansholm in swedish, I belive the book has an english counterpart too. The title is (freely translated from swedish) "Ada from the beginning - with the Ada 9X standard". I guess you have heard of it, or even read it... Well, I thought of using it when translating your tutorial into swedish. This gives me a reason to read the book too... Well, if you think the world is interested in my project, please email me about it, and I'll start as soon as possible. Yours, Andreas Almroth

From Mon Mar 6 10:43:21 1995

Message-Id: <9503061541.AA14756@netrixgw> From: "James A. Babcock" <> Date: Mon, 06 Mar 95 10:38:20 -500 David- I have just completed the Lovelace Tutorial using Netscape. I am currently using Ada in a class that I am taking at George Mason University. Your tutorial helped reenforce my learning. Thanks for making this information available. -Jim. (Netrix Corporation,

From Wed Mar 8 01:53:11 1995

From: (Prof R Conn) Message-Id: <> Subject: Re: How do I submit a product to the PAL? To: (David Wheeler) Date: Wed, 8 Mar 95 1:53:15 EST Cc: (Prof R Conn) Hi, Dave, I've seen Lovelace on the Web. Nice job! Thanks for offering it to the PAL. ...

From Wed Mar 8 18:20:16 1995

Date: Wed, 8 Mar 95 15:18:18 PST From: (Michael J. McCall) Message-Id: <> To: Subject: Lovelace I finished your tutorial and it is a very helpful start to Ada. I am going to take an Ada class starting on two weeks. I look forward to your new lessons. I did get a little lost, though, in lesson 7.4................Mike McCall HITC [That section has been changed to make it easier to understand]

From Thu Mar 9 19:03:11 1995

Return-Path: <> Message-Id: <> From: David Culledge <> Date: Fri, 10 Mar 95 00:00:52 000 Sender: To: wheeler@org.ida.cs I have completed Lovelace. Thanks it was very useful, although no questions were asked about arrays which are fairly hard to comprehend for a beginner.

From ct_orega@ECE.concordia.CA Sun Mar 26 23:24:02 1995

Return-Path: <ct_orega@ECE.concordia.CA> To: X-Personal_Name: Chris O'Regan Subject: Ada Tutorial Date: Sun, 26 Mar 1995 23:20:14 -0500 Sender: ct_orega@ECE.concordia.CA Message-Id: <9503270419.aa25078@ece.ECE.concordia.CA> Hello, I just completed your tutorial. Very good! :-) I knew most of the material up until the OO programming, but it was a nice review. I hope you don't mind...I told my Real-Time Systems' professor about your tutorial. He had to teach Ada at the beginning of the semester and felt as though it cut into the course. Perhaps he will have his next class go through your tutorial instead. :-) One small thing, though...since many schools might still be using an Ada83 compiler (we are, however I convinced my system administrator to install GNAT for my project) perhaps you could cover a little more on those features. At any rate, it is fine tutorial for beginners and a good review for an intermediate. Take Care! Chris O'Regan Computer Engineering, Concordia University, Montreal, Canada.

From Mon Mar 27 04:46:37 1995

Return-Path: <> Message-Id: <> Sender: (Fernando D. Mato Mira) From: "Fernando D. Mato Mira" <> Date: Mon, 27 Mar 95 11:44:59 200 Sender: To: Subject: Lovelace Hi, I've completed your Ada tutorial. I hope there was more. With regards to OO programming, it would be good to show how to `call super' in methods. Also, it is not clear how procedure Foo(X : Bar'Class) interacts with procedure Foo(X : Bar) or methods for subclasses of Bar. Also, you don't state the possibility of dispatching on the type of more than one argument, like in Common Lisp. Finally, how to simulate multiple inheritance in Ada. Regards,

From [Name Witheld By Request] Fri Mar 31 11:18:02 1995

Date: Fri, 31 Mar 1995 17:43:06 +0100 From: [Name Witheld By Request] Message-Id: <5226421631031995/A11709/RESA/1193FC192E00*@MHS> To: (Non Receipt Notification Requested) (IPM Return Requested) Subject: ADA Tutorial David, This is just a quick message in reponse to using the Ada tutorial on the Internet. I'm currently studying for a BSC (Hons) p/t in a Computer Science course CSP1, at Hatfield University which is now covering ADA. I'm not really a programmer so your notes, in comparison to my tutor's are proving to be more understandable. As I have just started on Ada there isn't really too much I can add, except that the tutorial was very useful. I will be passing the WWW Ada address on to my other Uni. friends as I'm sure that they WILL find it very useful too. Thank-you for the time and effort in writing this.

From Mon Apr 3 07:46:25 1995

Message-Id: <> Date: Mon, 03 Apr 95 13:42:32 0200 Sender: From: Roland Baumann <> To: Subject: Completed Lovelace Tutorial Dear Mr. Wheeler, just a few minutes ago I finished your Ada 95 tutorial. Since I already was familiar with Ada 83 it did not offer much new to me, except of course the last section about object orientation. Nonetheless I enjoyed answering the questions since I was always right :-) While doing this tutorial I always had the impression that you created it especially for C/C++ programmers unfamiliar with any typical features of languages from the Pascal family, what certainly does not apply to me. I look forward to see and run the next sections of the tutorial as soon as you finish them. Sincerly, -- \ Roland Baumann Lehrstuhl fuer Informatik III / \\ Tel.: ++49/241/80 21315 RWTH Aachen // \\\ Fax.: ++49/241/8888 218 Ahornstr. 55 /// \\\\ 52074 Aachen, Germany ////

From Mon Apr 3 10:48:38 1995

Message-Id: <> From: Nigel Williams <> Date: Mon, 03 Apr 95 15:47:58 100 Sender: To: Subject: Lovelace I have just completed the WWW based tutorial. I found it very well presented...well done.

From Wed Apr 5 08:37:07 1995

Date: Wed, 5 Apr 1995 08:35:30 -0400 From: Message-Id: <> To: Subject: Lovelace/tutorial Status: R Mr. Wheeler, In the past I have taken a couple of beginner programming courses and enjoyed them. My husband, a software engineer for Lockheed Martin, is now teaching me programming at a more advanced level. His language of choice is Ada, and so I have been using that while studying programming with a Pascal book: . My husband is a good teacher, and the authors have done a nice job of explaining themselves, but I think your tutorial has helped me the most. I thoroughly enjoyed your writing style. I also found your explanations of Object Oriented programming easier to understand than the text I have been using. What I appreciated most was the small, uncomplicated sample programs you used. So many books use examples that are three pages long and try to incorporated three or four new ideas. Thank you for this tutorial, and I look forward to your next. Lisa Mae Bronkema

From Thu Apr 6 12:19:38 1995

Return-Path: <> Date: Thu, 6 Apr 1995 12:17:55 +0500 Message-Id: <> To: X-Personal_Name: Pete Dietert Subject: Ada Tutorial I have just completed the Ada tutorial and found it quite useful. I am a post-grad student at George Mason University in Fairfax Virginia who has just been introduced to Ada through a Software Construction course which uses Ada examples. I had to learn basic Ada in a few weeks using Koffman's book and used your tutorial ^Learned Basic Ada.. as a review of what I just learned. So it serves up to that level quite well. Thank you for your effort in preparing it. NOw on to tasks...

From joe_norman@[] Mon Apr 10 16:16:57 1995

Return-Path: <joe_norman@[]> From: Joe Norman <joe_norman@[]> Date: Mon, 10 Apr 95 16:16:48 -400 To: Completed the Lovelace tutorial. Thanks for putting it together. Joe

From Wed Apr 12 14:13:10 1995

Message-Id: <> From: Curtis Kuppler <> Date: Wed, 12 Apr 95 13:11:30 -700 To: Subject: Lovelace Explorer I downloaded the local version. It looks pretty good. Everything I noted that was missing was already mentioned in your 'to do' list. Keep up the good work.

From Wed Apr 19 06:01:23 1995

Return-Path: <> Date: Wed, 19 Apr 95 11:59:27 +0200 From: (Faruk Safi #401) Message-Id: <> To: Subject: Ada Lovelace Lessons Status: R Mr Wheeler, I've just finished your lessons. I appreciate your effort very much. It was a very useful course for me as a beginner. H. Faruk Safi Eurocontrol SDK, Karlsruhe-Germany

From Thu Apr 20 15:20:59 1995

Date: Thu, 20 Apr 1995 14:18:59 -0500 Message-Id: <> To: X-Mailer: Lynx, Version 2.3.7 BETA X-Personal_Name: Andrew Trom From: Subject: Lovelace As a relative "newbie" to the internet, it was nice to have something so simple rather than have to download and convert etc. It's also much easier to understand and get a solid handle on ada than trudging through the LRM.

From Fri Apr 21 04:40:26 1995

Return-Path: <> From: Message-Id: <> Date: Fri, Apr 21, 1995 9:42 am Reply-To: "Fintan Culwin" <> To: Subject: Ada tutorial .... Hi I have just been directed to have a look at your Lovelace Project ... nice work! I am working on a similar project, but my concern is as much with providing SE tools over the Web as with presenting information regarding Ada. Also I am concerned with initial software development education rather than conversion as such. As such I think out projects are complementary rather than needless duplication of each other. .... regards fintan _____________________________________________________________ Fintan Culwin PhD Senior Lecturer Software Engineering School of Computing South Bank University Borough Road London SE1 0AA Phone (+44) (0)171 815 7434 Fax (+44) (0)171 815 7499

From Tue May 2 15:19:29 1995

Return-Path: <> Message-Id: <> From: "S.J.Liddington" <> Date: Tue, 02 May 95 20:16:20 100 To: Subject: Lovelace Tutorial Thank you for this tutorial, it probably saved me a bit of time reading books! ... Simon Liddington

From Mon May 15 08:58:45 1995

From: Andre Spiegel <> Date: Mon, 15 May 1995 14:56:24 +0200 Message-Id: <> To: Subject: Lovelace Thanks a lot for Lovelace. Being probably a rather experienced Ada programmer, I still find it useful for getting to know the "95" features better. In fact, I've also recommended Lovelace to (potential) Ada newbies already. ... -- Andre Spiegel Software Engineering Dept. University of Stuttgart, Germany

From Thu Jun 1 12:39:59 1995

Date: Thu, 1 Jun 1995 12:38:19 -0400 From: (Manuel Calderon) Message-Id: <> To: Subject: I finished Lovelace X-Sun-Charset: US-ASCII Hi, my Name is Manuel Calderon. I'm temporarily at Hope College in Holland, Michigan. My home e-mail address (in El Paso, Tx.) is: I give you the address so that if you want to answer or something. I found your tutorial to be very helpful. I have to learn Ada 95 in less than a week, more like 3 days, and your tutorial will be my main guide. Thanks. ... Well, Thanks for the tutorials, and I will recommend you for the Best-of-Wed/Educational Service Award. Bay, Manuel

From Mon Jun 5 23:50:24 1995

Message-Id: <> Date: Mon, 05 Jun 95 21:36:22 +0800 From: To: Subject: Lovelace Dear David; I would like to complement you on the Lovelace package. I thought it was very well done and will have a permanent home on my machine. I admit until I downloaded the GNAT package and gave it a try I thought Ada was a difficult language. A former CS tutor of mine's opinion. {;>) Learning Ada is something I am looking forward to this year! ... Tim Erickson //-------------------------------------------------------------------------- // news is good news // Caio for naio.

From Mon Jun 12 19:12:26 1995

Message-Id: <> To: Subject: Lovelace tutorial Date: Mon, 12 Jun 1995 18:10:17 CDT From: Edward S Mansueto <> First, I'd like to say that your Ada tutorial, Lovelace, is very good (I'm about to start lesson 10). ... At the risk of being redundant I'd like to say Thank You for the effort you put into Lovelace. I certainly appreciate it and it is doing a fine job of increasing my interest in Ada 95. (Now if I could just find a bit more time!) Thanks, Ted Mansueto From: (Veress Gabor) To: Dear David, ... Tenx Gab ps the Ada lessons are great!

From Thu Jun 22 19:59:17 1995

Return-Path: <> Message-Id: <> To: Subject: Finished LOVELACE Date: Thu, 22 Jun 1995 18:57:30 CDT From: Edward S Mansueto <> I finished LOVELACE about a week ago. It has left a good impression on me, the same good impression I had when I sent the e-mail two (?) weeks ago... I have more detailed feedback for you but I think that you should be aware that it comes from the perspective of a novice programmer ... I don't know what kind of people you were aiming for in LOVELACE, but I think it does an outstanding job of nurturing the interest of someone who is truly interested in Ada 95. I noticed that you described it as a whirlwind tour. I think that is true, but it was a whirlwind tour with many opportunities for brief reflection and with directions for detailed inquiries. Specifically, I think that the quizzes with comments for both the right and the wrong answers really helps a novice, like me, to get some sense of progress. Of course, more can be learned by working through full blown exercises but I think it might break the momentum of someone who is curious about Ada 95 in a self-motivated way. I also thought it was a good idea to include pointers to other sources of information about Ada. Additionally, I did take a glance at your strawman list of things to-do and am particularly intrigued by your idea of "dynamically" building a program within the tutorial. I do intend to nominate it for an educational Best of the Web, just as soon as that is possible! I feel that I have gotten something out of LOVELACE and would like to contribute something in order to show my appreciation. I looked at the Team Ada FAQ sheet, but I'm afraid that I'm not really in a position to do much help. About all that I can do is provide feedback of a simple nature. And congratulations to you and your wife about your baby daughter. Take care. Ted Mansueto

From Fri Jun 23 09:40:20 1995

Date: Fri, 23 Jun 1995 08:40:47 -0500 Message-Id: <> From: (Chip Patton) To: Subject: Lovelace Ada Tutorial I just completed your Lovelace Ada Tutorial. I thought it was very well done. I've had minimal exposure to Ada in the past, but expect to get more involved now with Ada95 out and the mandate being more rigorously enforced. The lessons are broken up and ordered very well. I could do a couple of lessons each morning before getting on to my other work. The sections of each lesson are small enough that even if I got interrupted in the middle of a lesson it was only a short distance back to recover at a logical break. I especially liked the end-of-section quizzes. They tended to ensure that I absorbed what I'd read and hadn't just scanned it without engaging my brain (something that's easy to do when reading long technical documents). Even the sections with simple questions kept me awake, so here's an area for improvement: Add a Quiz to the sections that don't have them, even if it's just a regurgitation of what was presented a couple of paragraphs above. The only chance for improvement was that there were a few typos, these seemed to be more prevalent in the last few lessons -- in particular there are some missing or extra articles or connecting words. I think "prefin" is used someplace that should be "predefin". None of the typos obscured the meaning of the text. The hypertext links are also a good inclusion, I only followed a few but may come back for some more in the future. I have recommended this tutorial to my colleagues. Thanks for offering this resource. -- Chip Patton From: (Chip Patton) To: Subject: A few typos located Status: RO David, Here's some of those typo's, the number in ()'s is the paragraph number in the section, at least the way I counted. Hope this is helpful; these are VERY MINOR flaws in an excellent tutorial. ...

From Wed Jul 5 07:38:11 1995

Date: Wed, 5 Jul 1995 07:41:19 -0400 From: Message-Id: <> To: Subject: Completed your Lovelace Ada tutorial Hi David! I just completed your Lovelace Ada Tutorial. I took it for two reasons: 1) I am using Ada again, and haven't used it for a couple years 2) Though I did/do know Ada, I don't yet know Ada 95. (While we are using Ada 83, I want to try to assure I don't use identifiers or similarly cause a transition problem when moving to Ada 95.) I think it's a very good job! Keep up the great work! Barry Barry L. Bond (Software Engineer) | SAIC <-- work | 3045 Technology Parkway <-- personal | Orlando, FL 32826-3299 72235,1530 (CIS) <-- personal | (407) 823-7345, Ext. 549

From Fri Jul 7 13:05:36 1995

Date: Fri, 7 Jul 1995 13:02:30 -0400 (EDT) To: Message-Id: <> Subject: Mistake in Lovelace 4.2 Tutorial, Section 4.3 Hi David, I like your Ada95 tutorial ... nice job.

From Wed Jul 12 19:05:49 1995

Message-Id: <> Date: Wed, 12 Jul 95 23:10:40 0700 From: Kevin Ingalls <> Organization: Boeing Defense & Space Group Training X-Mailer: Mozilla 1.1N (Macintosh; I; PPC) Mime-Version: 1.0 To: Subject: Ada95 Lovelace Tutorial X-Url: Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=us-ascii I just finished your Lovelace tutor. I enjoyed it quite a bit. Thanks for a job well done. Kevin.

From Mon Jul 17 13:56:01 1995

Date: Mon, 17 Jul 95 11:54:16 MDT From: Karen Hover <> Message-Id: <> To: Subject: Tutorial Status: R David, I just have to thank you for the great work you've done with the online Ada Tutorial. I am working on a project here at Lockheed Martin Astronautics which requires the use of Ada95, and your tutorial has been a wonderful aid to me. I almost always have a NetScape or Mosaic window up with the place in the Tutorial currently applicable to my work. (I do the same with the online LRM). Anyway, I thought you deserved an attaboy....thanks again! Karen ------------------------------------------------------ Karen E. Hover Lockheed Martin Astronautics Reusable Software Architecture for Spacecraft (RSAS) Denver CO 80201 303-971-6787 (FAX) 303-971-7227 ------------------------------------------------------


Message-Id: <41 0725115900-0> Date: 25 Jul 95 11:59:00 -0500 From: To: (Receipt notification requested) Subject: Completion of Lovelace Tutorial I have completed the Ada Lovelace Tutorial. I found it to be an good quick overview of the language. My internet address is

From! Sat Aug 5 22:52:04 1995

Sender: tau-ceti!!kew Message-Id: <> Date: Sat, 05 Aug 95 19:17:39 -0700 Sender: From: Keith Walker <> Organization: NATCA X-Mailer: Mozilla 1.1N (X11; I; FreeBSD 2.0.5-RELEASE i386) Mime-Version: 1.0 To: Subject: I finished your tutorial! X-Url: file:/home/kew/lovelace/s18-1.html Content-Type: text/plain; charset=us-ascii Ok, here's the request you made. I actually liked the tutorial, it gave me a lot of information. I hope that you continue to develop it, maybe even having the tutorial develop a semi-real application so that concepts could be more easily absorbed. Also, consider adding sections like "Ada for C programmers" and "Ada for Pascal Programmers", too. Thanks again. -- Keith Walker Spokane, Washington, USA FreeBSD 2.0.5

From Mon Aug 7 14:42:15 1995

Message-Id: <> Date: Mon, 07 Aug 95 14:43:56 -0400 Sender: From: "Geoffrey L. Matrangola" <> Organization: McCabe and Associates Inc. X-Mailer: Mozilla 1.1N (X11; I; SunOS 4.1.3 sun4c) Mime-Version: 1.0 To: Subject: Completed Lovelace X-Url: I just wanted to tell you that I finished going through the Lovelace Tutorial and found it to be quite useful. Thank you, Geoff

From Thu Aug 17 03:53:20 1995

Return-Path: <> From: (Joerg Pleumann) To: Subject: Lovelace Date: Wed, 16 Aug 1995 22:49:18 -0400 Message-Id: <> Lines: 9 Hello, I've just finished reading your Lovelace ADA tutorial. It gave me a good and quick overview on the language. It was easy to read, and I think you made good use of interactive and presentation features of HTML. Great work! [ and all that for free :-) ] Bye, Joerg

From Sat Aug 19 23:06:08 1995

Return-Path: <> Message-Id: <> Date: Sun, 20 Aug 95 15:04:09 1200 Sender: From: Raewyn Ferguson <> Organization: University of Otago X-Mailer: Mozilla 1.1N (X11; I; OSF1 V3.0 alpha) Mime-Version: 1.0 To: Subject: Lovelace Tutorial X-Url: Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=us-ascii Status: R Excellent tutorial. I've been studying Ada for 6 months and never grasped much in the lectures. I'm was in a right panic about the end of year exam and the assignments I have to complete before the end of the year. This tutorial explained every-thing really clearly. I feel confident that I can finish the Ada paper I am studying and perhaps pass.

From Ada WWW Server Aug 1995

[In August 1995, Magnus Kempe posted some statistics about his Ada web server, "Home of the Brave Ada Programmers". Lovelace was the most popular spot on his server, with more than 10,000 hits]

From Sun Sep 3 15:26:58 1995

Return-Path: <> From: Message-Id: <> Date: Sun, 03 Sep 95 21:23:34 To: <> Subject: Lovelace X-Mailer: IBM WebExplorer David, I just completed your nice Ada tutorial and found it very useful as a quick 'crash course' of the language. IMHO it is a brilliant idea to include more general sections like those on programming safety and efficiency. The only problem I encountered was that GNAT (at least 2.06 for OS/2) doesn't always raise Constraint_Error exceptions when it should. This is of course not your fault, but I think it would be a good idea to warn GNAT users that they might experience some difference between theory and practice - as long as GNAT is a work in progress. Klaus // Klaus A. Brunner Austria, Europe // <> 2:313/9.16@fidonet

From Tue Sep 19 17:10:52 1995

Date: Tue, 19 Sep 1995 17:12:44 EDT From: To: Message-Id: <> Subject: $6.7 Lovelace Dear Mr. Wheeler: I'm using your Lovelace for courses I taught here using GNAT Ada 95. Students were giving hardcopies I prepared for them for these who do not find it convenient to browse on the Web using slow machines in our PC lab. ... Your work in Lovelace is a great time-safer for my teaching here since good text on Ada 95 is still not readily available in book format. Navigating with Lovelace in mind also add much meaning to the Web surfing to many of our students here. Thanks for your work. T. C. Wu (9/19/95) Math & Computer Studies York College, CUNY Jamaica, NY 11451 PS: I already voted Lovelace as the Best of Software on the Internet.

From Mon Oct 2 14:13:10 1995

Return-Path: <> Date: Mon, 2 Oct 95 14:10:10 EDT Message-Id: <> X-Sender: X-Mailer: Windows Eudora Version 2.0.3 Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" To: From: (Chris Crowley) Subject: Lovelace tutorial Status: R Mr. Wheeler, I would like to thank you for putting together such a fine Ada tutorial (Lovelace). I am currently a graduate student at George Mason University working on an M.S. in Info Systems and a graduate certificate in Software Systems Engineering, something I believe you know a bit about. SWSE 619 is what has prompted me to learn Ada and your tutorial is making it quite enjoyable. I do have one question for you. Do you know of any Internet newsgroups or forums where someone such as myself might be able to post questions about Ada? Specifically, I'm trying to find out if there is an Ada equivalent to C's getche() function for accepting character by character input without a carriage return. If you know of any newsgroups, or happen to know the answer to the question itself, I would very much appreciate a quick email from you. I can be reached at <>. Thank you again for your tutorial and your help! Chris Crowley [The newsgroup is comp.lang.ada, and yes, Ada 95 includes a function Get_Immediate to do exactly that.]

From Mon Oct 2 19:47:19 1995

Return-Path: <> Message-Id: <> Comments: Authenticated sender is <> From: "Jon S. Berndt" <> To: Date: Sun, 1 Oct 1995 09:39:07 +0000 Subject: Return-Receipt-To: "Jon S. Berndt" <> Priority: normal X-Mailer: Pegasus Mail for Windows (v2.01) Status: R Dave: I've been browsing for a good Ada tutorial. Looked at your page. I think I'll be using it as a tutorial. I've got gnat installed under Linux on my 486DX2/66. Mostly, I program using C, and C++. I think Ada is worth investigating for me (a consulting programmer). Going through your on-line resume, I see you're quite well versed in many disciplines. Then I noticed on your web page you wrote: >Most important to me, I'm a Christian. This was refreshing to see. God rewards and guides those who put Him first. He has blessed me also with a great job and a sound mind. I've got to finish getting ready for church, this morning. God bless, Jon Berndt *********************************************************** Jon S. Berndt Houston, TX ***********************************************************

From Wed Oct 4 08:14:10 1995

Return-Path: <> Message-Id: <9510041215.AA15460@aviary.STARS.Reston.UnisysGSG.COM> Date: Wed, 4 Oct 95 08:00:52 -0400 From: To: Subject: Lovelace David, Appreciate your considerable efforts in developing the Lovelace tutorial. Could you possibly provide the MS-DOS ftp-able version in self-unzipping format? (I don't have the correct PKUNZIP version). Again, thanks for the hard work. Take care. -- Frank _________ ----+_/ ___ \___) Frank Svoboda | (___\_) Loral Defense Systems-East o | (_____) 12010 Sunrise Valley Drive, ____+-(____) Reston, VA 22091 Net: Vox: 703-620-7059 Fax: 703-620-7916 Admin: Denise Bonham (voice) 703-620-7804 [ You can get a more current "unzipping" program from as explained in the "downloading Lovelace" page. I'd be happy to provide a self-unzipping file, but the only program I know of that does that is "pkzip", which is shareware ($). Since I get absolutely NO money from distributing Lovelace, I can't really justify buying pkzip just for that purpose. Also, it would be a pain to distribute, since I'd have to download to a PC, zip, and then upload. If you could find a free way for me to create self-extracting "zip" files from a Sun Sparc, I'd be pleased to do it. ]

From Tue Oct 3 21:54:49 1995

Return-Path: <> From: (Oliver E. Cole) Message-Id: <> Subject: Re: Ada Links To: (David Wheeler) Date: Tue, 3 Oct 1995 21:52:04 -0400 (EDT) X-Mailer: ELM [version 2.4 PL22] Content-Type: text ... > Under "Ada Links" at, you might > want to add the Lovelace tutorial as well as "Learn Ada on the Web": > > <A HREF="">Lovelace > Ada Tutorial</A> > > --- David > > will do. Scott Evans ( is our webmaster. Keep up the good work. Keep doing good stuff Dave. --oec -- ------------------------------------------------------------------------------ Oliver E. Cole OC Systems, Inc. (703) 359-8165

From Wed Oct 4 09:41:38 1995

Return-Path: <> Message-Id: <> Date: Wed, 04 Oct 95 15:36:16 0100 From: hat <> Organization: Eurocontrol - the european organisation for the safety of air navigation X-Mailer: Mozilla 1.1N (Windows; I; 16bit) Mime-Version: 1.0 To: Subject: http://dolphin/lovelace-4.2/s6-f.html Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=us-ascii ... I'm finding this tutorial VERY USEFUL. I'm doing a little gnat on the side to check ideas. thanks Andrew. -- This message printed on 100% recycled electrons.

From ecs! Fri Oct 6 12:16:26 1995

Return-Path: <ecs!> Date: Fri, 6 Oct 1995 17:10:43 +0100 From: ecs! (Kurt Waldhans) Message-Id: <> To: Subject: Comments on Lovelace Content-Type: text/plain Mime-Version: 1.0 X-Mailer: NCSA Mosaic 2.7b1 on Silicon Graphics X-Url: Status: R Dave, just finished Lovelace, very nice ! I would like to receive e-mail when a updated version is available (we have only email-connection to internet)

From Fri Oct 6 16:11:13 1995

Return-Path: <> Message-Id: <> Date: Fri, 06 Oct 95 16:09:19 -0400 From: Samuel Fredland <> X-Mailer: Mozilla 1.1N (Windows; I; 16bit) Mime-Version: 1.0 To: Subject: Lovelace Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=us-ascii Status: R Very nice tutorial. I am taking a graduate-preparatory course at NYU, and we are using Ada. Here's a suggestion: When introducing a new statement or syntax, start with some simple examples. Don't ever jump right into the BNF diagram. It's easier to understand a given BNF if you've already gotten a feel for the construct that it illustrates. Slow down. Obviously, this is just a function of how much time you and others have had to flesh this thing out. Lovelace is an excellent introduction to the main ideas and capabilities of Ada95, but it doesn't yet serve as an adequate textbook. This may not have been what you originally had in mind for Lovelace, but why not? It doesn't have to be done all at once. Good luck and thanks for the knowledge! -Samuel Fredland, NYC [I went through Lovelace and put examples before every BNF, and gave him a draft version to see what he thought of the changes. As far as "slowing down" goes, it's hard to please everyone; I don't talk about if-then-else and loops until lesson 3, and you have to get through lesson 9 before you can even do trivial I/O! I'm trying to strike a balance between too slow and too fast; please let me know if there are specific changes you'd recommend. ]

From Sun Oct 8 02:34:30 1995

Return-Path: <> Date: Sat, 7 Oct 1995 23:32:27 -0700 Message-Id: <> From: (Sam Fredland) Subject: Re: Lovelace To: (David Wheeler) Status: R It's terrific that you take peoples' comments so seriously. Yes, please do send me the pre-release version and I'll see if I can give you any feedback. -Sam Fredland

From Mon Oct 9 16:14:26 1995

Return-Path: <> From: James C Novitch <> Message-Id: <> To: Cc: Subject: Lovelace Tutorial Date: Mon, 09 Oct 95 15:11:31 -0500 David, I just completed your Lovelace Tutorial. Thanks for making this resource available on the web. I now feel I have a basic grasp of Ada95. I especially liked the discussion-quiz format. It helped to break up the reading. Sincerely, Jim Novitch

From Mon Oct 16 16:46:29 1995

Return-Path: <> Message-Id: <> Date: Mon, 16 Oct 95 15:38:06 -0500 From: Christopher Anthony Petenes <> To: Subject: Lovelace Tutorial X-Url: I completed your tutorial. Excellent work, I enjoyed it!!!

From Mon Oct 16 15:05:09 1995

Return-Path: <> Date: Mon, 16 Oct 1995 15:04:07 -0400 From: Mark Wharton <> To: Message-Id: <147891*> Organization: Vitro Corporation Just completed section 4.2 of rev. 4.5 of Lovelace. The question is a little tricky because if A is the name of a type that is visible in the scope of the declaration procedure Delete_File( Integer : A ); then it IS a legal declaration. "INTEGER" is a predefined type, not a keyword. [My reply was: if you understand Ada that well, you probably don't need a tutorial! However, I'll try to add a note about that subtlety somewhere]

From Mon Oct 16 17:59:10 1995

Content-Identifier: Re[2]: Lovelace Comments Date: Mon, 16 Oct 1995 17:51 From: Mark Wharton <> Subject: Re[2]: Lovelace Comments Message-Id: <147997*> I've been using Ada for over 10 years, but not Ada95. I'm getting a good intro to that from Lovelace -- after breezing through the quizzes of the first few sections. :-)

From Mon Oct 23 16:53:24 1995

Date: Mon, 23 Oct 1995 15:49:40 CDT From: Dan Lyttle x3794 124-211 <> To: Message-Id: <> Subject: Lovelace I received my Nov/Dec Ada Letters today, and tried the Lovelace tutorial. I'm unable to open it using the URL you show, although I'm able to open and navigate to the tutorial. Just wanted to let you know in case you want to check it out. [The published URL wasn't right; I asked Magnus Kempe to create a forwarding link so that people will be sent on to the right place]

From Wed Nov 1 10:21:39 1995

Return-Path: <> Date: Wed, 1 Nov 95 10:19:29 EST From: (Martha Borkan) Message-Id: <> To: Subject: Re: Sample Ada program (LONG) - comments wanted Status: R I got your sample "Small" adventure program program off comp.lang.ada dated Oct 26 and put it through our AdaMagic (validated) compiler. It found a few minor legality errors that Gnat overlooked, mostly the same things that Tucker posted in his reply to your last posting of the sample. [A number of minor errors that have been fixed] 5) why is type thing controlled? I assume this is for some future enhancements. [That's right.] I hope these corrections are helpful. I'll let you know if I have any other suggestions when I look at it more closely. Intermetrics would like to use this sample as one of several test cases demo'ed in our TriAda booth. Can we have your permission to do so? [ It would be my pleasure! Feel free to use it for any purpose you like. I _do_ have one request - please credit me as the author. ] Thanks, Martha Borkan Intermetrics, Inc. email:

From Tue Nov 7 00:33:46 1995

Return-Path: <> Message-Id: <> Date: Mon, 06 Nov 95 23:25:10 -0600 Sender: From: Sreedhar Chintalapaty <> Organization: University of Memphis To: Subject: lovelace tutorial X-Url: Thanks for putting this tutorial on-line. It's an indispensible part of my ada course here.

From Mon Nov 6 22:30:30 1995

Return-Path: <> From: Message-Id: <> Date: Tue, 7 Nov 95 02:21:00 UTC 0000 To: Mime-Version: 1.0 Subject: Small Hi. Forgive the previous bad message..if any. I am new to Ada 95 (but not to Ada 83) and to gnatlist@seas.gwu.ede. I downloaded your Small programming demo about 3 weeks ago and find it quite helpful for my first fling at learning Ada9X. I will give you a brief report re my experience with Small as one more data point for you. ... I am a retired mechanical engineer just in this for the fun of it. ... 3) Small would be much easier for a newby to get up to speed on if it included a small sample play session. It is pretty grim tying to figure out who does what when without a game plan. Maybe there was an earlier one which I missed as a late comer? ... Thank you and apologies again. Bye Art Adamson, Cincinnati, Ohio Preferred email Alternate email Thanks. Art [There's a "help" command, and I've added a sample play session to the description]

From Wed Nov 15 06:30:04 1995

Return-Path: <> Sender: Date: Wed, 15 Nov 1995 12:27:41 EST From: Reply-To: To: Cc: Message-Id: <> Subject: SMALL Hello, Your program is fine to help (helping ?) learning Ada 95... Thanks. My english is not fine ;-() .... ===================================================================== Bertrand Petitprez. Sema Group Grenoble, France.

From Tue Nov 21 20:49:40 1995

Return-Path: <> Message-Id: <> Date: Tue, 21 Nov 95 20:41:28 -0800 From: Arthur Adamson <> To: Subject: Tutorial Completed I just completed the Lovelace tutorial (Last page dated 17-Feb-95). I found it very well written, productive, efficient. Congratulations. I am a 76 year old retired Mechanical Engineer (Jet Engines). I fuss with Ada as a hobby. This was my first exposure to Ada 95. I'm looking forward to trying to do something with it. Arthur P. Adamson, Cincinnati, Ohio, USA [ Fantastic! This is why I wrote Lovelace.. so that other could enjoy it. Thanks very much for letting me know. ]

From Wed Nov 22 16:25:47 1995

Message-Id: <> Sender: (Frants P) Date: Wed, 22 Nov 95 22:23:09 0100 Sender: From: Frants P <> To: Subject: I've used and completed lovelace X-Url: Hi! It took me a few hours to get through it, but I think of it as a valuable investment. Thanks for providing Lovelace! Patrick -- /***************************************************************\ Name: Patrick Frants E-Mail: Doing: RCFS (Radio Control Flight Simulator)

From Mon Nov 27 21:22:11 1995

Return-Path: <> Message-Id: <199511280219.VAA29912@post.QueensU.CA> Date: Mon, 27 Nov 95 21:18:12 -0800 Organization: Queen's University To: Subject: Completion of Lovelace tutorial. Mr. Wheeler, I have completed your tutorial as both a review of Ada 83 and a rapid overview of Ada 95. I did not have much time, but I think, it will steer me in the right direction. Many thanks for your initiative. Yves Theriault, PG Queen's University.

From Fri Dec 8 12:33:11 1995

Return-Path: <> Date: Fri, 8 Dec 95 12:28:18 EST Message-Id: <9512081728.AA25458@ss4.uiv> X-Mailer: NCSA Mosaic/2.0 (Windows x86) X-Url: From: (Keith U. Peoples) To: Subject: Comments on Lovelace I just finished my first pass through your tutorial. I was informed that I would be moving on to an Ada95 project and requested information on in-house Ada training from our training department. I ended up with a taped 4 day crash course on Ada that was difficult to sit through. I found your tutorial during a search for Ada info. I found your tutoral to be well organized, fast moving, and a source of additional resources. I have already recommended your tutorial to my boss and others. As indicated above I plan on going through the tutorial again after I take the plunge and start writing code. Thanks

From Wed Dec 13 09:35:40 1995

Return-Path: <> Date: Wed, 13 Dec 1995 09:44:56 -0500 Message-Id: <> X-Sender: To: From: Sam Harbaugh <> Subject: ada2html demo Dave, Nice demo, nice tool. I think i'll use it in a class next semester. [I] suggest you mirror the .ch stuff in this country. It's taking a loooong time to load each page. sam palm bay, fl [The "demo" he's referring to is program "Small". The tool and demo are mirrored in the "PAL" (Public Ada Library), and the PAL is mirrored in many other places (including CD-ROMs). You can also download it, and soon there will be a book! ]

From Wed Dec 13 22:16:11 1995

Return-Path: <> Date: Wed, 13 Dec 1995 22:13:33 -0500 From: Message-Id: <> To: Subject: Thank you! Dear Mr. Wheeler, Thank you for posting the announcement of Lovelace 5.0 in comp.lang.ada. I presently access the Internet through America Online, which costs five cents a minute. So I prefer to run your excellent tutorial off line. I have an off line .HTML browser, and in the past have run a copy of Lovelace found on an Ada CD-ROM - I believe the one from Walnut Creek. Is there any way I can download the entire new version of Lovelace? (If not, I'll wait until Lovelace 5.0 appears on a CD-ROM, or until I decide I can afford a flat-rate Internet Service Provider!) Thanks for your time, and I hope you have a blessed and happy Christmas and New Year. - John Herro [ Lovelace has been downloadable since its early versions, yet somehow many people are missing this. I've bolded the "download Lovelace" on the home page; I refuse to use "Blink" to highlight this. Lovelace is also available via the Public Ada Libary (PAL), Walnut Creek CD-ROM, ez2load, and many other sources.]

From Thu Dec 14 17:11:09 1995

Return-Path: <> Date: Thu, 14 Dec 1995 17:08:43 -0500 From: Message-Id: <> To: Subject: Re: Thank you! Status: R > See the "download Lovelace" option on the > Lovelace home page. Thank you very much! I guess if I had taken a few minutes to LOOK AT and ENJOY your home page instead of worrying about what I was paying per minute, I wouldn't have had to bother you with a stupid question. You wrote an excellent tutorial, and I'm looking forward to seeing version 5.0. Thanks again, and God bless you and yours. - John Herro

From Fri Dec 15 14:06:41 1995

Return-Path: <> Date: Fri, 15 Dec 1995 14:02:58 -0500 From: Daniel Ondreyko {84016} <> Message-Id: <> To: Subject: Comments on Lovelace I have gone through and completed Lovelace. It took some time, but I managed to make it trough. This tutorial was a big help. Enjoy your message. -DanO

From Thu Dec 21 11:23:48 1995

Return-Path: <> Message-Id: <> Date: Thu, 21 Dec 95 10:33:07 -0800 From: Chris Stevens <> Subject: Lovelace Corrections First, I'd like to say the Lovelace tutorial is great (I haven't finished it yet). My previous programming experience was with C/C++ and Fortran. But, working for the gov't, I knew i'd have to deal with Ada sooner and later. ... Thanks Chris Stevens

From Tue Jan 2 19:14:45 1996

Message-Id: <> Date: Tue, 02 Jan 96 19:08:20 To: <> Subject: Typo in Lovelace? Hi, I've been going through your Lovelace tutorial, and so far I must say I'm quite impressed! .. Chris -- Please respond to as I haven't yet gotten the mail package for this address to work yet. :/ PS: FWIW, I'm a junior at VCU in the CS department. I first heard about Ada from a professor who seems to rather like the langauge. Alas Ada is not an option here. :(

From Thu Jan 4 16:50:20 1996

Return-Path: <> Message-Id: <v01520d04ad11f488b6ac@[]> Date: Thu, 4 Jan 1996 16:49:57 -0500 To: From: (Doug Smith) Subject: s15-f.htm [Regarding lesson 15, last section:] Good explanation. And an excellent place to introduce graphics. However, if you are interested, I would like to suggest an alternative graphic based closely on what you started with. I can give it to you in PICT, GIF, or almost any other format. Let me know.

From Fri Jan 5 15:45:33 1996

Return-Path: <> Message-Id: <v01520d09ad133b96017e@[]> Date: Fri, 5 Jan 1996 15:45:09 -0500 To: From: (Doug Smith) Subject: Finished your tutorial David, I liked it before and I like it now. I'm going to be talking with Chuch Engle next week about some Ada promotion ideas. I'm going to mention your tutorial and how it might be integrated with other on-line resources. Doug. - - - - - - - - - - - - - v - - - - - - - - - - Doug Smith | 703-760-0519 (Work) | 703-742-8662 (Home) | 703-742-9580 (Fax/Data) | (NetPhone)

From Mon Jan 8 01:46:40 1996

Return-Path: <> Date: Mon, 8 Jan 1996 07:43:42 +0100 From: (Gerda Gutberlet) Message-Id: <> To: Subject: Re: Lovelace Yes, I liked Lovelace. Before reading it, I tried to read the Ada Rationale, and I found it very difficult to understand. Now perhaps it will be easier to do. From: (Arcadio A. Sincero) Newsgroups: comp.lang.ada Subject: Printing up LoveLace? Date: 11 Jan 1996 22:08:54 GMT Organization: The Terp Tavern Lines: 16 Message-ID: <> Reply-To: NNTP-Posting-Host: X-Newsreader: slrn (0.8.4) Is there a way to somehow convert LoveLace into a printable form suitable for binding? Personally, I don't like these interactive tutors. I prefer to have it in "book form". Thanks! -- =============================================================================== Arcadio Alivio Sincero, Jr. Sophomore, Computer Science Major at the University of Maryland at College Park Email:, WWW: <still working on it!> "Q: Why do mountain climbers rope themselves together?" "A: To prevent the sensible ones from going home." [ Funny you should ask! Yes, I'm talking with a publisher about turning Lovelace into a book. Hold on! ]

From Sat Feb 17 01:09:46 1996

Return-Path: <> Message-Id: <> X-Sender: Date: Sat, 17 Feb 1996 00:59:37 -0500 To: From: Kenichi Yamada <> Subject: Ada tutorial home page Status: R To Author: I saw your home page. Now I am studying about Ada so that your home page help me very much. I think you spent a lot of time to make this page. I really appreciate your work. Thank you. Kenichi Yamada ----------------------------------------------- Kenichi yamada E-Mail : http :http// -----------------------------------------------

From Wed Feb 21 05:58:39 1996

Return-Path: <> Message-Id: <> Date: mer, 21 fév 96 11:52:13 0100 Sender: From: Chantal Bolanz - LITH <> To: Subject: I am completed Lovelace X-Url: Hi, I know Ada 83 since 3 years, and I am very happy to found your explain about OO in Lovelace. Thank you! Chantal Bolanz e-mail :

From Wed Feb 21 18:10:22 1996

Return-Path: <> Sender: Message-Id: <> Date: Wed, 21 Feb 1996 15:11:10 -0800 From: johndoe <> To: Subject: tutorial you're probably going to think i am a real pain in the butt. i found something amiss in one of the lovelace tutorial web pages. in it says 'To declare a private package, just append the word "private":' i think you meant 'prepend'. considering that this is the first error that i noticed in 15 sections, i'd say that's pretty good. in fact, i like layout and language of the tutorial very much. --kirk beitz

From Mon Feb 26 15:38:14 1996

Date: Mon, 26 Feb 96 20:34:07 0500 From: Allan Johnson <> Organization: Computing Devices Canada Thank you for the tutorial. I think I'm becoming and ADA convert.

From Fri Mar 22 08:20:29 1996

Return-Path: <> Sender: collins@CS.WM.EDU Message-Id: <> Date: Fri, 22 Mar 1996 08:17:23 -0500 From: Bob Collins <collins@CS.WM.EDU> Organization: College of William & Mary X-Mailer: Mozilla 2.01 (X11; I; SunOS 4.1.3_U1 sun4m) Mime-Version: 1.0 To: Subject: Your Ada Tutorial X-Url: Dear Mr. Wheeler, I am teaching a software engineering course at the College of William & Mary in Virginia, and I decided to use Ada (95) and gnat as the basis for the semester-long software project the students have to do as teams. I would like them to use your tutorial, but it is esentially unusable -- it takes to long to load pages from Switzerland. (I am using the site.) I would like to know if there is a closer (faster) site, or even if I could download the tutorial so that it would be local. [See the "download" item on the Lovelace home page] ... Bob Collins, Comp Sci Dept

From Tue Mar 26 10:14:22 1996

Return-Path: <> Sender: (Roger Haslock ) Message-Id: <> Sender: (Roger Haslock ) Date: Tue, 26 Mar 96 15:08:56 0000 Sender: From: "Roger Haslock (SEC Contractor)" <> To: Subject: Lovelace Tutorial X-Url: X-Organisation: CSE3, DRA Malvern, Worcs, UK. I found this speedy and tidy, with allowances for my ignorance of American terminology. I drove through it in about 4 hours, attacking the quiz questions and then, in the event of failure, tracking down the reason for my mis-understanding. I do not, however, understand 'program'. I understand sub-program, package, task unit and generic unit - but do not see how to make a program. You discuss the procedure Small, but I do not see the program which contains it. At this point I wished for an index to Lovelace, to find where I had missed the definition of a 'program', to find the first mention of the concept. [I'll try to make this clearer in future versions] I also found some of the html links had come adrift. I could not access the document on style. [I'll try to fix such links! Thanks!] R C Haslock 100647,150 @

From Tue Apr 2 11:02:11 1996

Return-Path: <> Sender: Message-Id: <> Date: Tue, 02 Apr 1996 09:58:01 -0600 From: David Morton <> Organization: student To: Subject: Kudos and hello's I just wanted to say that I like the Ada tutorial you've written.. I'm a beginning CS major (with two years under my belt) and I am really interested in Ada, especially since ada95 and GNAT have come of age. Are there interfaces in Ada for graphical programming, such as X-Windows? I suppose it wouldn't be too hard to encapsulate all the C functions into Ada packages... ... anyway, I'm rambling; The tutorial is great! later, dude! -- David Morton // If you use Netscape 2.0, 205 College, Winfield, KS 67156 // you can click on the mailto: part to reply! (HINT, HINT) :)

From Thu Apr 11 17:21:26 1996

Return-Path: <> Message-Id: <> Date: Thu, 11 Apr 1996 16:21:46 +0000 From: John Doe <> X-Mailer: Mozilla 2.01 (Macintosh; I; PPC) Mime-Version: 1.0 To: Subject: Lovelace completed X-Url: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Status: RO Ignore the email address in the header... temperary machine, not mine... I an a S/W Engineer for a defense contractor in Huntsville, Alabama. I have been coding in Ada for 5 years. I am proficient in the standard programming features of Ada83 and found your tutorial to be very helpful in learning the major changes in Ada95 as well as the tasking and generics features in both. I am finding that there is more and more of a need for interfaces to C and fortran, so maybe more time can be spent on pragma's and some examples of this concept. Thanks again, Pat Mahone [I'd like to. In the interim, I've added much about interfacing to Java, which is a "hot topic".]

From Wed Apr 24 04:40:59 1996

Return-Path: <> Message-Id: <> Date: Wed, 24 Apr 1996 18:33:33 -0700 From: Christopher Huth <> To: Subject: lovelace tutorial X-Url: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Status: R David, which version is the downloadable "local" tutorial, from this http server. I already have 5.1 and am making my way through it slowly an it is great. With thanks

From Fri Apr 26 14:15:26 1996

Return-Path: <> Message-Id: <> From: "Randy \\"Keroppi\\" Milholland" <> Date: Fri, 26 Apr 96 13:12:06 -700 To: Subject: Lovelace Ada Tutorial Dear Web Attendant, My name is Randal Milholland. I currently hold the position of Documentations Assistant for the University of North Texas Computing Center. As part of my job, I convert the UNT computing magazine, _Benchmarks_, into HTML. In the recent January/February issue of _Benchmarks_, a list of educational URLs was printed. Your web pages was on this list. In the process of converting this article, I am making links to your page. The issue is not quite done, but soon will be. If you have any questions, problems, or requests, please contact my as soon as possible at this e-mail address, or my alternate - I may also be reached at (817)565-3152. I will do my best to answer questions or help in any way. The URL for _Benchmarks_ is "" when this issue is done I will contact you. I look forward to any responses you have. Sincerely, Randal Milholland

From C.M.Holloway@LaRC.NASA.Gov Wed May 8 11:33:09 1996

Return-Path: <C.M.Holloway@LaRC.NASA.Gov> Sender: Message-Id: <3190A7CF.41C67EA6@LaRC.NASA.Gov> Date: Wed, 08 May 1996 09:55:27 -0400 From: "C. Michael Holloway" <C.M.Holloway@LaRC.NASA.Gov> Organization: Assessment Technology Branch To: Subject: Lovelace Tools X-Url: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Status: R Mr. Wheeler, Your Lovelace Ada 95 tutorial is quite nice. I hope to use the tools you developed for tutorial creation to develop a formal methods tutorial for engineers and managers. Eventually, I will include it with the formal methods pages I maintain at NASA Langley <URL:>. ^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~ C. Michael Holloway Email: C.M.Holloway@LaRC.NASA.GOV NASA Langley Research Center, Mail Stop 130, Hampton VA 23681-0001 URL:, Verse: Deuteronomy 29:29 P.S. I noticed in your bio that you're a Christian. If you are able to do so, you might want to look at URL: [Thanks very much! Others are welcome to use my tutorial creation tools as well.]

From Wed May 1 11:47:39 1996

Return-Path: <> Message-Id: <9605011544.AA12867@sursagj.rsadom> Date: Wed, 01 May 96 11:44:11 -0400 Sender: From: "Martin L Pinaud (Marty)" <> To: Subject: Lovelace Tutorial for Ada David, While the tutorial, at least as far as I've been through, is quite useful, the answer to the quiz in section 10.2 is incorrect. You ask which statement defines an exception called No_Safety_Net, when actually the statement defines an exception called Safety_Net. I normally don't point out errors, but that one might leave some users with an erroneous expectation about how to name and reference exceptions. Thanks for the tutorial, Marty Pinaud [Fixed! Please, feel free to tell me about errors - that way I can correct them. ]

From Mon May 13 12:16:42 1996

Message-Id: <> Date: Mon, 13 May 1996 11:12:45 -0600 From: Todd Peterson <> To: Subject: lovelace tutorial i completed the lovelace tutorial and found it helpful for me. thanks.

From Mon May 27 07:03:17 1996

Return-Path: <> Message-Id: <> Date: Mon, 27 May 1996 12:59:48 +0200 From: Jacob Sparre Andersen <> Organization: CATS, Niels Bohr Institute To: Subject: Latest extensions to Lovelace - For the comments section! Hi David. I've just had a look at your latest extensions to Lovelace. Grrrrrreat! Your explanations on Java, and how to use Ada to write applets are good. I'm going to download the whole tutorial, so I can have a closer look later. Cheers, Jacob PS: And this _is_ the company opinion! ------------------------------------------------------------------------------ Tofta Teld /v Jacob Sparre Andersen | Web: | Sauntesvej 24B | | DK-2820 Gentofte | Phone: | Danmark | (int+45) 39 65 53 51 | ------------------------------------------------------------------------------ Try Ada 95 - The programming language of today - and tomorrow!

From Wed Jun 5 12:04:35 1996

Return-Path: <> Message-Id: <> Date: Wed, 05 Jun 96 17:01:03 -0700 From: Steve Campion <> Organization: University of Southampton Thank you very much for the Ada tutorial on the WEB. I just thought that I would let you know that I found it very useful indeed. I consider it to be amongst the better written tutorials that are on the WWW these days (ie easy to read yet complete and not using jargon!). Again, thankyou, Steve Campion

From Wed Jun 26 07:12:31 1996

Return-Path: <> Date: Wed, 26 Jun 1996 13:08:49 +0200 From: (Joel BROBECKER) Message-Id: <> To: Subject: Hello form a Lovelace reader Content-Type: text/plain Hi ! I've just finished reading the lovelace tutorial... I think that it was a bit long to read compared to a paper version, but I really liked it, especially with all the quizes. Thanks very much for your very good work. Joel BROBECKER, student at Telecom Bretagne, FRANCE [ I understand; the book version is due out soon ]

From Sat Jun 29 17:10:25 1996

Return-Path: <> Message-Id: <> Date: Sat, 29 Jun 1996 16:54:19 -0400 From: Rich Maggio <> David, First of all, I want to tell you great I think your ADA tutorial is. I have found it to be very useful in getting an idea of what ADA is all about. My interest in ADA is due to the fact that I will be taking a computer science class this fall that is taught with ADA. Previously, it was taught with Pascal. I was concerned that I would have to work in the lab all of the time because I wouldn't be able to get my hands on an ADA compiler at a reasonable price. Well, I found one for free (GNAT) - you can't get more reasonable than that. So, I will be able to work on my projects on my PC here at home. Thanks, Rich Maggio

From Sat Jun 29 23:40:23 1996

Return-Path: <> Message-Id: <> From: Paul Stachour <> Date: Sat, 29 Jun 96 22:38:46 -400 I've completed going through the December version. You asked that we msg, and I am. I did find several defects though, and will send you a list when I get them transcribed. I like the web-ada integration, that's neat. I've sold about 30 copies of various GNAT materials on diskette, including your lovelace tutorial on the documentation set of diskettes. Yours, Paul Stachour

From Mon Jul 8 09:45:40 1996

Return-Path: <> Sender: Message-Id: <> Date: Mon, 08 Jul 1996 08:41:59 -0500 From: James Woodruff <> To: Subject: Lovelace - The Book Hi David Thanks for the tutorial. Please let me know when I can buy The Lovelace Tutorial book. James Woodruff

From Sun Jul 7 15:17:40 1996

Return-Path: <> Date: Sun, 7 Jul 96 14:58:15 PDT From: Mac Kincaid <> Sender: Mac Kincaid <> Subject: Ada Lovelace Tutorial To: X-Priority: 3 (Normal) X-Mailer: Chameleon 4.6.3, TCP/IP for Windows, NetManage Inc. Message-Id: <> Mime-Version: 1.0 David, I am currently working through your Ada '95 Lovelace tutorial on the Web. Section 6.7 needs some editing such as: "...anyone who withs the package will be able to anything to your new type..." "...If you happen to base it on on type Integer, ..." "...Even if you really only customers to use "less than" as an "ordering" concept, ..." "...and as a results you can change your type much more easily..." "... Notice also you to create a constant value without saying exactly what its value is;..." Thanks, Mac P.S. Keep up the good work, I am a direct benefactor! ------------------------------------- Name: Mac Kincaid E-mail: Mac Kincaid <> Date: 7/7/96 Time: 2:58:15 PM This message was sent by Chameleon -------------------------------------

From Mon Jul 15 17:57:22 1996

Return-Path: <> Sender: Message-Id: <> Date: Mon, 15 Jul 1996 17:54:11 -0400 From: John McDonald <> Organization: SAIC, WARSIM 2000 X-Mailer: Mozilla 2.01 (X11; I; AIX 2) Mime-Version: 1.0 To: Cc: Subject: Re: Lovelace, the online Ada tutorial... X-Url: David, I just completed the Lovelace Ada tutorial and per your request, I wanted to drop you a note letting you know that I'd done so. I'm very familiar with Ada83, so I was mainly concerned with learning what's new with Ada95. While the tutorial, of course, covered a lot that I already knew, I found it's links to the appropriate on-line style guides and manuals quite helpful. I'm cc:-ing this e-mail to the Best-of-Web folks to put in my vote for your site: ( Thanks, John McDonald

From Tue Jul 23 09:04:35 1996

Return-Path: <> Date: Tue, 23 Jul 1996 11:56:54 +0200 From: (Magnus Kempe) Message-Id: <> To: Subject: Re: Updated version of Lovelace now on "". X-Sun-Charset: US-ASCII Status: R David, The presentation improvements are very nice. It does add a degree of attractiveness, and since both browsers and networks are getting (slightly) better and faster, it was a good time to do that. Magnus

From Thu Jul 25 09:43:53 1996

Return-Path: <> Date: Thu, 25 Jul 1996 08:41:28 EDT From: To: Message-Id: <> Subject: RE: MUDs. Status: R >[I've posted this on comp.lang.ada; here's my reply in case > you missed it] > >... >I wish you well! About a decade ago I maintained such programs >commercially, so I know what's involved. Maybe the following will help. >2. Build your own. You'll need to know more than you know now. >That's not a bad thing - it will give you a reason to learn more. As I get into this I doubt it will ever get finished but it is interesting and forcing me to learn more about Ada. After I get a significant chunk written in Ada and feel I am somewhat competant at OO I will have a look at C++ or some other OOL to write another section. >I strongly recommend that you start by looking at other adventure game >implementations. By reading them, you'll learn about how different >people have solved similar problems. See the MUD FAQ for more info. I am currently reading the ng.s haven't seen the FAQ yet. >Try out my "Lovelace" tutorial, it culminates in a text adventure game. >The advantage is that you'd be able to see one approach to building such >a system, and it's small enough that you can easily understand the whole >thing. It's single-player (not a MUD), but it could be easily turned >into a MUD. Lovelace is at: > "" I am currently reading throught Lovelace, quite nicely done :) Thanks for the input and the well wishes. Robert morphis%niuhep.hepnet@lbl BITNET INTERNET NIU::MORPHIS HEPNET

From Fri Jul 26 10:04:38 1996

Return-Path: <> From: Prof R Conn <> Message-Id: <> Subject: Re: Lovelace updated To: (David Wheeler) Date: Fri, 26 Jul 96 10:02:30 EDT Cc: (Prof R Conn) In-Reply-To: <>; from "David Wheeler" at Jul 23, 96 5:44 pm X-Mailer: ELM [version 2.3 PL11] Status: R Thanks for the note, David. I'll update the PAL as well. Unfortunately, the next Ada CDROM just entered production with version 5.3 of Lovelace, but 5.5 will make the CDROM that targets Tri-Ada 96. You've done an excellent job with Lovelace, including the updates covering Java. Keep up the good work. Rick > Lovelace 5.5 is now on HBAP. > > --- David > Richard Conn, PAL Manager | Opinions expressed herein are my own and not necessarily those of anyone else. ==============================================================================

From Thu 25 Jul 1996 09:51:03

Organization: NIU Physics Dept. newsgroups: comp.lang.ada (David Wheeler) writes: > wrote: > >.... >: I have on occasion fell prey to MUDs (Multi-User Dungeons). One >: telnets in and interacts with game and with other users. I have not been >: satisfied with either the accuracy or various details of the way these have >: been done. So I decided to write one myself. I hope to get a fairly >: well intergrated alpha in about 2 years. > >I wish you well! About a decade ago I maintained such programs >commercially, so I know what's involved. Maybe the following will help. I want to thank the people who graciously offered me advice and encouragement (most via email) (hamlink, deininger, nortonb, jrogers, dcw and of course Wheeler) >Try out my "Lovelace" tutorial, it culminates in a text adventure game. >The advantage is that you'd be able to see one approach to building such >a system, and it's small enough that you can easily understand the whole >thing. It's single-player (not a MUD), but it could be easily turned >into a MUD. Lovelace is at: > "" and to thank David for writing this tutorial. IMHO it does a good job of introducing the basics of Ada and OO programing. >--- David A. Wheeler >Net address: Robert

From Wed Jul 31 09:42:46 1996

Return-Path: <> Sender: Message-Id: <> Date: Wed, 31 Jul 1996 08:38:49 -0500 From: Paul Dietz <> Organization: Software Engineering Research Lab X-Mailer: Mozilla 2.01 (X11; I; SunOS 5.4 sun4m) Mime-Version: 1.0 To: Subject: Error in Lovelace tutorial X-Url: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Status: R David, On page 12.4 of the Lovelace tutorial (, you have the following fragment: ---- type Tree_Node; -- Incomplete type declaration. type Tree_Access is access Tree_Node; type Tree_Node is record Parent : Tree_Access; Left, Right : Tree_Access; Data : Unbounded_String; end record; Here's an example of statements using this tree data structure, if A and B are of type Tree_Access: A := new List_Node; B := new List_Node; A.Data := To_Unbounded_String("Hello!"); -- assign some data B.Data := To_Unbounded_String("Goodbye!"); A.Left := B; -- connect them. B.Parent := A; ---- Note the incorrect statements A := new List_Node; B := new List_Node; which should be A := new Tree_Node; B := new Tree_Node; Paul Dietz Motorola LMPS

From Thu Aug 1 08:52:36 1996

Return-Path: <> Date: Thu, 1 Aug 1996 08:40:31 -0400 (EDT) From: "Naresh Chhugani (engineering)" <> X-Sender: chhugani@scooby To: Subject: ADA 95 : THE LOVELACE TUTORIAL - BOOK Message-Id: <Pine.GSO.3.93.960801083446.26626A-100000@scooby> Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Status: R Dear sir, I am a student of BCIS at USF in FLORIDA.May i know is your above reffered book is out for sale or not yet ? I am interested in buying the one.How can i ? Please reply. Thanks. Naresh Chhugani.

From Thu Aug 1 10:54:00 1996

Return-Path: <> Date: Thu, 01 Aug 1996 10:49:37 -0400 From: "Matthew S. Whiting" <> Subject: Ada generics To: Message-Id: <> Mime-Version: 1.0 X-Mailer: Mozilla 2.01 (WinNT; I) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Url: Status: R Hi David, I'm in Lovelace section 11.1 and something isn't completely clear (first time this has happened thus far so I'd say you've done a great job with the tutorial!). Do I understand correctly that you can instantiate all three types using the same name "Swap." I'm assuming this is the polymorphic behavior of Ada that lets the run-time system decide which instance of Swap to invoke based on the type of the passed arguments, but isn't wasn't explicitly stated that way in the tutorial. Thanks, Matt

From Mon Aug 5 15:12:47 1996

Return-Path: <> Date: Mon, 05 Aug 1996 15:08:46 -0400 From: "Matthew S. Whiting" <> Subject: Tutorial completion To: Message-Id: <> Mime-Version: 1.0 X-Mailer: Mozilla 2.01 (WinNT; I) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Url: Status: R Hi David, I completed Lovelace today. I spent probably 4-5 hours on it over several sessions. I found it very informative and easy to follow. Good job! I really have few criticisms. The continual compare and contrast with C and C++ was great. Although, since the last language I was really proficient with was VAX Fortran, it was of less help to me than to those proficient in C or C++. Regards, Matt Whiting

From Fri Aug 9 17:55:53 1996

Return-Path: <> Message-Id: <> To: Cc: Subject: Lovelace tutorial Reply-To: Date: Fri, 09 Aug 1996 17:51:31 -0400 From: Carl Burch <> Status: R Mr Wheeler, Now that I've completed your Lovelace tutorial, I am obediently responding to your call for e-mail. I found the Lovelace tutorial quite enjoyable. The tiny sections were very conducive to reading. I will attempt to helpfully give you constructive criticism. The quiz questions were a good idea, and I am confident that they helped. You could easily get away with having two or even three questions, possibly more involved than what is there currently. More important, however, is fleshing out explanations of answers thoroughly. (Occassionally I found it irritating to be told simply, ``Correct,'' when I wanted to be sure whether I was right about what made the answer correct.) Another possible change would be to recommend skipping sections occassionally. A student might be interested in only of the existence and applications of some features (tasks, Java applets, and other-language compatibility come to mind), deferring the details to later when the occassion to use it actually arises. I found the Java sections particularly tedious, at least until some day I find I want to develop Java applets. Really, however, the tutorial is a marvelous thing and am now anxious to find something to create using Ada. Thank you for making this available! ---Carl Burch

From Mon Aug 12 01:58:16 1996

Return-Path: <> Message-Id: <> Date: Mon, 12 Aug 1996 15:56:00 +1100 From: Jason Carley <> To: Subject: Typo in Lovelace David, I am really enjoying the Lovelace tutorial. In going through it I have noticed one small typo. The word between the ***s appears to be missing. In section 6.7: "we've discussed so far. If you happen to base it on type Integer, your customers can still add, subtract, and so on. Even if you really only ***want*** customers to use "less than" as an "ordering" concept, the customers may not realize what limitations you had in mind and use all sorts of other operations. If you"

From Tue Aug 13 22:04:39 1996

Return-Path: <> Date: Tue, 13 Aug 96 18:59:49 PDT From: (Bertrand Meyer) Message-Id: <> Subject: URL duration Apparently-To: Status: R Mail from: Bertrand Meyer (ISE Inc., Santa Barbara) Reply-to: Mailer: BOOM Dear Mr. Wheeler: In the bibliography of the 2nd edition of my book "Object-Oriented Software Construction" I would like to list the reference to your Ada 95 tutorial which I found at A few questions: - Is this the right URL? (Or is it a mirror site, and if so what is the better address to give?) - Do you expect the URL to remain valid for several years (the hoped shelf life of my book)? I will be grateful for answers on these two points. Thanks for contributing this resource and best regards, -- BM

From Wed Aug 14 11:01:18 1996

Return-Path: <> Message-Id: <> Date: Wed, 14 Aug 1996 10:05:21 +0000 From: Greg Johnston <> Reply-To: Organization: Rockwell To: Subject: Lovelace Tutorial Your ADA tutorial is simply outstanding. It gives a direct insight to the fundamentals and extends the concepts in a very useful easy to understand manner. I graduated with a BSEE from UCF in the spring of '89. I never had an ADA class. I have used FORTRAN in the past. Just recently I started a new job where ADA is used for aircraft operational flight programs and controls and displays programs. My first successful OFP software build was completed a couple of weeks ago. After about two weeks of the tutorial I wrote my first stand alone program to convert polar coordinates to rectangular coordinates using VAX ADA. This gave me the confidence to persue the OFP. Your tutorial goes above and beyond what I need to know to do the OFP and CDP but that is fine with me. I would have liked to have seen a little more on pragmas. I understand this is a powerful feature with very broad implications. Other than that it was perfect. Thank you very much, Greg Johnston AC-130U software engineer.

From Sun Aug 25 06:41:19 1996

Return-Path: <> From: Date: Sun, 25 Aug 1996 06:41:19 -0400 Message-Id: <> To: Subject: Ada tutorial Content-Length: 689 Status: ORSr Hi, Dave, Glad to 'meet' you. Just heard about your tutorial and logged on to check it out. Looks great; only one problem. In the first sample program, instead of nice formatted code, I see only a single line, with little squares where the 'new lines' should be. I can scroll across to see all the lines, but this obviously will become pretty difficult when the examples get longer. Any suggestions? I'm accessing via AOL and Windows 3.1. ... Wayne Iddings

From Sun Aug 25 16:53:35 1996

Return-Path: <> Message-Id: <> Date: Sun, 25 Aug 1996 17:54:02 -0200 From: Vinicius Fernando Arcaro <> Reply-To: Organization: State University of Campinas To: Subject: ADA tutorial & Christianity Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Length: 1764 Status: OR Dear Mr. Wheeler : Thank you very much for the ADA tutorial -- great work. ...

From Sat Sep 7 06:34:55 1996

Return-Path: <> Sender: Message-Id: <> Date: Sat, 07 Sep 1996 12:42:05 +0200 From: Grave Xavier <> X-Mailer: Mozilla 3.0 (X11; I; OSF1 V3.2 alpha) To: Subject: Lovelace tutorial completed Hi ! Thank you for this great tutorial. I'm student in astrophysics and I will try to develop a few applications in Ada. I was really interested by all the tutorial, except the link to java. But perhaps later will find usefull to work with Java... Sincerly, Xavier Grave -- De chacun selon ses forces, a chacun selon ses besoins.

From Tue Sep 10 18:13:53 1996

Return-Path: <> Message-Id: <> Date: Tue, 10 Sep 1996 16:42:17 -0500 From: "Anthony D. Nguyen" <> Organization: U.S. Army Micom SED To: Subject: Love Lovelace Tutorial X-Url: file:///d|/lovelace/comments.htm Hi David, Lovelace tutorial is for people who love Ada, particularly learning Ada 95. I have finished learning your WWW Lovelace tutorial, and I love it! I appreciate what you have contributed your talents and Ada language expertise on your WWW Lovelace tutorial home page, so that everyone can learn your genuity about Ada tutorial and keep up with new features and flexibility of Ada 95. Please let me know if you upgrade your Lovelace tutorial home page with new capabilities of Ada 95 in practice. It's been a beautiful work! Thanks. Tony.

From Wed Sep 11 09:50:26 1996

Return-Path: <> From: Prof R Conn <> Message-Id: <> Subject: Re: Portability problem with Lovelace To: (David Wheeler) Date: Wed, 11 Sep 96 9:52:22 EDT Hi, David, Windows 95 does not support RR. That's a BIG audience. I'd suspect Windows/NT as well. In your other message, you brought up a good point that underscores rather than dashes may fix the ISO9660 problems but introduce others elsewhere. I had not thought of that, and you're right. How about this solution: replace the dashes with letters (like x or p) so that all file names are alphanumeric? THAT should ensure portability. What do you think? Rick > Actually, I think the only system which doesn't support the > RR extensions is the Mac. Can you tell me about the systems > for this is ISN'T working? > > -- > > --- David A. Wheeler > > > -- Richard Conn, PAL Manager | Opinions expressed herein are my own and not necessarily those of anyone else. ============================================================================== [I changed the filename conventions based on this conversation so my work would be more portable.]

From Thu Sep 12 21:40:19 1996

Return-Path: <> From: "Albert G. Lotito" <> To: <> Subject: tutorial, ada Date: Thu, 12 Sep 1996 21:02:50 -0400 Message-Id: <> Great tutorial! We need more sights like this :) Digitroniclly yours Albert G. Lotito

From Thu Sep 12 15:35:15 1996

Return-Path: <> Date: Thu, 12 Sep 96 14:33:44 cst From: "rlmcgarg" <> Encoding: 84 Text Message-Id: <> To: Return-Receipt-To: Subject: Feedback on the Lovelace Tutorial Hello, David. I am Roger McGargill with Rockwell International in the Collins Avionics and Communication Division. I'm a newly hired software engineer. One of my tasks was to evaluate the ADA 95 Lovelace tutorial as a possible replacement for the ADA course offered here. I was the ideal person to evaluate this as I never studied ADA 83 or ADA 95 and am well-versed in C, and studied FORTRAN and Pascal ages ago. I went through the entire 18 chapters of the tutorial and have come away very impressed at how clear it was and how it allowed me to proceed at my own pace. I'd like to share with you some feedback and ask a few questions, if that is okay with you. The entire tutorial was well-organized and taught the fundamentals of ADA well in the first seven chapters which was appreciated by me ! :) There was references to C, Pascal, and other languages that gave me the basic idea such as data types, procedures, functions, and so on forth. I felt that the tutorial was very through and brought me through a bit at a time so that I wasn't overloaded with information at once. The quizzes was a great way to check my knowledge and if the point of the lesson had stuck in my mind. I do have some concerns. The main concern is that I was not able to download the sample programs after being complied so that I could try them out. I don't have an ADA 95 compiler yet and probably won't for a while. I strongly felt that testing the sample programs out would reinforce the lessons learned so far. I also could change some lines to see how the result would be. [I've discussed this with the maintainers of "WebAda". They intend in the future to permit downloading of executables and/or to return Java programs that automatically run once compilation completes. I do not know when these capabilities will be available.] Another concern is object oriented programming. That was the most difficult area for me as I have little experience with object-oriented programming (soon to be rectified soon! :) ). The section on general object-oriented program, 7.1, was a big plus for me and helped me with the rest of the lesson. I would have benefited from more illustrations in Lessons 7.2 through 7.6. [This is hard to balance, since many people _are_ familiar with object-oriented programming and I don't want to bore them.] Those are the main concerns and feedback that I had. It took me 12 hours over three days' time to complete the tutorial. Naturally, my eyes were tired after spending so much time and have recommended to my supervisor to space it out more to approximately five to six days with some local lab exercises, and a local point of contact for any questions. [The printed version of Lovelace should help your eyes substantially!] I do have a few questions - 1) Section 2.4 was not clear to me... an example after the BNF would have helped. [I've added an example in section 2.4 based on your comments] 2) Section 4.1 - It says that it depends on the compiler and machine on the "most natural" size for the integer type. How do I find out the max. bit size as some of my work involves assembly language. [See section 17.1] 3) Section 5.2 - For loops. This section was clear on how to code for loops except for one thing. What's the syntax if I need a loop with an increment or decrement of more than one? [I've added text to mention that, in this case, you can't use "for" loops.] I also would like to get your opinion on if the tutorial should really replace the ADA 95 course which is being taught by an instructor and how well would it work? I am quite interested in your paperback tutorial, "ADA 95: The Lovelace tutorial". To the best of your knowledge, when will it be out by? [That depends on many factors, including the quality of the instructor, the kind of the students you have, and the level of knowledge desired. Lovelace teaches you enough about Ada to write basic programs and also shows you how to learn more about the areas it omits. If the students are reasonable self-starters, that may be enough. Having an instructor has a number of advantages, though. An instructor can reinforce key issues, answer questions, and become a mentor (helping you learn how to use various capabilities to solve your problems). There's no conflict here; Lovelace can be an aid the instructor, and a number of instructors are already using Lovelace. For hobbyists, Lovelace by itself is enough. For professional work, Lovelace could be used by itself but I suspect it's best used as one of several methods to help get developers "up to speed". An instructor's reinforcement would probably also help developers understand and apply what they learn. Also, in professional settings, it's definitely best to have an experienced person easily available when starting to use any tool (including Ada). In most college settings, Lovelace is an aid to the instructor; students can learn the basics from Lovelace and then ask the instructor specific questions. In college, the instructor is usually interested in teaching issues other than simply a language itself, so Lovelace can really aid the instructor by reducing his/her workload.] Thank you for your time as this is quite a long letter! I'd like to hear from you regarding my questions and comments. Have a nice day... Roger McGargill Software Engineer Rockwell CACD

From Tue Sep 10 08:12:52 1996

Return-Path: <> From: Prof R Conn <> Message-Id: <> Subject: Portability problem with Lovelace To: Date: Tue, 10 Sep 96 7:56:18 EDT Cc: (Prof R Conn) X-Mailer: ELM [version 2.3 PL11] Content-Length: 987 Status: ORSr Dave, I've noted that a problem has come up with Lovelace re portability, and I was wondering if you could possibly fix it for the next Ada CDROM, which starts production on 15 Oct. It's in the file names. You used dashes as a part of several names. A dash is not a valid char to the ISO9660 format for CDROMs. Walnut Creek automatically translated these to underscores, but that broke the version of Lovelace on the CDROM. I know this is a lot of work, but it would really make the Lovelace distribution better. Lovelace still runs directly from the CDROM on most UNIX platforms, which support ISO9660 with the Rock Ridge extensions (this allows dashes and longer file names). However, MSDOS, Win95, WinNT, etc., don't work. Looking forward to your reply, Rick -- Richard Conn, PAL Manager | Opinions expressed herein are my own and not necessarily those of anyone else. ============================================================================== From: Jerry van Dijk <jerry@NEXTJK.STUYTS.NL> Date: Mon Sep 23, 1:10am To: Multiple recipients of list TEAM-ADA <TEAM-ADA@ACM.ORG> Cc: Subject: Lovelace on a intranet Facts /can/ actually change opinions... A few weeks ago I installed a local version of the Lovelace tutorial on our corporate intranet (and put up EZ2LOAD for downloading). Much to my supprise, this proved to be somewhat of a success. Logs showed that quite a number of our programmers (mostly Windows/C++ types) looked at it. And in new project meetings, Ada is now routinely considered as an implementation language (quite a change from the normal 'Ada is *@%!' attitude!). Some C++ types are looking at GNAT and ObjectAda for the next version for our traffic guidance system (which runs in a CORBA-like enviroment). And a new commercial website is being implemented using GNAT for the CGI 'scripts'. Moral: Ada is its own bestselling argument. And maybe your employer has a intranet too...

From Tue Oct 15 11:28:24 1996

Return-Path: <> Sender: Message-Id: <> Date: Wed, 16 Oct 1996 01:24:44 +1000 From: "Robyn J. Cheyne" <> Organization: James Cook University of North Queensland X-Mailer: Mozilla 2.02 (X11; I; SunOS 5.4 sun4m) Mime-Version: 1.0 To: Subject: I've completed lovelace :) X-Url: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Length: 905 Status: ORS Since you wanted the email message, I thought I should contribute. I did enjoy doing the questions. Good to see a sense of humour in the answer too (I had more smiley faces than X's). I skimmed over ADA a couple of years ago and wasn't aware that it had been updated (i.e., ADA 95). I found the URL for this tutorial using YAHOO! because I was looking for information regarding the use of concurrency in ADA. I'm actually more interested in the hardware design language VHDL which, as you probably know, is based on ADA. I'll stop now. This short note is nolonger short. I hope this has made your day worthwhile ;) Cheerio, Robyn ( -- "Smooth runs the water where the brook is deep, and in his simple show, he harbours treason. The fox barks not when he would steal the lamb." Lines 53-55, Act 3, Scene 1, The First Part of the Contention. William Shakespeare

From Tue Oct 29 01:42:12 1996

Return-Path: <> X-Intended-For: <> Sender: Message-Id: <> Date: Mon, 28 Oct 1996 23:41:40 +0000 From: Gary Swearingen <> Organization: none To: Subject: Lovelace completion I've just paged through Lovelace, skipping a few sections. I knew Ada83 pretty well a while back so used it as a refresher and intro to Ada95. I thought it was well done and went to a good level of detail. Thanks.

From Wed Nov 13 15:37:27 1996

Return-Path: <> Message-Id: <> Date: Wed, 13 Nov 1996 12:38:06 -0800 From: Karl Kail <> Reply-To: X-Mailer: Mozilla 3.0Gold (WinNT; I) Mime-Version: 1.0 To: Subject: Bad Link on "" Content-Type: text/plain; charset=us-ascii Dear David A. Wheeler, Just thought you might like to know... In perusing your Lovelace tutorial today, I attempted to use the link for the Ada95rm for section 7.6 and the link was bad. Overall I like the tutorial itself, but feel a little bit like a hog for keeping an Internet link tied up the whole time while --reading-- a screen. I realize that you are working to publish a paper copy, but my personal preference would be to load it onto my local machine and run it interactively with the Netscape browser without the connect time charges. Hmmmmm. Thanks for the very helpful tutorial, Liese Agee p.s. I've been using Ada83 since 1988 and still would call Ada my language of choice.

From Mon Nov 4 20:49:03 1996

Return-Path: <> Message-Id: <> From: "Bob Bretall" <> To: <> Cc: "Don Matson" <>, "Bob Bretall" <> Subject: Just finished Lovelace Date: Mon, 4 Nov 1996 17:48:05 -0800 X-Msmail-Priority: Normal X-Priority: 3 David, I just finished taking the Lovelace Tutorial and it was great. I loved the quizzes you have in most sections. They are highly effective in reinforcing the concepts introduced in the related section and you came up with a really good set of alternative choices. So many multiple choice quizzes have some stock ridiculous answers, yours don't (except that 10,000 tasks thing in Section 13.1) and the quizzes are uniformly excellent. I just wish you had a quiz in EVERY section. You might want to think about going back in and adding some extra quizzes where there aren't ones now (for example, in Section 6.4, add a quiz that emphasizes the fact that Ada has "real" enumerations, not just named associations to integer constants like C/C++). Anyway, I wanted to say something positive before I started listing some (minor) problems I noticed. Overall, Lovelace is excellent, but there are a few things about it that I thought I'd point out to you. Some background on myself. I have both a BS & MS in Computer Science, and my MS had emphasis in Software Engineering and OO. I just started a new assignment at TRW where we're going to be (ultimately) using Ada 95. It was recommended that I review your Lovelace tutorial to see if it was appropriate to use as "required reading" for new programmers on the project (many of whom have previously programmed in Jovial). I started programming in Ada in 1986 on a project for the Air Force. That went on for 7 years. I've also programmed in C and C++ on other projects at TRW, so I'm familiar with all 3 languages. I haven't used Ada in about 3 years, and I used Lovelace as both a refresher on Ada and as an intro to Ada 95 (although I reviewed some of the early 9x documents many years ago). Problems: There are several things which seem to violate the "Ada 95 Quality and Style: Guidelines for Professional Programmers; Oct. 95 version". It bothers me a bit that new programmers taking the tutorial (many of whom are just learning Ada, of which there are quite a few, judging on your comments page) are having these coding techniques reinforced in their minds by the provided code samples. This is similar to the way that C programmers tend to mimic the style of coding samples from the book they learned C from. We were also wondering if we should buy copies of your book for programmers coming up to speed on our new project, and since I can only (currently) see the electronic version, it is my window into what the printed book will look like, thus the following comments. 1) The use of Mode Indication. The Ada 95 Q&S Guide (Section 5.2.4) recommends that the mode be used for all procedure and entry parameters, not to just use the default mode of "in". I agree with this, and it has been an explicit coding standard on every Ada project I've worked. In fact, you yourself state (in Section 4.2 of your tutorial) "The default mode is `in', but I recommend that you always state the desired mode." You then violate this in code fragments in (it seems as though you rarely, use the solo "in", instead relying on the default "in" in your code): An answer for the Section 6.7 Quiz (s6sfr2.htm) All of the function/procedure declarations in Section 7.2 (s7s2.htm) Procedure View in section 7.4 (s7s4.htm) Set functions in Section 7.6 (s7s6.htm) Section 8.4, Print_Reverse (s8s4.htm) Your Ustring package spec & body ( & .adb) referenced in Section 8.6 Procedure Show_File in Section 9.4 (s9sf.htm) Procedure Open_Or_Create in Section 10.3 (s10sf.htm) HEY! You use the solo "in" in your Generic_Stack package (Section 12.7) On the Entry & Accept for Babbler's Start in Section 13.2 (s13s2.htm) All function declarations in section 16.2 (s16s2.htm) All of the function/procedure declarations in Section 16.6 (s16s6.htm) 2) The use of Named Association. I realize that the Ada 95 Q&S Guide (Section 5.2.2) has an "out" in the Notes part of Section 5.2.2 in the form of the statement "Certainly, simple or familiar not require the extra clarification of named association in the procedure call." But you rarely (if ever) use named association in your code examples. I can see this as appropriate for calls like Put_Line and other very common I/O functions that would (theoretically) be used all the time by programmers and so should be very familiar to them. But you don't even use it on your "pragma" examples in section 16.1, it seems that this would be a good opportunity to show named association being used in code examples. (I did notice you using it in your "Small" program, but I don't know if every person taking the tutorial is going to scrutinize the code of "Small".) Something that bothered me in section 11.3 was the fact that you explicitly say "The 'Size =>' and 'Item =>' are optional; you could omit them if you wanted to." This is almost endorsing the position of NOT using named association, especially when coupled with the fact that it is rarely seen in example code in the tutorial. 3) Using "Use" clauses to allow you to reference procedures/functions/variables/etc. declared in other packages without using the full "dot" notation. This is very "C"-like, where you see a function call or a variable reference and have no idea where it is really declared. What follows is a scavenger hunt through all the #include files in C/C++ and through all the "with"ed files in Ada. The Ada 95 Q&S states (in section 5.7.1): "Ada's ability to enforce information hiding and separation of concerns through it's visibility controlling features is one of the most important advantages of the language. Subverting these features, for example, by too liberal use of the use clause, is wasteful and dangerous." In the same section, under rationale, the Q&S also says: "Use of the use clause may indeed make the code read more like prose text. However, the maintainer may also need to resolve references and identify ambiguous operations." On Ada projects I've worked, we have limited the use of the use clause to allow visibility of overloaded operators ONLY. In Section 2.4 (s2s4.htm) where you first introduce use clauses, you explicitly state "use clause - automatically search Ada.Text_IO" and then when you use Put_Line "Note: No longer has 'Ada.Text_IO' in front". This seems to be an explicit endorsement of the fact that it's easier to code without using the dot notation. As I'm sure you're well aware, the majority of software lifecycle costs are in test/maintenance, not in development. Saving the coder a few keystrokes (when it damages the readability of the code for maintainers) isn't a good thing. ---------------------- Anyway, I guess what I'm saying is that when you write a tutorial like this, you are exposing students to styles of coding which will most likely stay with them. If you don't follow the recommended coding styles, you should at least explicitly point out how and why you're violating them (e.g., for readability in your tutorial examples). This should be followed up by an explicit statement of the applicable Q&S guideline (with examples). Just putting a link to the Q&S guide doesn't seem to be sufficient to me. Questions: Are the code fragments in the paper(/book) version of Lovelace largely the same (e.g., little use of "in" & named association and overuse of "use")? I did notice that you are more liberal in your use of "in" and named association in the "Small" source code I perused. Are there more quizzes in the book? Either of the above would be an incentive to buy the book. Again, I don't want to be completely negative. Overall I think Lovelace is a great tutorial, just a few nips and tucks here and there could address most of the issues I raised. Thanks for a great on-line tutorial. Bob Bretall [I've added the mode indications. I use "Use" clauses simply because the most of my code examples are intentionally short. ]

From Thu Nov 14 11:33:30 1996

Return-Path: <> Message-Id: <> Date: Thu, 14 Nov 1996 22:30:55 -0800 From: JMetze <> Organization: E-Systems X-Mailer: Mozilla 2.01 (Win95; I; 16bit) Mime-Version: 1.0 To: Subject: lovelace X-Url: I would love to find a web page similar to this teaching C++ == know any? Please respond to

From Fri Nov 22 10:31:56 1996

Return-Path: <> Date: Fri, 22 Nov 1996 16:29:47 MET From: FABRICE LA MOUCHE <> To: Message-Id: <> Subject: Lovelace completed Content-Length: 13 Status: ORS Thank you.

From Tue Nov 26 15:56:46 1996

Return-Path: <> Message-Id: <> Date: Tue, 26 Nov 1996 16:55:17 -0400 From: Daniel Wisehart <> X-Mailer: Mozilla 3.0 (WinNT; I) Mime-Version: 1.0 To: Subject: Lovelace I liked it.

From Mon Dec 2 05:06:18 1996

Return-Path: <> From: Message-Id: <> To: Subject: Great minds think alike To: Date: Mon, 2 Dec 96 12:04:23 RSA We also do interactive courses and I'm amused to find such as simila format between your ada course and our Junior Java course at Question? Why don't you compile the ada code using the intermetics compiler which generates java byte codes and install the students soluion on the web for them? -- Laurie Butgereit Io Systems Tel: +27 11 886-1268 Fax: +27 11 886-5494 [That's in the works, but WebAda is actually maintained by someone else. When that's added to WebAda by Doug Smith it'll happen automatically.]

From Tue Dec 17 20:18:42 1996

Return-Path: <> Date: Wed, 18 Dec 1996 11:17:40 +1000 (EST) From: "Dan Johnston D.B." <> Message-Id: <> To: Subject: Re: Please Update Your Lovelace Copy! Newsgroups: comp.lang.ada References: <5978f1$> In comp.lang.ada you write: >*LOTS* of people are copying Lovelace (my Ada tutorial) >onto their own systems and making them available to the web. >While there are some advantages to that, there >is a terrible disadvantage to it: updates aren't happening. We have been using Lovelace (in the sence of making it availiable to our students) for a year or so now. However this is likely to become a much greater use in the near future as our main stream teaching courses start converting to Ada from February next year. Thank you for your efforts in producing this very useful teaching resource. Our major reason for using a local copy is cost. It is quite prohibitive to use a resource such as this over an international link. (Although in fact it works very well over that link - the performance is such that students would be likely to use it extensively at very high cost.) >PLEASE, either REMOVE your old copies of Lovelace or UPDATE them. >If you plan to update them, put yourself on the automatic >notification list for Lovelace changes and update your copy within 4 weeks >after a new version is posted. If you can't commit to that, create >a hypertext link from your site to a master copy that WILL be maintained >and remove your old version. I was not aware of the automatic notification list. This sounds very useful in keeping up to date. I realise that you do request local installers to notify you when installing it and regret my impoliteness in not doing so. My best excuse is that I don't like to disturb obviously very productive people when there is no real reason. Perhaps you might include some comment about the automatic notification in the Lovelace tutorial. If its already there, my apologies, but I haven't seen it - perhaps on the top of the page about version information would be an appropriate place. [ There is a note at the end of the tutorial (see "fini.htm"), but not in the download section. I'll add links to automatic update information that in the next version from the "download", main menu, and version info. Of course, an even better approach is to buy my book; see the "orderbk.htm" file. ] >The current version of Lovelace is always accessible at: > >The current version of Lovelace is 5.6. "ez2load" and the PAL >generally try to keep updated versions as well. We're currently at 5.5 so we're not too far behind, but I will update before our students arrive at the end of February. One comment here. We're always reluctant to update software during semester, because of the potential for disasters if something breaks. Of course this is much less serious for a tutorial than for a compiler and I am prepared to commit to your 4 week update period. [ Okay. It's not like I'm going to file suit or anything. I just don't want people to send me bugs for things that have been fixed. How about keeping the old copy around, but by default pointing people to the latest version? If something breaks you can go back. As you noted, this is a lot less serious than a compiler. ] One innovation which I really like in your more recent versions is the WebAda facility. However, this also has the potential to blow our budget with communication costs. I am attempting to install WebAda locally in conjunction with Lovelace but having some difficulty. I got the WebAda "compile" program got it compiled locally. However, I have not been able to get the program lovelace.adb which I believe is also necessary to link Lovelace to WebAda. (I have been in contact with Doug Smith about this, and he has told me he will update the WebAda distribution to include it, but as far as I know this has not yet occurred. (but I haven't checked for a couple of days either.)) My other problem was that I was trying to call WebAda directly from the Lovelace htm files, but it seems to treat it as text rather than execute it. Any hints on this would be appreciated. (We are using Netscape -I have both version 2.02 and 3.01 available on Sun Solaris 2.5 (we have a network of Sun sparcs)) I am trying to get it working on my machine before asking our systems people to install it but it seems I may need to install a server on my machine to do this. For what its worth - one minor negative. I don't like those moving arrows on the Lovelace home page - I find them distracting ( I guess I also have fears about what their cost in resources is - which may be completely unjustified, as I don't know anything about the technology used here.) [ The arrows are supposed to be distracting, in the sense that they'll point you to the most important point. The resource cost is very small; I also keep track of resource costs. The arrow is a single GIF file, 2Kbytes long (the two arrows are the same image, so it's only loaded once). By comparison, the main Lovelace page is 6Kbytes, so the image is 1/3 the size of the text. Once the 2Kbyte image is loaded into the local browser cache, it isn't loaded again until it leaves the cache (usually after quite some time), and no network resources are used to make the arrow move (other than the one-time file load cost). ] Thanks again for your very useful tutorial, dan. Dan Johnston, Dept of Computer Science, University of Queensland, Australia.

From Mon Dec 30 03:12:15 1996

Return-Path: <> Message-Id: <> Date: Mon, 30 Dec 1996 03:10:42 -0500 From: Austin Zellner <> X-Mailer: Mozilla 3.01 (Win95; I) To: Subject: Nice job man! Hi there! My name is Austin Zellner, and I goto Kent State University in Ohio. I'm majoring in information systems (mostly VB with strong emphasis on emerging tech) but was amazed at how easily I could pick up Ada from your tutotial. I love learning new languages, and yours has been the best site I've found on the Net for explaining the basics. Thanks! P.S. Do you know of any resources for learning C and/or C++? Austin Zellner

From Tue Jan 28 06:08:01 1997

Return-Path: <> From: (Alexander_Bialowas) Date: 27 Jan 97 12:49:18 +0200 Subject: completed this tutorial (Lovelace) Message-Id: <> Organization: Computer Communications Club To: HI! I must thank you here from Austria in Europe, because here are not soo much Ada programmers. And in this way, it is very good to have such an very good tutorial to work. I have here version 5.0, and I get them from an CD-ROM of Ada (February 1996) of an Walnut Creek CDROM. I'm very happy, that there are some people on the world like you to give us such an informative Tutorial, so I hope we see us in future in cyberspace or bether in programming Ada packages:-) mfg Alex (MASTER_PC) Linux-Point Arrakis --- FIDOGATE 3.9.5 --- | InterNet: | FidoNet: Alexander_Bialowas 2:316/777.55 | Member of the Computer Communications Club Family. | For info's about the club send a mail to | For info's about the gateway send a mail to

From Fri Jan 31 11:52:44 1997

Return-Path: <> Message-Id: <> Date: Fri, 31 Jan 1997 17:42:17 -0800 From: Oscar Alfonso Garcia Vazquez <> Reply-To: X-Mailer: Mozilla 3.01 (Win16; I) Mime-Version: 1.0 To: Subject: ADA tutorial Hi. I'm a computers studient from spain and i've found your ADA tutorial very interesting, is one of the best tutorials i've found on the net. Now, i'm developing small aplications that i have to do for the university in ADA instead C++ (we can't use Java), such a finite determinist automaton minimizer. Good work, keep on it!

From Thu Feb 13 01:40:23 1997

Return-Path: <> Message-Id: <> Date: Wed, 12 Feb 1997 22:37:57 -0800 From: Linda Wolfe <> Reply-To: X-Mailer: Mozilla 3.0Gold (Win95; U) Mime-Version: 1.0 To: Subject: Ada 95 compiler Hello, I was very excited to see your page on Ada 95 and CGI. My husband and I are both software engineers and have been using Ada for about 20 years between the two of us. We were just saying the other day how we would like to be using Ada instead of C for writing CGI scripts, so you really made our day. My question is, do you know where I can get an Ada 95 compiler for the PC? Thanks very much. Sincerely, Linda Wolfe [See "ez2load"]

From Tue Feb 18 05:05:54 1997

Return-Path: <> Message-Id: <> To: From: (Inayat Ali Shah) Date: 18 Feb 97 14:27:50 Subject: Love Lace Tutorial Dear David, I am going through your tutorial, And It is going quite well. But since I have C / C++ experience I am not facing major problems. I have reached Chapter 13 (Tasking Issues) and am facing slight problems with implementing Multi-tasking. Since I am using the DOS EZ2LOAD ADA95, I do expect some problems. I am running a DOS windows under WIN 95. I can compile the example and it runs however the tasks are executed sequentially though. I expected they would, could you let me know how to set up my DOS/WIN95 environment for multitasking. I am also using the "Local" version of the tutorial that I downloaded from the adahome website. I have not faced any problems with it since I also have a copy of the LRM. Could you guide me to a better language reference (easier to refer and perhaps with more examples than it) regards Inayat Ali Shah

From Mon Feb 24 16:07:53 1997

Return-Path: <> Sender: Message-Id: <> Date: Mon, 24 Feb 1997 16:05:55 -0500 From: Joyce Lock <> Organization: Lockheed Martin X-Mailer: Mozilla 2.02 (X11; I; SunOS 5.5 sun4c) Mime-Version: 1.0 To: Subject: Finished Lovelace Tutorial X-Url: I finished the Lovelace Tutorial and found it very worthwhile because I relearned my rusty Ada-83 skills and learned the new Ada95 features. The short lesson format encouraged me to continue on through the tutorial because I felt smart - I caught on to the ideas and generally selected the correct quiz answer. Joyce Lock Lockheed Martin a soon to be Ada95 user

From Wed Feb 26 11:44:39 1997

Return-Path: <> Message-Id: <> From: "Kristian Holdich" <> To: <> Subject: Program "Small" Date: Wed, 26 Feb 1997 16:41:33 -0000 David Wheeler, I'm just dropping you a note to say that i'm using your program "Small" as the basis of a MUD / MOO i'm coding for windows in Delphi (Pascal) - because Pascal and Ada (and Modula 2) are so closely related, it's very easy to convert, and the basics (your program) are clean, elegent and expandable. When (if?) it ever gets finished, i'll be sure to send you a copy of the program / source and will make sure that you get a credit in any documentation / online about commands. Kristian Holdich

From Tue Mar 4 07:22:52 1997

Return-Path: <> From: "Paul Murphy" <> Organization: University of Portsmouth To: Date: Tue, 4 Mar 1997 12:19:34 +0000 Subject: Lovelace tutorial Message-Id: <> Dave, I am a student at Portsmouth university in England. I am studying Bsc Computer Science and am being taught ada as my first programming language. I just wanted to complement you on this tutorial. Unfortunatly our lecturer here seems to think we already know about ada and just sets us task's with out explaining any of the key elements of the language. So we are left to read about them in books. Most of the books I have read have semi-confused me and I have not been very succesful. However after going through your Lovelace tutorial I feel much more confident about the language. Well done and Thank you very much Paul Murphy ----------------------------------------

From Sat Mar 8 16:13:00 1997

Return-Path: <> Date: Sat, 8 Mar 1997 16:11:23 -0500 From: Lucien Hermans <> Subject: Lovelace To: "David A. Wheeler" <> Message-Id: <> Dear David A. Wheeler, I've completed Lovelace. I confirm I've learned a good deal and that I've enjoyed the process. By the way, the reason for me to follow your tutorial was that at the moment I am without job. A "potential employer" involved in space telecom asked me about a supposed knowledge in Ada that I did not have. You give me The Answer to my problem... Thank you. I feel ready for the next conversation with this "potential employer". You ask for comment and suggestions. Just one thing : I have had "html" problems with the following chapters : 1-3, 6-3, 7-f, 8-3, 13-3, 16-f ; and section 8-f contains a "Put" instead of "put" in the third paragraph, making a sentence not clear. Other comments can follow later, when I will have some professional activities (at Project Leader level) related with Ada... Lucien Hermans, Brussels, Belgium. E-Mail : more details on me at

From Fri May 3 03:08:57 1996

Return-Path: <> Message-Id: <> Date: Fri, 03 May 1996 17:00:24 -0700 From: Christopher Huth <> X-Mailer: Mozilla 2.0 (Win16; I) To: Cc: Subject: Lovelace tutorial X-Url: David, lovelace is great!! I currently have version 5.1, but would like to obtain version 5.2, I have tried numerous times(around 20) to download the latest version zip file from the ftp and http servers, however each time, after recieving about 50K the server leaves me sitting there. If at all possible would you be able to send the tutorial as an attachment to an email. I would greatly appreciate this as I am currently studying Ada 95 at University. With Thanks Chris Huth From: (Matthew Heaney) Newsgroups: comp.lang.ada Subject: Re: What are the best tutorials around? Date: Thu, 27 Mar 1997 23:27:43 -0800 Organization: Estormza Software Lines: 25 Message-ID: <> References: <01bc3916$3cfb57e0$c37d8ea1@AaBbCcDd> NNTP-Posting-Host: [Posted on comp.lang.ada] In article <01bc3916$3cfb57e0$c37d8ea1@AaBbCcDd>, "Centaury" <> wrote: >Can anybody tell me what are the best ADA tutorials around which are >available for download?? Thanx! There are several tutorials listed at the Ada home page: <> Lovelace is a popular one; there are a few others. <> Matt P.S. By the way, Ada is a woman, not an acronym. When you capitalize her name as you have done, then some may think you want information about the American Dental Association! -------------------------------------------------------------------- Matthew Heaney Software Development Consultant <> (818) 985-1271

From Sat Apr 5 12:28:01 1997

Return-Path: <> Date: Sat, 5 Apr 1997 12:26:38 EST From: Mark Kanko AFIT/ENG <> Subject: Small To: David Wheeler <> Message-Id: <> Hi, David. You probably don't recall (it's been a year since we last corresponded), but we're using your Small program in one of our courses here at AFIT. Last year I used GNAT and everything worked fine. This year we decided to move to Rational's Apex environment (which uses the Verdix compiler). This compiler doesn't like rooms.adb and complains in the following way: 12:08:50 >>> SOURCE.all.DESTINATIONS (DIR) := DESTINATION; 12:08:50 *** DESTINATION doesn't have the same type as SOURCE.all.DESTINATIONS (DIR) [RM_95 5.2(4)] 12:08:50 >>> ROOM_ACCESS (DESTINATION).all.DESTINATIONS (REVERSE_DIRECTION (DIR)) := SOURCE; 12:08:50 *** SOURCE doesn't have the same type as ROOM_ACCESS (DESTINATION).all.DESTINATIONS (REVERSE_DIRECTION (DIR)) [RM_95 5.2(4)] I also tried compiling under the Object Ada (Alsys) compiler that comes with the Felman/Koffman book and it also tags the type mismatch. We're trying to figure out if this is a red herring and would appreciate any insight you might have. Have you attempted to compile Small under any compilers other than GNAT? Have there been some changes to small in this area since last year? (I did check the web site and the code appears to be the same.) Thanks. Mark ================================================================= Maj Mark A. Kanko | Air Force Institute of Technology (AFIT) Assistant Professor | Graduate School of Engineering | Dept of Elect. and Computer Engineering (937) 255-3636, x4612 | Wright-Patterson AFB, OH [Yes, that was fixed about a year ago, soon after you downloaded the files. Just download the update and you'll be all set!]

Please note that none of these comments are an official statement by a company or organization; these are simply voluntary comments by generally satisfied users. You can send your own comments to me at Please tell me if you do not want me to keep such comments private - I normally consider email private, but if the message is only a comment about Lovelace, I presume it's okay to make it public.

If you like Lovelace, please recommend it to others. In particular, please nominate Lovelace for any awards you think appropriate, and recommend Lovelace to any indexes where it's omitted. Lovelace's URL (address) is

Information on how you can help expand Lovelace is available.

HOME     You can return to the Lovelace home page.

David A. Wheeler (