[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Issue "Eliminate forced consing" re-visited



I support the general idea of this proposal.  It fits in our charter,
fills a real need, and is well enough specified to be considered.

However, the form of the proposal needs some more work.

- The name should probably be changed to something like
  "SEQUENCE-FUNCTION-CONSING" to come to fit our naming convention.
  As Larry said about another recent proposal, I doubt that you
  could find "ELIMINATE" in CLtI and even you could it probably
  wouldn't point to sequence functions.

- I'd suggest "SEQUENCE-FUNCTION-CONSING:TARGET-KEYWORDS" as a
  proposal name.

- The proposal text should be rewritten as if it were the new parts
  of the manual/standards document.  I'd certainly understand some
  abbreviation to keep from having to rewrite the whole sequence
  chapter and a large part of the list chapter.

- The CONCATENATE and APPEND additions should either be moved into
  the proposal section or into a second issue (which I would probably
  also support).

All-in-all, this has moved from what I remember as more a philosophical
statement than a cleanup proposal to something that I think we can,
and should, pass unless we are prepared to "depreciate" the sequence
functions entirely.

The main objection to this proposal seems to be Scott's belief that
LOOP can and will replace the sequence functions for most purposes.  I
half agree in that: while I don't think replacing sequence functions by
LOOP is a good thing, I do think that replacing them by OSS would be
good.  The critical difference is that OSS provides the functional
view of these operations that is important for some programming
styles.  You could say that it comes back down to C versus Lisp again;
if I have to write everything as DO-loops, why am I using Lisp?