From: Pascal J. Bourguignon on
Jorge Gajon <gajon(a)gajon.org> writes:

> On 2010-04-22, Peter Keller <psilord(a)merlin.cs.wisc.edu> wrote:
>> I am a staunch vim user, to say the least. However, after patches I
>> was giving back to various lisp projects were rejected with the reason
>> "format it in SLIME or else". I bit the bullet and simply learned emacs
>> for my Lisp IDE. I'm happy I did this.
>>
>
> Hi Peter,
>
> I'm an avid Vim user as well, and I've been using "Limp" with a few
> modifications�. I've been playing a little bit with Emacs and SLIME, and
> I can clearly see that the Emacs platform is much more powerful and that
> there's nothing like SLIME available to VIM.
>
> However, I've been hesitant to completely immerse myself into Emacs
> mainly because I'm afraid that I will spend endless hours learning and
> customizing it, without gaining a significant advantage over Vim.

You could. But you wouldn't have to, to benefit from emacs lisp.
Really, I usually don't spend any time on emacs customization, in the
course of a project. On the other hand, I may spend a few minutes to
write project specific emacs lisp functions, to help editing or
generating project specific stuff.

And you can customize emacs a lot without even programming in emacs
lisp. There are almost orthogonal matters.

--
__Pascal Bourguignon__
From: Frank Buss on
Pascal J. Bourguignon wrote:

> Yes. After all, we all know that the only thing Python has is
> significant indentation and colons (both of which are despicable), and
> nothing else, not even list processing primitives.

Python has some list processing primitives:

(car x) = x[0]
(cdr x) = x[1:]
(cons x y) = [x] + y
etc.

Of course, the functions are not the same as in Common Lisp, e.g. x[0]
gives an IndexError, if the list is empty and the primitives are not
functions, so you need to define your own functions for using it with
higher order functions.

--
Frank Buss, fb(a)frank-buss.de
http://www.frank-buss.de, http://www.it4-systems.de
From: Pascal J. Bourguignon on
Frank Buss <fb(a)frank-buss.de> writes:

> Pascal J. Bourguignon wrote:
>
>> Yes. After all, we all know that the only thing Python has is
>> significant indentation and colons (both of which are despicable), and
>> nothing else, not even list processing primitives.
>
> Python has some list processing primitives:

Yes. And lisp has arrays. That was my point ;-)

We could develop the memes that

python is PainfullY THpace Overloaded Nuttiness
ruby is Rabid UBject Yoke
java is Just Another Vaunted Avoidance

etc.

(The TH in python is for the x[0],x[1:] you mentioned).




--
__Pascal Bourguignon__
From: Peter Keller on
Pascal J. Bourguignon <pjb(a)informatimago.com> wrote:
> We could develop the memes that
> java is Just Another Vaunted Avoidance

Just Another Vapid Attempt

-pete
From: Nicolas Neuss on
Tamas K Papp <tkpapp(a)gmail.com> writes:

> Then you are probably not typical. BTW, do you have online notes for
> your course? I am just curious.

I have notes for a previous version of the course which was a 2h/week
lecture. It mostly follows the first three chapters of SICP with
add-ons on syntax transformations, the lambda calculus, and OO. The
notes are in German, but not under a published link. If you want to
take a look, drop me an email.

> If I had the resources, would love to conduct the following survey:
> among undergrads exposed to some form Lisp, what fraction knows that
>
> - Lisp has strings?
> - ... and arrays?
> - ... and macros?
> - there are editors/IDEs that make working with Lisp extremely easy?
> - Common Lisp exists?

I guess that my students (from the previous course) would answer "yes"
to those questions.

> - ... and has a lot of library function for List Manipulation 101?
> - ... has loop and iterate?
> - (tail) recursion doesn't come up very often for the average CL'er?

For these questions, their answer would be "no", because I used DrScheme
and the focus was not on CL.

> - CLOS exists?
> - CLOS is far more advanced than the OO framework of some languages
> that position themselves as object-oriented?
> - that MOP exists (no need to know the details or use it, just what it
> is)?

"Yes" for those questions.

Nicolas