Subject: Re: How is Lisp "better"?
From: Erik Naggum <>
Date: 1998/08/17
Newsgroups: comp.lang.lisp.x,comp.lang.lisp,comp.lang.scheme
Message-ID: <>

* Jacques Duthen <>
| While the distinction syntax/semantics seem (at least for me) to be quite
| clear for a C program, I agree that it's not so obvious for lisp
| programs.

  it might help to understand where the line is drawn to remember that Lisp
  source code is lists in memory, not character strings in files, such as C
  code is.  the processing and interpretation of character strings into
  in-memory representation of the various types of objects in Lisp is
  performed by the READ function.  since this function has completed it
  task before any of the (other?) language-analysis functions get to work
  on the code, I'd say the syntactic properties of the character string
  representation (which is normally what syntax is understood to be) are
  taken care of by READ.

  in non-Lisp languages, READ rarely exists, even in the compiler.  C, for
  instance, has several _processes_ that go into the syntactical parsing,
  like preprocessing, and then there's the unenviable `typedef' which
  affects the table of keywords (another "syntax" concept Lisp does not
  have to deal with), and it is fairly hard to represent C code in memory
  at any stage of this process in such a way that it can be written out and
  still look like it did to begin with.  I'd say that the line is very
  fuzzy in C, whereas at least one line can be drawn very clearly in Lisp.

-- is about my spam protection scheme and how
  to guarantee that you reach me.  in brief: if you reply to a news article
  of mine, be sure to include an In-Reply-To or References header with the
  message-ID of that message in it.  otherwise, you need to read that page.