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 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: 1164ba,626a0a064b320310 X-Google-Attributes: gid1164ba,public X-Google-Thread: 103376,ea8ea502d35ca2ce X-Google-Attributes: gid103376,public X-Google-Thread: 103d24,626a0a064b320310 X-Google-Attributes: gid103d24,public X-Google-Thread: 114809,626a0a064b320310 X-Google-Attributes: gid114809,public X-Google-Thread: 10259a,626a0a064b320310 X-Google-Attributes: gid10259a,public X-Google-ArrivalTime: 2001-05-10 01:45:34 PST Path: newsfeed.google.com!newsfeed.stanford.edu!news.tele.dk!130.133.1.3!fu-berlin.de!uni-berlin.de!enterprice.st-peter.stw.uni-erlangen.DE!not-for-mail From: Jochen Schmidt Newsgroups: comp.lang.ada,comp.lang.lisp,comp.lang.smalltalk,comp.lang.basic,comp.lang.functional,comp.lang.scheme,comp.lang.perl Subject: Re: Beginner's Language? Followup-To: comp.lang.ada Date: Thu, 10 May 2001 10:51:14 +0200 Organization: Dataheaven Message-ID: <9ddkfc$hsgmv$1@ID-22205.news.dfncis.de> References: <9cukad$nn68@news-dxb> <9dbi83$sji$1@nh.pace.co.uk> <87heyu7cqd.fsf@frown.here> <9dc20p$hh15e$1@ID-37382.news.dfncis.de> <9ddfv2$gl3$1@merrimack.Dartmouth.EDU> NNTP-Posting-Host: enterprice.st-peter.stw.uni-erlangen.de (131.188.24.131) Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7Bit X-Trace: fu-berlin.de 989484333 18760415 131.188.24.131 (16 [22205]) User-Agent: KNode/0.4 Xref: newsfeed.google.com comp.lang.ada:7443 comp.lang.lisp:9909 comp.lang.smalltalk:9675 comp.lang.functional:5612 comp.lang.scheme:3764 comp.lang.perl:2762 Date: 2001-05-10T10:51:14+02:00 List-Id: FM wrote: > Andreas Krennmair wrote: > >>The problem is that Lisp is in no way similar to a natural language. And >>natural language can be understood easier than some functional, >>theoretical stuff with a unique concept like Lisp. > > You've got at least three assumptions there, none of which > I agree with. I don't see why a programming language > should be similar to a natural language (the only sense in > which they are both languages is that they have some form > of grammar) and it takes quite a lot of arrogance to say > that a programming language is harder to understand than a > natural language or that the imperative paradigm is closer > to the natural way of describing things for humans than > the functional paradigm. > > Also, Lisp is hardly some functional thereotical stuff > with a unique concept. > > >>Don't get me wrong, Lisp is a great >>language, and I personally find it quite exciting as four year Pascal and >>two year C/C++ programmer, but it's hardly usable for teaching, because it >>is so unique (well, you _could_ to functional programming in C, but it >>would be considered bad style). > > What is *so* unique? Lisp is a label applied to a broad > family of languages, not a single language. That alone > takes away the uniqueness. Furthermore, the functional > paradigm is hardly confined to the Lisp family. > > >>I currently go to an Austrian school where mostly programming/CS/software >>engineering-related things are taught (it's for 5 years, and you start >>at an age of 14), > > Ouch. This is probably a bad idea... > > >>> > Now look at it. Could a neophite with literally *zero* >>> > experience in programming computers read it and stand a chance of >>> > understanding what it does or how it does it? >>> >>> 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; > > Except that this is completely wrong. Your perl statements > are imperative, not descriptive or even declarative. At > least most languages in the Lisp family will let you write > something close to: > > (with (she (my girlfriend)) > (be (of name she) "Suzy") > (be (of age she) 17)) (setf (gethash "name" *girlfriend*) "Suzy" (gethash "age" *girlfirend*) 17) Is more like the equivalent to the Perl code. but I would do: (defclass girlfriend () ((name :accessor girlfriend-name :initarg :name) (age :accessor girlfirend-age :initarg :age))) and then (make-instance 'girlfriend :name "Suzy" :age 17) Which is IMHO much more natural than the Perlcode. > That's aside from the fact that you chose an arbitrary > sentence that isn't at all representative of natural > languages. For a better exercise, take a few paragraphs > from a book or better yet, record a phone conversation or > radio broadcasts and come up with a formal notation that > could be used to capture their meaning. > > > >>Of course, this is not the best example, since Perl has a syntax that is >>not the optimum for beginners. > > Perl's syntax is the closest thing I've seen to a natural > syntax in a programming language. ?? Is that meant as a joke or what???? Regards, Jochen