Path: utzoo!censor!geac!jtsv16!uunet!husc6!bbn!bbn.com!aboulang From: aboulang@bbn.com (Albert Boulanger) Newsgroups: comp.lang.lisp Subject: Re: Code as data (Syntax, macros, run-time compilation) Message-ID: <40913@bbn.COM> Date: 5 Jun 89 14:15:13 GMT References: <31670@sri-unix.SRI.COM> <469@skye.ed.ac.uk> <1028@syma.sussex.ac.uk> <487@skye.ed.ac.uk> <11917@well.UUCP> <9636@polya.Stanford.EDU> <1044@syma.sussex.ac.uk> <378@odi.ODI.COM> Reply-To: aboulanger@bbn.com Lines: 20 In-reply-to: dlw@odi.com's message of 5 Jun 89 04:26:37 GMT In article <378@odi.ODI.COM> Dan Weinreb writes: One of the subsequent attempts at MIT was defined and implemented successfully. It was called CGOL, written by Vaughn Pratt, I think sometime around 1976. There is an MIT AI Lab memo that describes it, and the source code might very well be available from the AI Lab, for all I know. CGOL apparently never caught on with any user community. We still use this at BBN. In fact the infix reader for Lisp on the Symbolics uses a reimplementation of CGOL. (This can be extended somewhat.) We use the Symbolics reimplementation for reading infix expressions for a rule structure-editor based on presentations. I found that writing CGOL "productions" much more natural than dealing with YACC. I think a key element in CGOL for complex parsing is its notion of sublanguages (which the Symbolics implementation omits). Albert Boulanger BBN Systems and Technologies.