News for hackers. Stuff that matters.
Re:Practical Common Lisp (2005) by brudgers on Saturday December 03, 2016 @10:23PM (#13098636)
I think the specification committee for ANSI Common Lisp would have agreed that defaults matter. It's just that their criteria for defaults was "What professional programmers are doing right now".

Historically, Scheme somewhat dodged avoided issues like argument order by excluding functionality from the language spec. My experience is that once Scheme gets expanded out and becomes Racket, the many hands show up as inconsistencies among similar functions much like Common Lisp.

Clojure, to me, seems to have the right idea: procedures that abstract operations from data types...for example there is not one mapping procedure for lists and another mapping procedure for arrays. Racket seems to be headed in that direction.

Re:Practical Common Lisp (2005) by kbp on Saturday December 03, 2016 @10:31PM (#13098659)
> for example there is not one mapping procedure for lists and another mapping procedure for arrays.

In Common Lisp, MAP works just as well on either.

Re:Practical Common Lisp (2005) by brudgers on Sunday December 04, 2016 @12:41AM (#13098922)
In Clojure map also works on hashes and sets. In keeping with the previous discussion, there's also only one variety of map in Clojure. It's this orthogonality of operations and datatypes that I think is Clojure going in the right direction.

None of which is to say that Clojure isn't standing on the shoulders of giants.

Re:Practical Common Lisp (2005) by kbp on Sunday December 04, 2016 @01:24AM (#13099016)
You might be interested in the FSet library (among others): https://common-lisp.net/project/fset/Site/index.html
Re:Practical Common Lisp (2005) by thomasvarney723 on Sunday December 04, 2016 @03:54PM (#13101718)
Very well said. The advent of transducers in Clojure has made this 'orthogonality' especially true.
Re:Practical Common Lisp (2005) by qwertyuiop924 on Sunday December 04, 2016 @09:01AM (#13100000)
...And us schemers have the TinyCLOS derivatives, so our map could work on any DS: by default, however, it doesn't :-(.