
On 16 Mar 2008, at 14:57, Leslie P. Polzer wrote:
Hello folks,
here are three CDR ideas that I would like to get your comments on:
1. Support a :TEST arg for (E)CASE.
I'm not sure what this buys you over a regular cond. Case primarily exists for efficiency, no?
2. Setup BACKQUOTE to be the backquote expansion object. I believe this is common implementor's practice.
It would indeed be good if it were standardized what the ` , and ,@ expand into. However, this should take into account current practice, so would need an analysis stage first, I think. This sounds like hard work (but maybe I'm overestimating this). Whether it's common already or not doesn't matter that much. Those implementations that don't want to implement the CDR don't implement the CDR.
3. Support extended feature tests. It would be nice to be able to say +(find-package 'zoo)(...)
I don't think that's a good idea because it changes the semantics of boolean expressions. (when :some-keyword (print 'foo)) will always print 'foo, whereas #+some-keyword (print 'foo) prints 'foo only if :some-keyword is on the feature list. In other words, this may lead to some unexpected results. What's wrong with this? #.(if (find-package 'zoo) '(do-this ...) '(do-that ...)) Pascal -- 1st European Lisp Symposium (ELS'08) http://prog.vub.ac.be/~pcostanza/els08/ Pascal Costanza, mailto:pc@p-cos.net, http://p-cos.net Vrije Universiteit Brussel, Programming Technology Lab Pleinlaan 2, B-1050 Brussel, Belgium