[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
COMMON LISP is the PL/I of LISPs
From: Seth Steinberg <sas at BBN-VAX.ARPA>
To: scheme at mit-mc.ARPA
Re: COMMON LISP is the PL/I of LISPs
Actually, I think COMMON LISP will do better than PL/I did as a usable
standard. Personally I think Scheme is the APL of LISPs. It's great
for writing clever, unreadable hacks. Actually, the analogy could go:
I take exception to that. Unlike APL, Scheme uses the popular set of
characters known as ASCII, which is a superset of the English
characters, and is therefore quite readable. In fact, by definition,
Scheme programs are also trivialy parseable (sic). Take, for example,
this simple procedure (attributable to GJS, I believe):
1 ==> (pp mapcar)
(LAMBDA (F . LISTS)
(IF LISTS
(LET LOOP ((LISTS LISTS))
(LET SCAN
((LISTS LISTS)
(C
(LAMBDA (CARS CDRS) (ACCUMULATOR (APPLY F CARS) (LOOP CDRS)))))
(IF LISTS
(IF (CAR LISTS)
(SCAN
(CDR LISTS)
(LAMBDA (CARS CDRS)
(C (CONS (CAR (CAR LISTS)) CARS)
(CONS (CDR (CAR LISTS)) CDRS))))
INITIAL-VALUE)
(C () ()))))
(ERROR "No arguments to mapping function"
(LIST (LIST MAPPER-GENERATOR ACCUMULATOR INITIAL-VALUE) F))))
SMC