>>>>> "Karl" == Karl M Hegbloom <karlheg(a)inetarena.com> writes:
>>>>> "Michael" == Michael Sperber <sperber(a)informatik.uni-tuebingen.de> writes:
>>>>> "Reggie" == Reggie Perry <Reggie.Perry(a)digital.com> writes:
Reggie> There are several arguments for common lisp.
Michael> I claim that migration to Common Lisp is roughly as
Michael> expensive as migration to Scheme.
Karl> But the theses was that Common Lisp is a better language for
Karl> developing large software products with.
Well, that's a different issue. Both are important and interesting.
Note that we only want to develop one very specific large software
Karl> So perhaps it "costs" the same to get to the point where you
Karl> can start writing code in the new language, but one is better
Karl> than the other for creating complex interworking systems. (For
Karl> code developers, system administration, process control
Karl> interfaces, ... (tell me what else! I'm interested.))
Both languages have been used for complex interworking systems. The
issues are not as clear-cut. For example, let's take Common Lisp's
package system, one of the things most commonly cited as qualifying
Common Lisp for large systems development.
Let's have slightly closer look:
What can a package/module system do?
1. name space management
2. separate compilation/linking
3. separation between interface and implementation to support
maintenance, multiple developers, and high-level abstraction
4. describing parameterized software architectures and instantiating
Of these, the Common Lisp package system achieves at most the first
two. (It certainly allows for separate compilation, but that is
largely independent of the package system, as far as I can tell.)
However, 3. and 4. are extremely helpful in developing complex
software. XEmacs *is* a highly parameterized application. The reason
why Scheme doesn't have a standardized module system is that 1. and
2. just by themselves are not enough, and 3. and 4. are hard.
- Scheme 48's module system does 1, 3, and 4.
The planned new module system does all 4.
- MzScheme's module system does all 4.
- Gambit's name space management system does 1 and 2.
- RScheme's module system does 1 and 2.
(Jamie used to bitch about CL's package system all the time, though
I'm not sure he ever substantiated his rants.)
Cheers =8-} Chipsy
Friede, Völkerverständigung und überhaupt blabla
PS: Karl, quite a few posts of yours end up empty out here. Maybe
something is wrong with your MUA?