caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: "chris.danx" <chris.danx@ntlworld.com>
To: skaller@users.sourceforge.net
Cc: David Brown <caml-list@davidb.org>, caml-list <caml-list@inria.fr>
Subject: Re: [Caml-list] Announcing the OMake build system version 0.9.1
Date: Mon, 06 Sep 2004 01:25:50 +0100	[thread overview]
Message-ID: <413BAE8E.9020901@ntlworld.com> (raw)
In-Reply-To: <1094399607.3352.679.camel@pelican.wigram>

skaller wrote:
> On Mon, 2004-09-06 at 01:07, chris.danx wrote:
> 
>>I don't understand what you mean by this, but surely having a tool for 
>>the most common purposes is better than no tool at all.  
> 
> 
> That may be so, but can we do better? I mean, programmers are
> always trying to automate things better, that's what our job is.

Sometimes we do go to far, witness M$. :)

Just a joke, please don't start a war over this little comment.

> 
>> Gnatmake builds the 
>>library but the library needs to exist before you can build the rest of 
>>the program so you need someway to tell it to biuld the lib first. 
> 
> 
> No you don't! You're making an assumption about build processes
> that specifying dependencies is fundamental.

Yes, you're right.  You don't need to make this assumption but you do 
need to specify what goes in the library and what does not.


> But that isn't the case. Here is a perfectly viable build script:
> 
> 	build program
> 	build library
> 
> You think that will work? It sure does! Here is the driver:
> 
> 	limit = 10
> 	run build
> 	while (--limit && new_outputs != old_outputs)
> 		run build
> 	
> This isn't efficient but it works *without* specifying
> dependencies or the correct build order. 

You didn't specify the dependancies in the "build" system, but you did 
in the files being compiled to some extent.  Are you considering a 
language aware or language neutral solution?


> If you want it to be faster -- specify
> the component builds in the right order :)
> 
> Point being -- getting the right order is an optimisation.
> 
> 
>>Ada has the elaboration problem and it is up to the programmer to solve. 
>>:)  The programmer needs to know the elaboration order they want in 
>>order to get the program to work.  If there are elaboration issues the 
>>programmer must solve them themselves unless the tool can sort them out 
>>for them.  I see no problem with this.
> 
> 
> The problem is that the current technique for solving the ordering
> problem is to compile and link libraries in a particular
> order -- in other words, hand write the build script instead
> of generating it.

Yes this happens in Ada, but it is part of the Ada code (Ada elaboration 
is more complex).  Putting Ada aside, I see no reason to do this in most 
cases for Ocaml though I am no expert.


> However if the source code contained enough information,
> the build scripts could be generated automatically.

**That is what I want to happen**

with the slight change that the program builds the actual program, 
library, whatever.  For the cases the tool is not designed for we can 
rely on ocamlc/ocamlopt and the tools' semantics to cover it ourselves 
if need be.  Ideally developers would not have to deal with that case 
but I'm not sure you can guarantee that when you're interfacing to other 
languages, etc.


Chris

-------------------
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


  reply	other threads:[~2004-09-06  0:25 UTC|newest]

Thread overview: 87+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-09-04 16:26 Jason Hickey
2004-09-04 17:42 ` Nicolas Cannasse
2004-09-04 18:27   ` chris.danx
2004-09-04 19:59     ` Matthieu Dubuget
2004-09-05  5:20       ` skaller
2004-09-05 13:20         ` David Brown
2004-09-05 14:31           ` skaller
2004-09-05 16:02             ` David Brown
2004-09-05 16:14               ` Nicolas Cannasse
2004-09-05 15:07           ` chris.danx
2004-09-05 15:53             ` skaller
2004-09-06  0:25               ` chris.danx [this message]
2004-09-06  8:17                 ` skaller
2004-09-05 13:38         ` Marcin 'Qrczak' Kowalczyk
2004-09-05 14:50           ` chris.danx
2004-09-05 15:01             ` Marcin 'Qrczak' Kowalczyk
2004-09-05 15:44               ` chris.danx
2004-09-05 16:10                 ` Marcin 'Qrczak' Kowalczyk
2004-09-05 17:38                   ` skaller
2004-09-05 17:15                 ` skaller
2004-09-05 16:11               ` skaller
2004-09-05 16:21                 ` Marcin 'Qrczak' Kowalczyk
2004-09-05 19:09                   ` skaller
2004-09-05 15:08           ` skaller
2004-09-05 15:38             ` Marcin 'Qrczak' Kowalczyk
2004-09-05 17:04               ` skaller
2004-09-05 18:45                 ` Marcin 'Qrczak' Kowalczyk
2004-09-05 20:12                   ` skaller
2004-09-05 21:30                     ` Marcin 'Qrczak' Kowalczyk
2004-09-05 22:41                       ` Brandon J. Van Every
2004-09-06 12:13                         ` Marcin 'Qrczak' Kowalczyk
2004-09-05 16:09             ` David Brown
2004-09-05 18:31               ` skaller
2004-09-06 10:56                 ` Andreas Rossberg
2004-09-06 15:51                   ` skaller
2004-09-06  7:11           ` Christian Lindig
2004-09-06 12:20             ` Marcin 'Qrczak' Kowalczyk
2004-09-06 14:12               ` Christian Lindig
2004-09-06  1:06         ` Richard Jones
2004-09-06  1:50           ` Brandon J. Van Every
2004-09-06  9:09             ` skaller
2004-09-06  8:59           ` skaller
2004-09-04 23:58     ` Nicolas Cannasse
2004-09-05  1:18       ` james woodyatt
2004-09-05  1:26         ` [Caml-list] Perl Conjury (alternative to Unix make) james woodyatt
2004-09-05  2:03         ` [Caml-list] Announcing the OMake build system version 0.9.1 David Brown
2004-09-05  2:37           ` james woodyatt
2004-09-05  6:24             ` Nathaniel Gray
2004-09-05 20:38         ` Aleksey Nogin
2004-09-06  0:12           ` james woodyatt
2004-09-06  0:33             ` [Omake] " Aleksey Nogin
2004-09-06  3:54               ` Brian Hurt
2004-09-06  6:39                 ` Jason Hickey
2004-09-06  8:10                   ` james woodyatt
2004-09-06  7:50                 ` [Omake] " Erik de Castro Lopo
2004-09-06 14:52                   ` Brian Hurt
2004-09-06 17:20                     ` skaller
2004-09-06  9:52                 ` skaller
2004-09-06 15:10                   ` Brian Hurt
2004-09-07 13:26                 ` David Brown
2004-09-06  1:14             ` Brandon J. Van Every
2004-09-06  2:35             ` Jacques GARRIGUE
2004-09-06  9:38               ` skaller
2004-09-06 11:34                 ` Jacques Garrigue
2004-09-06 16:28                   ` skaller
2004-09-06 16:42                     ` Christopher A. Watford
2004-09-06 16:59                       ` Richard Jones
2004-09-07  2:21                     ` Jacques GARRIGUE
2004-09-07  6:17                       ` skaller
2004-09-07  8:24                         ` Benjamin Geer
2004-09-07 13:35                     ` David Brown
2004-09-06  7:51             ` Daniel Andor
2004-09-05 20:38   ` Aleksey Nogin
2004-09-05 22:57     ` Olivier Grisel
2004-09-06  0:17       ` Aleksey Nogin
2004-09-06 13:31         ` Olivier Grisel
2004-09-06 19:28           ` [Caml-list] Godi for OMake [Was: Announcing the OMake build system version 0.9.1] Aleksey Nogin
2004-09-06 20:18             ` Olivier Grisel
     [not found]               ` <41537DAE.1050601@cs.caltech.edu>
2004-09-24 13:50                 ` Olivier Grisel
2004-09-24 18:37                   ` [Caml-list] OCamlFind support in OMake [Was: Godi for OMake] Aleksey Nogin
2004-09-04 18:01 ` [Caml-list] Announcing the OMake build system version 0.9.1 Yaron Minsky
2004-09-05  1:38   ` Eray Ozkural
2004-09-05  6:12 ` Yamagata Yoriyuki
2004-09-05 12:48   ` Yaron Minsky
2004-09-05 20:39     ` Aleksey Nogin
2004-09-06 12:24 Jason Smith
2004-09-06 15:54 ` Christopher A. Watford

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=413BAE8E.9020901@ntlworld.com \
    --to=chris.danx@ntlworld.com \
    --cc=caml-list@davidb.org \
    --cc=caml-list@inria.fr \
    --cc=skaller@users.sourceforge.net \
    /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;
as well as URLs for NNTP newsgroup(s).