[Openmcl-devel] Lisp versus JavaScript (was: list - vector)

mikel evins mevins at mac.com
Mon May 18 23:33:54 PDT 2009


On May 18, 2009, at 11:46 PM, R. Matthew Emerson wrote:

>
> On May 18, 2009, at 11:51 PM, Andrew Shalit wrote:
>
>>
>> On May 18, 2009, at 10:08 PM, Gary Byers wrote:
>>
>>> If you're starting from the assumption that #'CL:AREF (without any
>>> compile-time assertions) is somehow analogous (performance-wise or
>>> otherwise) to an array-reference operator in a language with one
>>> array
>>> type, you probably won't get very far very fast; that's simply not
>>> a reasonable assumption.  In my mind, this is the sort of thing that
>>> every serious CL programmer should know (though I admit to not being
>>> entirely clear on how this knowledge is to be acquired; I imagine
>>> that
>>> most of what's written about it tends to be excruciatingly
>>> implementation-
>>> dependent.)
>> That brings us to the class line: "Lisp programmers know the value of
>> everything and the cost of nothing."
>>
>> Perhaps we could add, Lisp implementors know the cost of everything,
>> but Lisp documenters haven't been able to make that sufficiently
>> obvious to other Lisp programmers.  But every little bit helps.
>
> Norvig has a couple of chapters about efficiency in PAIP:
>
> http://norvig.com/paip.html
> http://www.amazon.com/dp/1558601910
>
> Chapter 10, "Low-level efficiency issues," is an interesting and
> informative read.
>
> The whole book is good, for that matter.  The AI problems are
> primarily a vehicle for demonstrating advanced Common Lisp programming
> techniques, so don't be turned off by the "artificial intelligence" in
> the title if AI is not your thing.

I agree. I learned what I know about compilers and interpreters (which  
is not so very much) mainly from transcribing and modifying the  
compilers and interpreters in SICP and PAIP.

--me





More information about the Openmcl-devel mailing list