Newsgroups: comp.lang.scheme
Path: cantaloupe.srv.cs.cmu.edu!bb3.andrew.cmu.edu!newsfeed.pitt.edu!gatech!newsfeed.internetmci.com!news.exodus.net!news.wni.com!noc.netcom.net!news3.noc.netcom.net!netcom.com!vfr750
From: vfr750@netcom.com (Will Hartung)
Subject: Re: lisp resistance: lack of visual cues?
Message-ID: <vfr750DLELII.Bqy@netcom.com>
Organization: NETCOM On-line Communication Services (408 261-4700 guest)
References: <4bjskn$o6b@jive.cs.utexas.edu> <DKo6wD.Lox.0.macbeth@cogsci.ed.ac.uk> 	<4cjsqm$ei@jive.cs.utexas.edu> <DKvr14.2u6.0.macbeth@cogsci.ed.ac.uk> 	<4csgl2$5se@csnews.cs.colorado.edu> 	<u1wx6ufndv.fsf@heimdal.ml.csiro.au> <GJR.96Jan18104007@hplgr2.hpl.hp.com>
Date: Fri, 19 Jan 1996 01:01:30 GMT
Lines: 72
Sender: vfr750@netcom3.netcom.com

gjr@hplgr2.hpl.hp.com (Guillermo (Bill) J. Rozas) writes:

>In article <u1wx6ufndv.fsf@heimdal.ml.csiro.au> gray@heimdal.ml.csiro.au (Randall Gray) writes:

>|   On reflection, I think that this may be due to the lack of cues: when
>|   one looks at an Algol-like syntax one sees a structure inherent in the
>|   "words" that make it up.  Looking at a <lisp family> program can be
>|   like looking at line noise -- lots of repeated characters interspersed
>|   with what may or may not be random characters.

>I have yet to see an "obfuscated scheme" contest.

As a corallary, maybe "obfuscated scheme" is "no contest". :-)

>I think that readability has much more to do with judicious
>indentation and appropriate identifiers than with the actual syntactic
>tokens used to delimit constructs.

>Unfortunately people follow terrible indentation rules and use cryptic
>names in every programming language.  Perhaps when you do that a
>little additional syntactic nonsense in the language increases
>readability marginally, but isn't it better to fix the real problem?

True. Memories of old TRS-80 programs that used to be published in
magazines comes to mind, yet most would say that BASIC is a
semi-readable language.

The biggest problem I had initially whenever I looked at a LISP like
language was that it didn't have anything that looked familiar to a
Pascal/C programmer. Everything was backward and everything was named
wrong.

Lambda? -- Oh god, Greek! Cons? Cadr? C[ad]*r? Cond? What the heck?

Those items always put me off because they had roots completely
different from Algol, or FORTRAN. Heck, even FORTH is more readable I
think to the generic B/P/C programmer. I found the paren's to be just
noise.

I've been playing with Scheme/LISP in little bits for the past couple
of months, mostly working through "Simply Scheme" (fine book). But
just recently I started playing a bit more on my own, and I've found
that with just a little bit of knowledge, LISP become very readable,
very quickly. It's also easier to type in because 25% of the keyboard
just became optional. Going back from Scheme to C shows how much those
extra characters just get in the way.

Actually, my biggest little block right now is seeing the new
characters in the bits of code posted around here and trying to figure
out if they're just used for Pretty LISP guidelines (like *global*),
or if they actually mean something (like ,xxx -- I don't really know
what this does yet).

I've just recentyly picked up "Scheme and the Art of Programming" (I
think), and find it a better crossover book for someone like me who
has lots of B/P/C background but zero functional programming
background. "Simply Scheme" focuses almost completely on functional
programming, and whether this is good/bad technique isn't so much the
point as there isn't much in common with your typical B/C/P style.

I think a lot of people when they try to change languages end up
writing old code in the new language. You can write a Pascal program
in C without too much effort. You can write BASIC in C, even with a
bunch of GOTO's. That gives experience in the new language, without
starting from scratch.

Sure, it's a crutch, but eventually you lose the crutch and move in whole
hog. For now I'm still just getting my feet wet.
-- 
Will Hartung - Hermosa Beach, Lower Left Coast.         vfr750@netcom.com
1990 VFR750 - VFR=Very Red    "Ho, HaHa, Dodge, Parry, Spin, HA! THRUST!"
1993 Explorer - Cage? Hell, it's a prison.                    -D. Duck
