overview of bootstrapping caml light

From: Lyn A Headley (laheadle@midway.uchicago.edu)
Date: Wed Feb 26 1997 - 05:49:33 MET

Message-Id: <199702260449.WAA18628@kimbark.uchicago.edu>
To: caml-list@inria.fr
Subject: overview of bootstrapping caml light
Date: Tue, 25 Feb 1997 22:49:33 -0600
From: Lyn A Headley <laheadle@midway.uchicago.edu>

[il y a un sommaire pauvre de ce message au fin]

dear caml-list,

I have been trying to understand the bootstrapping process
which takes place during caml light installation. If you'll
indulge me, I'd like to present my view of what is going on,
to see if I have the right idea, and then ask some questions.

The first step is building the runtime system(written in C). This
includes an interpreter for the caml light abstract machine. Then the
produced executable, "runtime", is invoked on the file "compiler,"
which I *think* is a byte-compiled implementation of a *subset* of the
caml-light language. In this way the core library, actual compiler,
linker, librarian, and toplevel are compiled into bytecode.

my questions:

1.) does the included bytecode file "compiler" implement only a subset
of the language? It seems that this is indeed the case, otherwise
there would be no point in compiling the subdirectory "compiler,"
would there? And yet, if it is a subset, why? I mean why not just
include a bytecoded compiler for the *entire* language? Basically I
am wondering why the subdirectory "compiler" is included in the

2.) How do src/runtime/parsing.c, src/runtime/lexing.c,
src/compiler/parser.ml, src/compiler/lexer.ml, src/lex,
and src/yacc fit into this whole picture?

[en francais]

j'essaye comprendre le processus de 'bootstrapping'.


1) est-ce que le fichier (dossier?) 'compiler' travaille pour un petit
part de la langue caml?

2) comment est-ce-que l'analysis de la syntaxe travaile?

This archive was generated by hypermail 2b29 : Sun Jan 02 2000 - 11:58:09 MET