[Calendula-devel] construction plans to date
Thomas Panzarella
tpanzarella@mac.com
Mon, 15 Mar 2004 10:00:27 -0500
On Monday, March 15, 2004, at 09:11AM, Bill Bell <bill-bell@bill-bell.hamilton.on.ca> wrote:
>
>(b) Python _is_ strongly typed.
>
I disagree, but that's not the point of this discussion. What I will agree on is that "strong testing" of Python code can ultimately lead to the same end result of strong static type checking at compile time (ala C++, Java, etc.) ... of course just because code compiles doesn't mean it *works* ... strong testing is just as important in a C++ or Java environment as well.
>
>> Also, I think much more important that the ultimate language is the architecture.
>
>Perhaps we can agree that we will surely fail if we do a poor job of the architecture.
>
Agreed.
>
>I believe it might have been you that mentioned using UML. OK.
>
yep.
>
>An alternative would be literate programming, which is supported by Leo. This would
>have the advantage that it tends to be easier to exchange and modify texts than
>graphics.
>
Don't know about this ... send some links that we could check out...
>
>Or, maybe there's a free vehicle that supports UML; I'd love to know about
>one.
>
http://www.gentleware.com/products/descriptions/ce.php4
>
>> If the design is done right, we could code this in any language that
>> supports OO --
>
>Sure. However, it's worth considering the fact that some languages in which we could
>code (and I'm thinking of C++) might cost us two or three times the work.
>
I was actually thinking Java. With the amount of freely available and open source development tools for Java today, I think Java developement can happen just as fast as using a scripting language like Perl or Python (YMMV). I also think that there are additional benefits to Java:
1- javadoc - API docs are just as important as code in an open source project and javadoc makes it painless
2- native look-and-feels via Swing - support for XP, Java, GTK+, and Aqua.
Anyway, I absolutely don't want to debate over language preferences with anyone. I think we need to do our technical due diligence when designing this system taking into account the environment that the system will be running in (non-profits that can't afford off-the-shelf tools and could care less what the underlying technology is). I'm interested in helping non-profits, not debating the technical merits of Python vs. Java or whatever....
Also, I want it to be clear that I have nothing against Python. I enjoy programming in Python. If that is what Calendula is ultimately going to be implemented in, so be it. I was just throwing in another perspective / preference ....
t.