Version française
Home     About     Download     Resources     Contact us    
Browse thread
[Caml-list] Dynamically evaluating OCaml code
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Gerd Stolpmann <info@g...>
Subject: RE: [Caml-list] Dynamically evaluating OCaml code
You should have a look at GODI, http://www.ocaml-programming.de/godi,
which is a caml distribution (although not very complete yet). However,
GODI does not implement the "one big download" approach, but allows the
user to select the packages he wants. The big advantage is that
independent updates are possible. There is no disadvantage for the user
because there is a nice user interface that hides the complex technical
details.

Am Die, 2004-04-13 um 08.15 schrieb Trevor Andrade:
> 
> I think when discussing this we have to separate means and ends.  The
> end that we would like is that we want to download a caml distribution
> from the internet and we get everything we want like IPV6, sockets,
> directory functions etc, and also probably a lot of stuff we will never
> use (internet connections are fast and disk space is cheap so who cares
> if its big).  Ideally you should have one download where you get
> everything.  Also this download should be fairly standardized so that
> most people can download the same library and it should be of high
> quality.

I must admit that I don't see the point. What is the advantage when most
people have the same library? Aren't we individuals?

> Why is this necessary?  Because history has shown it works.  

It depends on how you interpret history. E.g. I don't believe C++ is
dying, there is so much code written in it, it must continue to live,
even as a vampire. It is not clear to me what you mean with
"standardized", maybe you mean "easily accessible"?

> One of the
> main reasons many other languages like lisp and smalltalk are not very
> popular is that they don't have large standardized libraries.  I also
> think that the reasons C++ is dying is that it does not have a good
> standardized library.  Languages like Python are very popular precisely
> because they do have large standard libraries.  
> 
> Now the question is what are means through which you can accomplish
> giving people large standardized distributions with everything they
> need.  One way is just to have a big standard library.  Another way
> might be to separate the standard library into two parts  a standard
> core library and a separate extended standard library.  A third way is
> to just have a centralized repository like Perl's CPAN or Ruby's RAA.  I
> think you have to be careful with large centralized repositories because
> the code quality can suck (eg Ruby's RAA) unless they are monitored
> well.  Also if you do use a large central repository you often don't
> have standardized tools because different versions exist for things.
> Thirdly downloading and installing from centralized repositories should
> be easy so there should be a tool for doing this like cygwin's
> installation tool.  I should mention that cygwin's installation tool is
> extremely nice.  It handles dependencies, versioning and does remote
> installation.  

Cygwin is an extremely simple case. GODI does much more, it does not
only download, but also compile the code. The complexity is somewhere
else.

> Miktex uses the cygwin tool to access the Tex archives.
> In this case the centralized repository method works pretty well.
> However in tex it does often happen that there are separate packages
> that you download that have some similar functions.  I think Pyhon's big
> standard library model is the best.  Using this method you get a nice
> big standardized distribution with everything you need. This makes your
> life very easy.  In Python there are also many things outside the
> standard library and as the quality of these things gets better they
> often get put in the standard library.  It should also be noted that its
> not really necessary for the core developers to manage everything in the
> standard library.  In Python most of the standard library is not managed
> by the core developers of the language who work on things like the
> language and the interpreter.  Instead the different parts are managed
> by either the author of that part or some maintainer.  I don't see why
> core developers have to maintain the standard library.  They should just
> decide what makes it in to the standard library. 

Don't forget that ocaml attracts mostly creative and individual people.
Even the core language supports that, there are usually many ways of
modelling APIs and such. I predict you would fail miserably if you tried
to establish a larger standardization process.

Ok, there are currently things missing in the ocaml stdlib that would be
difficult to add as a separate library. On the other hand, it is better
to keep the stdlib small but widely accepted, and to make it easy to
install add-on libraries. For the latter, GODI is my suggestion.

Gerd
-- 
------------------------------------------------------------
Gerd Stolpmann * Viktoriastr. 45 * 64293 Darmstadt * Germany 
gerd@gerd-stolpmann.de          http://www.gerd-stolpmann.de
------------------------------------------------------------

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners