[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: sweet-expressions are not homoiconic

This page is part of the web mail archives of SRFI 110 from before July 7th, 2015. The new archives for SRFI 110 contain all messages, not just those from before July 7th, 2015.

Hash: SHA1

        John Cowan writes:

 > If newline as a statement terminator counts as syntactically significant
 > whitespace, then there are a lot bigger guns than Icon that have it,
 > starting with Fortran, Cobol, and Basic, and going on to every command
 > language ever created.

        I'd put them in a slightly different class.  They were created in
the era of punched cards (FORTRAN, COBOL) or line editors (BASIC) and so
treat the line as a natural unit.  Through much of that era, there was no
such thing as a newline character; I can recall writing FORTRAN programs in
which each output line began with a format signal, directing the printer to
stay on the same line, advance one line, advance two lines, or skip to the
top of the next page.

 > To bracket such languages with identation
 > sensitive ones is to trivialize the concept.

        I wouldn't have mentioned it at all if Wheeler hadn't used Icon as
an example in support of his argument.

 > If you're worried about it, make sure all continued lines end in _,
 > that's all.

        Sigh.  Yes, of course -- a marker character.  And in FORTRAN you
can always put a C or an asterisk in column 6 of the next line.  These are
evidences of _failure to achieve homoiconicity_.  They are design kludges,
used to paper over the incompatibility between whitespace used for layout
and whitespace used to signal syntactic structure.

Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Processed by Mailcrypt 3.5.9 <http://mailcrypt.sourceforge.net/>