Why Python won't work on .net
Duncan Booth
duncan at NOSPAMrcp.co.uk
Tue Dec 9 10:08:42 EST 2003
More information about the Python-list mailing list
Tue Dec 9 10:08:42 EST 2003
- Previous message (by thread): Why Python won't work on .net
- Next message (by thread): Why Python won't work on .net
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
martin at v.loewis.de (Martin v. =?iso-8859-15?q?L=F6wis?=) wrote in news:m3y8tnw6wh.fsf at mira.informatik.hu-berlin.de: >> The main problem is that functions are first class objects in Python, >> but not in the CLS. The CLS uses delegates to refer to functions, and >> a delegate encapsulates both an object and a pointer to a method. > > In addition, I think one problem is that in CLS, a class has a > pre-determined set of data attributes, whereas in Python, instances > grow new data attributes as they live. I don't believe that is too much of a problem. Even in Python many of the data types have a fixed set of attributes. Even user defined classes, if they use __slots__, might not allow you to add attributes. So, for .Net, some user defined classes might have a __dict__ attribute, but others don't. Attributes which are accessed through __dict__ won't be visible to non-Python code, but that shouldn't be a problem. > >> I have been playing around with a variant on the managed Python >> compiler, and I think I have figured a way to implement Python which >> might just get around this bottleneck. Unfortunately it requires a >> lot of refactoring from the original model, and I'm only working on >> it occasionally in my spare time. > > Very interesting. Are you willing to share the intermediate results > that you get? Publish early, publish often :-) > I'm more than willing to share, but so far its been a massive refactoring job so I was waiting until things settled down a bit before releasing anything. I expect the main speed gains to come when I get the new model for functions and methods working and eliminate as far as possible calls the reflection apis. -- Duncan Booth duncan at rcp.co.uk int month(char *p){return(124864/((p[0]+p[1]-p[2]&0x1f)+1)%12)["\5\x8\3" "\6\7\xb\1\x9\xa\2\0\4"];} // Who said my code was obscure?
- Previous message (by thread): Why Python won't work on .net
- Next message (by thread): Why Python won't work on .net
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-list mailing list