English version
Accueil     À propos     Téléchargement     Ressources     Contactez-nous    

Ce site est rarement mis à jour. Pour les informations les plus récentes, rendez-vous sur le nouveau site OCaml à l'adresse ocaml.org.

Browse thread
Smoke Vector Graphics: source code licenses for sale
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2007-11-08 (19:14)
From: Brian Hurt <bhurt@j...>
Subject: Re: [Caml-list] Smoke Vector Graphics: source code licenses for sale
Alexandre Pilkiewicz wrote:

>Le Sunday 04 November 2007 17:12:01 skaller, vous avez écrit :
>>Lack of commercial support -- the kind Jon is offering --
>>is one of the impediments to industry taking Ocaml seriously.
>Don't you think the worst problem for the industry is the lack of 
>retro-compatibility ? 
>Between 3.09 and 3.10 (a *minor* version number change), a lot of program 
>using camlp4 stopped compiling. If a company has a 100 000 lines code (or 
>more) to revise just for that, it could be kind of a problem.
>And so many things are just unspecified. I know it's a bad idea, whatever 
>language you use, to rely on the order of evaluation of the argument of a 
>function, but to say "this order may change one day" is to tell 
>industrialists : "if you have some "not so good" programmers, even if you 
>make all the test you want on your program to check it works, one day it may 
>just stop working because we changed the order or evaluation, or worst, a lot 
>of silent bugs can appear". 
Which explains why industry is so wary of languages like Java and C++, 
and refuses to adopt them.

Oh, wait.

Seriously, you can protect against a "not so good" programmer.  Java 
tried, they really tried.  But you can't have decent performance and 
absolute reproducability- as Java discovered with floating point numbers 
and memory behavior in a multi-threaded program, among other problems.  
Witness all the rants about Java's "Write once, debug everywhere" problems.

One thing I really like about Ocaml is that if order of evaluation is 
important, it gives me a way to enforce a specific ordering.  And it's 
not even an obscure part of the language (let/in definitions).