From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00, T_FILL_THIS_FORM_SHORT autolearn=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 107f24,626a0a064b320310 X-Google-Attributes: gid107f24,public X-Google-Thread: f4fd2,626a0a064b320310 X-Google-Attributes: gidf4fd2,public X-Google-Thread: 103376,ea8ea502d35ca2ce X-Google-Attributes: gid103376,public X-Google-Thread: 10259a,626a0a064b320310 X-Google-Attributes: gid10259a,public X-Google-Thread: 103d24,626a0a064b320310 X-Google-Attributes: gid103d24,public X-Google-Thread: 1164ba,626a0a064b320310 X-Google-Attributes: gid1164ba,public X-Google-Thread: 114809,626a0a064b320310 X-Google-Attributes: gid114809,public X-Google-ArrivalTime: 2001-05-11 09:00:08 PST Subject: Re: Beginner's Language? References: <9cukad$nn68@news-dxb> <9d6b6e$1bt$1@nh.pace.co.uk> <87snihxiwc.fsf@frown.here> <9dbi83$sji$1@nh.pace.co.uk> <87heyu7cqd.fsf@frown.here> <9dc20p$hh15e$1@ID-37382.news.dfncis.de> X-Trace: news.t-online.com 989482138 02 24211 OGQ6SCMVSz-iln 010510 08:08:58 From: Friedrich Dominicus Organization: Q Software Solutions GmbH X-Sender: 320004655587-0001@t-dialin.net Content-Type: text/plain; charset=us-ascii User-Agent: Gnus/5.0808 (Gnus v5.8.8) XEmacs/21.1 (Capitol Reef) Mime-Version: 1.0 Path: archiver1.sj.google.com!newsfeed.google.com!sn-xit-03!supernews.com!freenix!fr.clara.net!heighliner.fr.clara.net!bignews.mediaways.net!news1.dtag.de!westfalen.de!goggle.westfalen.de!NNTP-from-news.t-online.de!news.t-online.com!newsmm00.sul.t-online.com!t-online.de!news.t-online.com!not-for-mail Newsgroups: comp.lang.ada,comp.lang.lisp,comp.lang.smalltalk,comp.lang.basic,comp.lang.functional,comp.lang.scheme,comp.lang.perl Date: 10 May 2001 10:11:45 +0200 X-Complaints-To: abuse@t-online.com Message-ID: <87u22t39oe.fsf@frown.here> Xref: archiver1.sj.google.com comp.lang.ada:7399 comp.lang.lisp:9860 comp.lang.smalltalk:9573 comp.lang.functional:5552 comp.lang.scheme:3723 comp.lang.perl:2654 Date: 2001-05-10T10:11:45+02:00 List-Id: a.krennmair@aon.at (Andreas Krennmair) writes: > > yes, yes > for my comment, see above. Lisp has hardly anything in common with natural > languages. Or could you express "My girlfriend's name is Suzy and her age > is 17" as readable as this in Lisp: > $girlfriend{'name'} = "Suzy"; > $girlfriend{'age'} = 17; Now there are different ways to do it. Some were pointed out in another mail, but you could expose the Data-Structure behind the Hash Table in Lisp. You may say who cares, but learning programming is to some extend about learning data structures too. so there are different ways to make a girl-friend a) as structure (defstruct girl-friend name age) (defvar *my-girl-friend* (make-girl-friend :name "Ann" :age 30)) b) as property list left out because other have done it c) as object (subject;-) (defclass girl-friend () ((name :initarg :name :accessor name) (age :initarg :age :accessor age))) (setf my-girl (make-instance 'girl-friend :name "Foo" :age 20)) Now you have just one option in Pascal you have to write type Girl_friend = record name : STRING [30]; age : INTEGER end my-girl : (POINTER ?) Girl_friend; my_girl.name := "Ann"; my_girl.age := 30; What is if you have a longer name? What is if you declare my_girl to be a Pointer to Girl_friend? Why should that be easier to understand? I had to learn programming with Modula-2 and it was the hell for me. I doubt that it could have been worse while learning Lisp. > No. Only after understanding the fundamental concepts of Lisp. So what? I have to understand the fundamental concepts of any programming langauge why is Pascal different here. > > > >Is it intuitively obvious to > > > even the most casual observer how to make a similar program? > > yes > No. See answer before. :) Again why is a record struct in Pascal easier to understand than in Lisp. What about the Pointers? What about memory handling etc? > > he/she started from. If he starts with Lisp; C, Java looks messy. If > It _does_ matter. Beginners can easily get frustrated because of the > sometimes confusing syntax. BTW, I wouldn't recommend starting with Java > or C/C++, either. I'd recommend and teach (if I were a teacher :) some > Wirth language, because they're designed especially for teaching basics > of programming. For a special kind of learning inflexible languages. IMHO the whole books and langauges have one big advantage. The are there for Top-down devlopment. No space for errors, no space for piecemeal grow. If you forget a ; you get a friendly message that you're an idiot (not really) you have to go back to you editor fix that bug and compile it again. You can not simply test out a function by itself in no time. You have to stop recompile and start again. All this is so tedious and frustrating that I can't see any reason why that should be a good thing. Regards Friedrich