This is the mail archive of the
guile@cygnus.com
mailing list for the Guile project.
Re: Reader option to permit brackets as parentheses
- To: Ingo Hohmann <ingo@2b1.de>
- Subject: Re: Reader option to permit brackets as parentheses
- From: Craig Brozefsky <craig@red-bean.com>
- Date: 01 Jul 1999 23:45:30 -0700
- Cc: guile@sourceware.cygnus.com
- References: <qrrr9mu4tw7.fsf@elwha.cs.washington.edu> <3779AC8E.A5A1BA79@ozemail.com.au> <qrraeth3c92.fsf@elwha.cs.washington.edu> <377AC053.F3E9A1BB@ozemail.com.au> <qrrzp1h2fvx.fsf@elwha.cs.washington.edu> <199907010401.VAA21885@arathorn> <377B0CB8.A473C0D1@ozemail.com.au> <19990701203352.A1681@fuchur.2b1.de>
Ingo Hohmann <ingo@2b1.de> writes:
> Please look at these last two sentences. If indentation is needed for
> a human to read, why not use it as syntactical way to structure code?
> Then you are sure, that the compiler/interpreter understands it the
> same way you do.
There is no need for the compiler to understand it using the same
syntactical clues that I use.
If you were to move to a whitespace structured language, imagine the
difficulties of writing real macros! With the parenthesis based
s-expression, where a program/function is a list, you can write macros
programmatically, by creating lists.
If you have to create something like whitespace delimited blocks, then
your program for creating new forms will have to be much more complex,
and are not as easy to produce. Even if you just mapped tabs onto
parens, you would have to always be aware of your depth.
People who come from language backgrounds where they don't have real
macros, like we have in lisp dialects such as scheme and Common Lisp,
do not appreciate the power of a uniform systax in which your
programs/functions are simply lists. It allows entirely new types of
problem solving, as well as making other types much easier.
--
Craig Brozefsky <craig@red-bean.com>
Free Scheme/Lisp Software http://www.red-bean.com/~craig
I say woe unto those who are wise in their own eyes, and yet
imprudent in 'dem outside -Sizzla