
Why Lisp Is Different - pcr910303
http://lispm.de/why-lisp-is-different
======
kazinator
> _" Lisp has its own ideas about data and thus needs to implement its own
> memory and data management."_

Replace "Lisp has ..." with "Pretty much every complex C program ever written,
and all modern productivity languages have ...".

~~~
ksaj
Like it says in the first sentence after the bullet list you're quoting from?

"Lisp is not on its own with these 'problems'. Smalltalk, Prolog, Java, ...
also have similar 'problems'. Java defines its own infrastructure, same for
Smalltalk, PERL, ... "

~~~
kazinator
Not only is Lisp not on its own, with these issues, it shares them with
numerous technologies _that are now mainstream_. I.e. Lisp is not different.

The "Lisp is different" meme is dead. Or, rather, it has atrophied down to a
syntactic concern that persists in some imbecillic quarters. Lisp is different
because there are no infix operators, commas are gone, and the brackets are on
the wrong side of the operator name. Other than that, it has straightforward
pass-by value parameters, straightforward scoping, and straightforward
evaluation. Someone switching from C to Lisp doesn't have to hugely readjust
their model of the computation. Just more kinds of values have to be imagined
as being malloced, and as being pointers. Other than that, values are machine
words being passed around in registers, on stacks and so forth: good old Von
Neumann chugging away.

The "garbage collection is slow and weird, and local variables should die when
the block terminates" crowd has pretty much retired; when not gardening or
flying kites, they are puttering around with their Pascal, Algol or IBM 360
assembler or whatever.

