[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Looping constructs
- To: Scott E. Fahlman <Fahlman at CMU-CS-C.ARPA>, common-lisp at SU-AI.ARPA
- Subject: Looping constructs
- From: Eric Benson <BENSON at SPA-Nimbus>
- Date: Mon, 15 Aug 1983 16:29:00 -0000
- In-reply-to: The message of 14 Aug 83 12:16-PDT from Scott E. Fahlman <Fahlman at CMU-CS-C.ARPA>
Okay, I'll jump right in...
I believe that LOOP and LetS can coexist peacefully in the same world.
They deal with two different problems in very different ways. LetS
allows APL-style processing of "sequences," (unrelated to the Common
Lisp sequence concept) with an expression based syntax. It is designed
so that sequences are not actually created as data structures, rather
existing conceptually as intermediate values. Such operations as
merging, sorting and concatentation do not fit within its paradigm.
LOOP, on the other hand, is intended to extend (all) the iteration
constructs found in other languages to Lisp, with a keyword based
syntax. This kitchen-sink-ism and non-Lispy syntax seems to offend some
purists, but there are many iterative programs which could not be
expressed at all using LetS, and only painfully using DO, which are
quite amenable to treatment with LOOP. Chacun a son gout.
(LOOP FOR EVERYONE IN COMMON-LISP DO (SEND EVERYONE :THIS-MESSAGE))