Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

Scheme or Common Lisp?

Name: Anonymous 2010-07-22 9:02

Yes, it's a “which programming language to leran ???” thread, but this time it's ...more specific I guess?

So I already know C and Perl and wish to acquaint myself with other paradigms than the procedural and object-oriented ones I've become uncomfortably familiar with (i.e., functional). I also intend to learn Haskell at some point in the future in order to complete the holy trinity of syntaxes.

So, /anus/. Regarding the thread title, what are the differences that you find make you prefer one Lisp dialect to another? Is there even much of a difference? Or did you just choose one as your way of saying, “I've read SICP”?

Name: Scheme weenie 2010-07-22 19:05

Two points, then I'll shut up
As for hygienic macro systems, I'm not a huge fan of them myself, they force hygiene on your macros, while restricting some of your power.
Syntax-rules aside, what power are you missing with syntax-case or syntactic closures or ER macros? Especially given that an implementation of defmacro is like 20 or so lines of code.

but in Scheme, you'll see people name it 'lst','lyst' or whatever, to avoid shadowing the list function).
Aside from the question of whether or not 'list' is an appropriate name for a function: 1) I'd just shadow it 2) I'm not sure how you can get better readability if the same name has two meanings 3) The macro point is, of course, mitigated by hygiene.

Name: Anonymous 2010-07-22 19:11

In my experience the lisp-1/2 argument is very weird. Usually people say something like, "If I want my function argument to be a list, I want to call it 'list.' But then I can't use list!" Which sounds mildly convincing, except I've never actually had a function which took a list as an argument, and needed to create a new list internally, which wasn't better expressed by something like map.

Does a lisp-2er have some kind of function they can give as an example where lisp-1 namespaces result in awkward code? It may just be that I'm so used to scheme I have a kind of blind spot here.

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List