From: Paul D. F. <pdf...@ku...> - 2007-01-22 15:56:47
|
Frank Wierzbicki wrote: > Jython's fragility brought us to another discussion, which is the > plans for the next release. The next release will probably target > either Python 2.3/2.4. We decided that this next release will largely > be a cleanup release. We have noticed that the current codebase is > extremely brittle and uses way to many different styles to do many of > the same things. All of this inconsistency makes bugfixing a > nightmare, and makes learning the codebase from scratch > extraordinarily difficult. I'm happy to hear of this emphasis for future work. One of the better parts of agile or eXtreme programming is a willingness to refactor code as you go along and have better ideas or put in a reasonable (not foolish) consistency to make other changes easier. And managing complexity of the bases system is a core thing where too many cooks spoil the soup. Other things that can be done in isolation (including frameworks or extra libraries) or which are nice but non-essential (performance) seem best left for others or the future. Having looked around the Jython codebase a little, it seems hard to approach; there are several reasons for this, but one of them is that is is in Java, not Jython, and Java is very verbose, given types, and lots of lines with just braces, which makes it hard to read. :-). As an aside, given Java's verboseness, I'd recommend considering relaxing the 80 characters per line coding style rule inherited from the TTY days. :-) In most cases, I find that makes the code even harder to read as conceptual units; I much prefer one idea per line if possible. But then I also prefer braces to match up with the nested block of code, which is why I prefer Python/Jython as there are no arguments about stuff like that. :-) Also, I'd just put in a reminder about the previously discussed value of copying the relevant CPython libraries into the base system so there is a fixed target to use for testing. --Paul Fernhout |