Keith S. Wansbrough wrote:
> > Being public
> > domain makes a language accessible to everybody from students and
> > hobbyists to large corporations. I know a company that works for
> > military (NATO and the DoD) that changed from Ada to C++ solely
> > because they could get the Gnu C++ compiler for free for all their
> > supported platforms.
>
> Umm... the GNU Ada compiler, GNAT, runs on all gcc platforms as far as
> I'm aware...
Yes. As far as I'm aware it did not exist when the choice was made in ?90 or ?91.
Or maybe it existed in a beta version only; I don't remember exactly...
>
>
> > Few languages can do without commercial implementations, though,
> > since there are companies that will not use a PD compiler for their
> > work. We need the best of both worlds.
>
> Agreed. But (unfortunately?) commercial control of a language does
> not seem to hinder its popularity (Miranda excepted).
Well, you are right, but still the really, really "big" programming languages like
C are PD. C has orders of magnitudes more users than Pascal or Delphi.
I realize that it's not possible to give a definite, bullet-proof recipe of what
is "best" for a language. While VB probably is popular partly because it is
commercial (and because it supports Windows well), Miranda is not, partly because
it is commercial. To make a guess about what is "best" for Haskell I would look
most at comparable languages like Miranda and SML and at the really big languages
like C. These examples suggest that the language itself should be non-commercial
and have several commercial and PD implementation to choose from. I may be wrong,
though. It is largely a matter of "belief" or "gut feeling".
I believe it is of importance in the case of Haskell that it is a language with
many new and relatively unknown features - actually Haskell imposes a new way of
thinking compared to traditional languages. This suggests that the language
appeals most to "experimental" or "academic" minded people. This sort of people
are more likely to go for a non-commercial language with a PD implementation that
for a commercial one. I'm not saying that this is always the case, but it's a sort
of trend. The trend is largely set by colleges and universities that use PD
software to a large extend to save license expenses. It's also a question of
idealism or even political standpoint. Many creative programmers/computer
scientists are very much against the dominance exercised by large corporations and
would choose a PD language even if the fact that it was PD was the only reason.
Again, I'm not saying it's true for everybody but it is an important trend.
Languages that are 100% commercial tend to be relatively traditional in their core
technology with a little extra to solve some important practical problem. VB is
bad old BASIC with Windows support. Java is a trimmed down C++ with garbage
collection, a virtual machine and some features for component based development.
These languages are easy to sell because relatively little training is needed (or
is thought needed) for programmers to use them and thereby solve the problems they
address better than they could without. Haskell is not such a language. Compared
to a C++-to-Java "upgrade" a C++-to-Haskell "upgrade" is a huge, long-term
investment with large potential long-term gains but no overnight gains. It's not
something you can sell in a television ad; it's something that needs to be learned
by hard work. Haskell must therefore be sold in a different way and to different
people than, say, Visual Basic. Based on these thoughts, my "gut feeling" is that
PD language + open source compilers, tools and libraries is the way to go for
Haskell.
regards, Joergen
--
Joergen Froejk Kjaersgaard
Systems Engineer, Informaticon Systemeering
...Linux - for freedom of choice... www.linux.org