Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Posting-Version: version B 2.10.2 9/17/84; site bcsaic.UUCP
Path: utzoo!watmath!clyde!bonnie!akgua!mcnc!unc!ulysses!mhuxr!mhuxt!houxm!mtuxo!mtunh!mtung!mtunf!ariel!vax135!cornell!uw-beaver!ssc-vax!bcsaic!shebs
From: shebs@bcsaic.UUCP (stan shebs)
Newsgroups: net.ai
Subject: Re: AIList Digest   V3 #93 (Interlisp comments)
Message-ID: <192@bcsaic.UUCP>
Date: Mon, 15-Jul-85 20:12:55 EDT
Article-I.D.: bcsaic.192
Posted: Mon Jul 15 20:12:55 1985
Date-Received: Thu, 18-Jul-85 04:06:48 EDT
References: <9054@ucbvax.ARPA>
Reply-To: shebs@bcsaic.UUCP (stan shebs)
Organization: Boeing Computer Services AI Center, Seattle
Lines: 24
Summary: 

>From: Steve Crocker 
>Subject: Interlisp comments are first class citizens
>
>As has been noted, comments in Interlisp are simply functions that don't
>have any useful value.  The "*" is used as the function symbol, and that
>works fine, although any other symbol such as ";" or "comment" could have
>been used as well.  Once you get the idea that comments are simply "useless"
>functions, I find it hard to understand why there's much trouble placing
>them correctly.

I believe that one of the original complaints was that "comments as functions"
doesn't work well in a purely functional language.  Interlisp has never
pretended to be particularly functional (pun unintentional), so there's
lots of places to put comment "functions" - namely, any place where a
side-effecting function call would go.  If your programs have progns all
over the place, it's easy; if (like myself) you try to make things more
functional, the choices dwindle rapidly.

My best solution to this problem involves treating comments as s-expressions
and then having another level of preprocessing built into the interpreter
and compiler that flushes comments, yielding a valid program.  Not elegant,
but it would work in a purely functional language.

							stan shebs