Mailing list for all users of the OCaml language and system.
 help / color / mirror / Atom feed
From: Gerd Stolpmann <Gerd.Stolpmann@darmstadt.netsurf.de>
To: caml-list@inria.fr
Subject: Re: If i had a hammer...
Date: Thu, 28 Jan 1999 22:24:28 +0100	[thread overview]
Message-ID: <99012822230502.10116@schneemann> (raw)
In-Reply-To: <199901281102.MAA16126@miss.wu-wien.ac.at>

On Thu, 28 Jan 1999, Markus Mottl wrote:

>I would really like to see a remote CVS-repository for OCAML somewhere. I
>am sure this would very strongly help people contribute collectively
>to projects written in OCAML. I have already asked at our university,
>but people there are a bit reluctant with software that they don't know
>so well and which allows remote access.
>
>Looking at other projects which make excessive use of this tool shows,
>how productive it can make people. It also attracts a lot of them -
>I think this would be really important for the whole OCAML-project.
>

A public repository would be great. You can simply see what's currently
happening at a glance; it shows that there is really a community that
favours Ocaml.

I think there are several steps:

- Find a server where the projects can be put 

- Write a Web interface to simplify download

- Define a standard for documentation (very important for free software
  development) -- we can simply use an existing one such as 'info'
  or 'perldoc', or simply define a directory structure for html-pages

- Define a standard how to compile and install projects such that they
  can be used together

For the latter, I think a meta-makefile mechanism would be appropriate.
As Ocaml links always statically, there should be a tool

- that has as input a descriptive request what modules should be linked in

- that outputs a perfect Makefile that knows the linking order and automatically
  calls ocamlc/ocamlopt/ocamlmktop -- whatever meets the given requests best

For example, you could *describe* your request as follows:

	require Unix
	require Joe's_module
	require Mary's_module
	goal my_binary
	link my_binary = <requested libraries> m1.cmo m2.cmo

The meta-makefile processor reads this, searches in its database of already
installed modules what files are really meant by the given requests, orders
them such that they can be linked, and writes a Makefile that compiles 
m1.ml to m1.cmo, m2.ml to m2.cmo and links all the cmo and cma files.

Note that a similar description could be given how to compile Joe's and Mary's
modules. These can of course require third modules that must also be linked in.
My suggestion addresses both installation of downloaded modules and how to
use them.

The really important point is that using modules found in a public repository
must be very simple. It would discourage potential users if they had to
read manuals very carefully to get the modules working. It should not be
necessary to study and configure makefiles to do a simple thing like a
software installation (people often think that installation is a simple
process and a more or less an unproductive task).

But the very first step is still to find a host for such a repository.

--
----------------------------------------------------------------------------
Gerd Stolpmann      Telefon: +49 6151 997705 (privat)
Viktoriastr. 100             
64293 Darmstadt     EMail:   Gerd.Stolpmann@darmstadt.netsurf.de (privat)
Germany                     
----------------------------------------------------------------------------




  reply	other threads:[~1999-01-29  8:47 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1999-01-28 11:02 Markus Mottl
1999-01-28 21:24 ` Gerd Stolpmann [this message]
1999-01-29 12:47   ` Markus Mottl
1999-02-01 13:49 ` Xavier Leroy
1999-02-02 15:01   ` Markus Mottl

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=99012822230502.10116@schneemann \
    --to=gerd.stolpmann@darmstadt.netsurf.de \
    --cc=caml-list@inria.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox