[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: s-exprs + prototypes

> Perhaps I just need to know more about the specific language(s) you're
> talking about.  I'm saying that if you need to e.g. create a class 
> with an
> apply method and create instances of that class,

there are no classes in a prototype language of course.

> in order to get standalone
> functions, then the language in question has taken its paradigm to an
> extreme which makes it less general, in a sense.

I could say the same thing about implementing objects out of lambas, 
lets, and lists.
This is just saying if my language doesn't have your language's 
fundamental thing as its fundamental thing then it is less basic. But 
if each can be defined in terms of the other, then neither is 

> BTW, with all this talk of "objects" as the ultimate goal of all
> programming, you might want to have a chat with some FunctionalWeenies 
> or
> LambdaWeenies, about the mathematical properties of languages.

Yup. Smug. and condescending too. I do own SICP, Structure of Symbolic 
Comp., On Lisp, Common Lisp (Steele), and have a bale of papers printed 
out on monads and spineless tagless G-machines that I've read over the 

> For example,
> I get the distinct impression you're talking about mutable objects, 
> which
> are a big no-no, with all sorts of undesirable properties.

My front door has a mutable state. And a good thing too, cause 
otherwise I couldn't leave the house.

I'm bailing on this.
I don't really care that you can implement anything in Lisp. You can in 
C too. BFD.
But I don't want to program in Lisp. So I'm writing a language that 
does what I want.
Objects and functions are interchangeable and really if you argue for 
one over the other then you're just howling in a hall of mirrors from 
my point of view. Lisp doesn't have the polymorphism I want. Lisp plus 
CLOS doesn't give it either. And I can't find an embeddable real time 
GC lisp either so, it is useless to me in more ways.

--- james mccartney   james@audiosynth.com   <http://www.audiosynth.com>
SuperCollider - a real time audio synthesis programming language for 
MacOS X.