Browse thread
[Caml-list] Dynamically evaluating OCaml code
-
John Goerzen
- Vitaly Lugovsky
- Samuel Mimram
-
Basile Starynkevitch
-
Issac Trotts
- Dustin Sallings
-
Brian Hurt
- Oleg Trott
- Ville-Pertti Keinonen
-
John Goerzen
-
Markus Mottl
-
Richard Jones
-
Markus Mottl
- Jon Harrop
-
John Goerzen
- Jean-Marc EBER
-
Trevor Andrade
-
Gerd Stolpmann
- skaller
-
John Goerzen
-
Gerd Stolpmann
-
Christophe TROESTLER
-
Gerd Stolpmann
-
Christophe TROESTLER
- Brandon J. Van Every
- John Goerzen
-
Jacques GARRIGUE
- Brandon J. Van Every
- Gerd Stolpmann
-
Christophe TROESTLER
-
Gerd Stolpmann
-
Christophe TROESTLER
- Matt Gushee
-
Gerd Stolpmann
- Benjamin Geer
-
Gerd Stolpmann
- skaller
-
Markus Mottl
- John Goerzen
- Jon Harrop
-
Richard Jones
- Fernando Alegre
- Jean-Marc EBER
- Kenneth Knowles
- Brian Hurt
- skaller
-
Markus Mottl
- Issac Trotts
- Basile Starynkevitch
-
Issac Trotts
- clement capel
- Jon Harrop
- Walid Taha
[
Home
]
[ Index:
by date
|
by threads
]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
| Date: | -- (:) |
| From: | skaller <skaller@u...> |
| Subject: | Re: [Caml-list] Re: GODI vs. Ocamake |
On Fri, 2004-04-16 at 11:30, Richard Cole wrote: > > > Please forgive my ignorance of interscript but I'm interested in what > problem interscript is trying to address. Package, build, test and document software systems using a unified source format. As a Literate Programming tool, you don't document your code .. you embed code in a document. Interscript is unique as follows. Most LP tools divide sources into 2 kinds: (a) documentation (b) source program codes. You use a tool to do two jobs: (a) extract the code (b) generate the documentation. Called 'tangling' and 'weaving'. Interscript sources can have a third kind of stuff in it. Arbitrary executable code written in a high level language (Python). I use executable code to generate programs, to generate documentation, to compile code, to run test suites, to do configuration management, and everything else. Some of these things have library and architecture support, for example a registry for test results which is part of the generated web site, other things do not: extensions may improve the product, but you can always embed them directly and install them as part of the build. > Another aspect of building systems is configuration management. This is > where my question really is. I've only worked on systems where > configurations differed via library dependencies. So for example the > linux version links to the linux-lowlevel library and the windows > version links to the window-lowlevel library. Is there some other aspect > of configuration management that interscript addresses? Not in particular: it doesn't really address anything. It simply allows you to embed configuration management code directly in the source tree in a uniform format. Well, there are some interesting ideas: for example you can 'include' a generated file before it is generated. No problem! That's because the idea is to run the build repeatedly until the outputs converge to a fixpoint: if something fails the first time it doesn't matter, just keep trying :D This is already clearly mandatory for LaTeX, and if you think about it is the only way to manage systems that bootstrap. > is much better to select tools that are supported on all the platforms > that you want to deploy your system. That pushes the "supporting > different build environments" problem onto someone else. Yeah, I chose Python. Shell script is too Unix centric, and it just doesn't compare with a real programming language: you don't need hacks kludges and glue to make it work. The downside is that being general purpose, a high level language like Python (or Ocaml) will need more code to get simple jobs done. That's the price for being able to write code for any job, no matter how complex, and knowing for SURE that you will not be defeated by restrictions of more specialised tools. Hey, you write code in Ocaml because it's not going to get in your way like C++ does .. and isn't building a system just another programming problem? -- John Skaller, mailto:skaller@users.sf.net voice: 061-2-9660-0850, snail: PO BOX 401 Glebe NSW 2037 Australia Checkout the Felix programming language http://felix.sf.net ------------------- 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