Python syntax in Lisp and Scheme

Rayiner Hashem gtg990h at mail.gatech.edu
Thu Oct 9 16:47:19 EDT 2003


> sure, but it seems like noone was able to let Cconceivable(virtual) inner
classes,
That's because Lisp has closures, and because CL doesn't mandate access
protections for classes. 

> methods inside methods,
You can use a lambda to accomplish the same thing.

> virtual methods (yeah I know about those stupid generic functions :),
Generic functions are just virtual methods generalized to multiple dispatch.

> method overloading
Method overloading is just a special case of generic dispatch in situations
where the types of the dispatch arguments are known at compile-time. In
situations where method overloading could be applicable, GF dispatch
doesn't even have a performance hit over static method overloading because
the compiler can optimize-out the generic dispatch.

> A decent API (I tried playing with it.. it doesn't even have a freaking
> date library as standard ;-p
Google for one! What's the point of having every conceivable library in the
language?

> 
> Yes I agree with the compile time macro expansion is a nice thing.
> However, if I want to do some serious changes to the structure of objects
> and classes (i.e. create a new kind of objects) then I have to spend a
> long time finding out how the CLOS people hacked together their
> representation of classes, methods, method call etc...
There is a MOP provided expressly for this purpose.




More information about the Python-list mailing list