[Dev] Re: refcounted
vajda at osafoundation.org
Thu Oct 28 20:45:38 PDT 2004
> I suspect that pinning is the least of our portability problems moving our
> code to Java, given our use of
> multiple inheritance,
I suspect that if python supported interfaces, we'd be using multiple
inheritance of classes a lot less. Java supports interfaces, with multiple
Java collections implement several mapping types, more so than python
A really cool python feature, java iterators are the closest approximation,
not even close.
> python packages
Java has packages too, doesn't it ?
Java has exceptions too, although the programming style of letting exceptions
be thrown and recovered from is discouraged.
> __ methods we override
Yeah, that's a problem for sure, but we don't this too much, do we ? (the
repository is probably the biggest culprit).
> the difference in argument passing conventions
Java supports overloading of methods, so optional and keyword argument passing
style can be approximated that way.
> wiring up objects at runtime
Item stamping ? Sure enough, a hard one to do in Java - but not impossible,
I've seen Java apps generating bytecode on the fly before. Resetting an
instance's class in Java ? ouch.
Please note, that by no means am I suggesting we port Chandler to Java.
Personally, my favorite language to program in is Lisp and, these days, python
is the closest approximation. I would be sad to have to leave it behind.
I'm just using the Java argument as a way to not paint ourselves into a
python-only corner too much. It's important to keep nimbleness at hand, it
always comes in handy when you least expect it.
More information about the Dev