[Omake] SVN Commit: OMake Build System [0.9.8.x] (Rev. 10501)

Jason Hickey jyh at cs.caltech.edu
Wed Apr 25 12:55:31 PDT 2007


This is the var1 jumbo patch.  There are no semantic changes, only
code structure, which now looks like 0.9.9 but has no features from
0.9.9.

************************************************************************
*** var1

Convert the source code in 0.9.8 so that it matches the
source structure in 0.9.9.

There should be no real semantical changes to the OMake
language.

This is a change to the code only.  The update is large,
but it should be relatively uncontroversial.

Major architectural changes:

** The Scope* is folded into the variable, it is no longer a separate
   field.
     
   The right way to think is that there are _not_ 3 environments, there
   are 3 kinds of variables and a single environment.
 
   There are 4 classes of variables:

   * VarPrivate: private, statically scoped
   * VarThis: current object, dynamically scoped
   * VarVirtual: global, dynamically scoped
   * VarGlobal: the usual default

** Omake_ir_ast now structurally looks like 0.9.9.

Other changes:

* export variables are computed at compile time in Omake_ir_ast,
  instead of at runtime.

* function parameters are private (not protected).

* defined/getvar/setvar functions allow qualified names.

----
Changes:
    +2 -0	omake-branches/0.9.8.x/lib/Pervasives.om
    +7 -3	omake-branches/0.9.8.x/src/Makefile
    +7 -3	omake-branches/0.9.8.x/src/Makefile.nt
    +6 -6	omake-branches/0.9.8.x/src/build/omake_build.ml
    +11 -7	omake-branches/0.9.8.x/src/build/omake_builtin.ml
    +4 -4	omake-branches/0.9.8.x/src/build/omake_builtin.mli
    +71 -5	omake-branches/0.9.8.x/src/build/omake_builtin_util.ml
    +10 -4	omake-branches/0.9.8.x/src/build/omake_builtin_util.mli
    +41 -44	omake-branches/0.9.8.x/src/build/omake_rule.ml
    +39 -20	omake-branches/0.9.8.x/src/builtin/omake_builtin_base.ml
    +6 -5	omake-branches/0.9.8.x/src/builtin/omake_builtin_file.ml
    +47 -16	omake-branches/0.9.8.x/src/builtin/omake_builtin_io.ml
    +31 -32	omake-branches/0.9.8.x/src/builtin/omake_builtin_io_fun.ml
    +108 -5	omake-branches/0.9.8.x/src/builtin/omake_builtin_object.ml
    +3 -2	omake-branches/0.9.8.x/src/builtin/omake_builtin_shell.ml
    +12 -11	omake-branches/0.9.8.x/src/builtin/omake_builtin_sys.ml
    +5 -4	omake-branches/0.9.8.x/src/builtin/omake_builtin_target.ml
    +10 -9	omake-branches/0.9.8.x/src/builtin/omake_builtin_test.ml
    Properties	omake-branches/0.9.8.x/src/clib/
    +1 -0	omake-branches/0.9.8.x/src/env/omake_ast_lex.mll
    +39 -21	omake-branches/0.9.8.x/src/env/omake_ast_parse.input
    +107 -81	omake-branches/0.9.8.x/src/env/omake_command_digest.ml
    +546 -575	omake-branches/0.9.8.x/src/env/omake_env.ml
    +30 -30	omake-branches/0.9.8.x/src/env/omake_env.mli
    +7 -4	omake-branches/0.9.8.x/src/env/omake_gen_parse.ml
    +1255 -465	omake-branches/0.9.8.x/src/env/omake_ir_ast.ml
    +20 -27	omake-branches/0.9.8.x/src/env/omake_ir_ast.mli
    +77 -84	omake-branches/0.9.8.x/src/env/omake_ir_free_vars.ml
    +5 -5	omake-branches/0.9.8.x/src/env/omake_ir_free_vars.mli
    +43 -46	omake-branches/0.9.8.x/src/env/omake_ir_semant.ml
    +187 -168	omake-branches/0.9.8.x/src/eval/omake_eval.ml
    +9 -9	omake-branches/0.9.8.x/src/eval/omake_eval.mli
    +4 -3	omake-branches/0.9.8.x/src/eval/omake_value.ml
    +3 -2	omake-branches/0.9.8.x/src/eval/omake_value.mli
    +1 -0	omake-branches/0.9.8.x/src/ir/OMakefile
    +7 -6	omake-branches/0.9.8.x/src/ir/omake_command_type.ml
    +185 -35	omake-branches/0.9.8.x/src/ir/omake_ir.ml
    +102 -72	omake-branches/0.9.8.x/src/ir/omake_ir_print.ml
    +6 -5	omake-branches/0.9.8.x/src/ir/omake_ir_print.mli
    +9 -9	omake-branches/0.9.8.x/src/ir/omake_ir_util.ml
    +22 -4	omake-branches/0.9.8.x/src/ir/omake_options.ml
    +5 -3	omake-branches/0.9.8.x/src/ir/omake_options.mli
    +7 -0	omake-branches/0.9.8.x/src/ir/omake_symbol.ml
    Copied	omake-branches/0.9.8.x/src/ir/omake_var.ml (from rev 10497, omake-jumbo-branches/var1/0.9.8.x/src/ir/omake_var.ml)
    Copied	omake-branches/0.9.8.x/src/ir/omake_var.mli (from rev 10497, omake-jumbo-branches/var1/0.9.8.x/src/ir/omake_var.mli)
    +5 -13	omake-branches/0.9.8.x/src/ir/omake_virtual_id.ml
    +3 -6	omake-branches/0.9.8.x/src/ir/omake_virtual_id.mli
    Properties	omake-branches/0.9.8.x/src/libmojave/
    +6 -6	omake-branches/0.9.8.x/src/main/omake_main.ml
    +23 -23	omake-branches/0.9.8.x/src/main/omake_shell.ml
    +3 -2	omake-branches/0.9.8.x/src/shell/omake_shell_completion.ml
    +3 -2	omake-branches/0.9.8.x/src/shell/omake_shell_job.ml
 
A hyperlinked version of this commit is available at
http://svn.metaprl.org/commitlogs/omake/2007-04.html#07/04/25.12:55:31



More information about the OMake-CVS mailing list