> Functonality on the dektop need not be monolithic.
> I run a free text database, a medical record system, an email client,
> more than one browser window with medical reference stuff, Letters
> Outward which is a browser for the letters we have written and has
> grown a few other functions around that in presenting patient info,
> and a couple of other things, and I don't feel they all have to be
> brought into one whole.
I am a strong believer in the UNIX philosophy of having one well designed tool for
each single small job (if the job is large, break it down into smaller ones), that
does nothing but this single small job - but that exceptionally well. It is up to the
user uinterface to bind all these small tools together to a functional entity. This is
a truly modular way to develop software, and makes it extremely easy to debug and to
share a project development between many people. In such a concept, it does not matter
either in which language each of the modules has been written.
In GNUMed, only the Interbase backbone is rather monolitic. The rest of it is not.
It's several dozen of inter-communicating modules which are best used through a GUI
(or web browser, if neccessary) - but each of them is still functional on their own.
One program deals with identity/demographic related data. One with drugs and
interactions. Another one with progress notes, and so on. Looks very chaotic and
confusing at the beginning, especially as long as documentation is lacking - but is
extremely stable on the long run.
There is a strong advantage in this approach of independend cooperative modules, and
the advantages of OO become less and less obvious the smaller the "applets" get - so
it really doesn't matter any more which language, you are not even constrined by the
OO paradigm. Everybody can use the language they are most experienced infor their
little niche program, I use C(++) or Pascal, because that's what I have been using for
20 years. I can write in Fortran, Java, Modula, Forth, Perl, Tcl/Tk and some others
(Tom, I am even learnig Eiffel now! ;-)) ) - but the code will be rather amateur like.
Horst