ramsdell%linus@MITRE-BEDFORD.ARPA (John D. Ramsdell) (04/21/88)
Normally, I avoid reading journals with the name of a programming language in their title whenever the journal is about that programming language. Those journals tend to contain disappointing articles. My curiousity was peeked by an article by Morteza Marzjarani called "A Comparison of the Computer Languages Pascal, C, Lisp, and Ada" in the Journal of Pascal, Ada, & Modula-2, Vol. 7, No. 1, pp. 5-10, 1988. What would someone from that journal say about Lisp? Turning to the reference list of Marzjarani's article, I noticed the only Lisp reference was Abelson and Sussman's "Structure and Interpretation of Computer Programs". I concluded the dialect of Lisp for comparison was Scheme. Turning to the main text I found that Lisp is not block structured, and "LISP has two data types only, ATOM and LIST" {p. 6}. Did you know that "An A-list (association list) represents referencing environment. That is referencing in LISP is strictly according to the most recent association rule via searching the A-list from beginning to end for an entry whose CAR is the atom we are searching for."? {p. 7} Features of LISP include {p. 8} "Explicit garbage collection", "No data structures", "Explicit sequencing is eliminated; instead function calls are used", "Two reserved words only (T,NIL)", "Linked lists and property list (represented as a special case of linked lists) form the basic data structures", and "Most LISP output is automatic. For each function call the system prints out the function name, its arguments, and the value returned by the function". Somehow, I think Morteza doesn't know how to turn of tracing in his Lisp and has never opened Abelson and Sussman's book. John