Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2005-10-02 11:24:45 -0700 (Sun, 02 Oct 2005)
Revision: 7811
Log message:

      Backport some of the parser changes.
      

Changes  Path
+3 -3 omake-branches/0.9.6.x/lib/Pervasives.om
+144 -38 omake-branches/0.9.6.x/src/build/omake_builtin_io_fun.ml
+1 -0 omake-branches/0.9.6.x/src/build/omake_builtin_io_fun.mli
+1 -0 omake-branches/0.9.6.x/src/ir/omake_symbol.ml
+2 -0 omake-branches/0.9.6.x/src/main/omake_main.ml
+16 -16 omake-branches/0.9.6.x/tests/calculator/Test

Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2005-10-02 14:25:01 -0700 (Sun, 02 Oct 2005)
Revision: 7812
Log message:

      Backported the C parser.  This parser is not extensively tested.
      

Changes  Path
+4 -3 omake-branches/0.9.6.x/OMakefile
+19 -7 omake-branches/0.9.6.x/doc/man/omake-doc.1
+19 -7 omake-branches/0.9.6.x/doc/man/omake-system.1
Properties omake-branches/0.9.6.x/lib/parse
Properties omake-branches/0.9.6.x/lib/parse/C
Copied omake-branches/0.9.6.x/lib/parse/C/Lex.om
Copied omake-branches/0.9.6.x/lib/parse/C/Parse.om
+19 -91 omake-branches/0.9.6.x/src/build/omake_builtin_io_fun.ml
Properties omake-branches/0.9.6.x/tests/parse/C
Added omake-branches/0.9.6.x/tests/parse/C/Test
Added omake-branches/0.9.6.x/tests/parse/C/input.c
Properties omake-branches/0.9.6.x/tests/parse/C/input.c

Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2005-10-02 15:28:58 -0700 (Sun, 02 Oct 2005)
Revision: 7813
Log message:

      Changes made on the plane.
      
      Partially ported Dll to use mutable variables
      instead of exports everywhere.  However, the
      current model doesn't work.
      
          mutable.X = 1
          f() =
              X = $(add $(X), 1)
      
      If f() is called outside the scope of X, this
      currently fails.  I'm not sure whether this is
      desirable or not.
      

Changes  Path
+1 -1 omake-branches/omake_0_9_7_ref/contrib/gtk/OMakefile
+663 -691 omake-branches/omake_0_9_7_ref/lib/parse/C/Dll.om
+1 -1 omake-branches/omake_0_9_7_ref/src/env/omake_ir_ast.ml

Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2005-10-02 16:56:11 -0700 (Sun, 02 Oct 2005)
Revision: 7814
Log message:

      Keyword arguments require initialization.
      

Changes  Path
+1 -1 omake-branches/omake_0_9_7_ref/lib/Pervasives.om
+1 -1 omake-branches/omake_0_9_7_ref/src/Makefile
+1 -1 omake-branches/omake_0_9_7_ref/src/Makefile.nt
+1 -1 omake-branches/omake_0_9_7_ref/src/build/omake_builtin_io_fun.ml
+12 -4 omake-branches/omake_0_9_7_ref/src/env/omake_command_digest.ml
+1 -1 omake-branches/omake_0_9_7_ref/src/env/omake_env.ml
+24 -17 omake-branches/omake_0_9_7_ref/src/env/omake_ir_ast.ml
+18 -7 omake-branches/omake_0_9_7_ref/src/env/omake_ir_free_vars.ml
+14 -10 omake-branches/omake_0_9_7_ref/src/env/omake_ir_semant.ml
+22 -10 omake-branches/omake_0_9_7_ref/src/eval/omake_eval.ml
+9 -5 omake-branches/omake_0_9_7_ref/src/ir/omake_ir.ml
+31 -19 omake-branches/omake_0_9_7_ref/src/ir/omake_ir_print.ml
+2 -2 omake-branches/omake_0_9_7_ref/src/ir/omake_ir_util.ml

Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2005-10-02 19:39:41 -0700 (Sun, 02 Oct 2005)
Revision: 7815
Log message:

      Updated Dll.om to use mutable variables.  This solution wraps
      the entire code into a single function.
      
      I've thought about the alternatives to capturing mutable variables,
      but I currently think that the no-capturing policy is the best.
      
      Arguments for:
          1. It is simple.
          2. It can always be circumvented with explicit initializers,
             for example:
      
                 mutable.X = foo
      
                 private.initialize() =
                     X = foo
      
                 public.g() =
                     println($"X = $(X)")     # fails if called out of scope of X
      
                 public.f() =
                     initialize()
                     println($"X = $(X)")     # prints "X = foo"
          3. Mutable variables *never* escape--this is very cool.
      
      Arguments against:
          1. Imperative programming is harder than functional, but it
             is not clear that the OMake solution is an optimum relative
             to the objectives.
          2. Performance relative to functional programming can be O(1) worse,
             because initializers may be needed.
          3. It is unlike other mainstream imperative languages, where
             mutable variables are often globally or statically-scoped.
      

Changes  Path
+4 -4 omake-branches/omake_0_9_7_ref/OMakefile
+50 -49 omake-branches/omake_0_9_7_ref/lib/parse/C/Dll.om
+1 -1 omake-branches/omake_0_9_7_ref/src/Makefile
+1 -1 omake-branches/omake_0_9_7_ref/src/Makefile.nt
Properties omake-branches/omake_0_9_7_ref/tests/dll/gtk
Added omake-branches/omake_0_9_7_ref/tests/dll/gtk/README.sh
Properties omake-branches/omake_0_9_7_ref/tests/dll/gtk/README.sh
+2 -2 omake-branches/omake_0_9_7_ref/tests/dll/gtk/Test.om
+1 -1 omake-branches/omake_0_9_7_ref/tests/dll/gtk/dll.c
Properties omake-branches/omake_0_9_7_ref/tests/dll/simple
Added omake-branches/omake_0_9_7_ref/tests/dll/simple/README.sh
Properties omake-branches/omake_0_9_7_ref/tests/dll/simple/README.sh
+3 -3 omake-branches/omake_0_9_7_ref/tests/dll/simple/Test.om
+1 -1 omake-branches/omake_0_9_7_ref/tests/dll/simple/dll.c

Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2005-10-03 19:33:43 -0700 (Mon, 03 Oct 2005)
Revision: 7827
Log message:

      (Bug 525) In "omake --version", when the default library directory is
      overridden by OMAKELIB environment variable or the Windows registry, print
      both the default location and the location that is actually being used.
      

Changes  Path
+13 -8 omake-branches/0.9.6.x/src/ir/omake_state.ml
+1 -0 omake-branches/0.9.6.x/src/ir/omake_state.mli
+2 -3 omake-branches/0.9.6.x/src/magic/omake_gen_magic.ml
+4 -1 omake-branches/0.9.6.x/src/main/omake_main.ml

Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2005-10-03 19:50:12 -0700 (Mon, 03 Oct 2005)
Revision: 7830
Log message:

      Merged revisions 7812:7827 from the 0.9.6.x branch (this skipped a bunch of
      revisions that contained things backported from 0.9.7 back to 0.9.6):
      
        svn merge -r 7812:7827 svn+ssh://svn.metaprl.org/svnroot/mojave/omake-branches/0.9.6.x
      

Changes  Path
+17 -9 omake-branches/omake_0_9_7_ref/src/ir/omake_state.ml
+1 -0 omake-branches/omake_0_9_7_ref/src/ir/omake_state.mli
+2 -3 omake-branches/omake_0_9_7_ref/src/magic/omake_gen_magic.ml
+4 -1 omake-branches/omake_0_9_7_ref/src/main/omake_main.ml

Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2005-10-07 20:03:08 -0700 (Fri, 07 Oct 2005)
Revision: 7877
Log message:

      Use Lm_symbol_hash.
      

Changes  Path
+7 -0 omake-branches/omake_0_9_7_ref/mk/make_gen
+5 -5 omake-branches/omake_0_9_7_ref/src/Makefile
+5 -5 omake-branches/omake_0_9_7_ref/src/Makefile.nt
+3 -0 omake-branches/omake_0_9_7_ref/src/env/omake_env.ml
+2 -2 omake-branches/omake_0_9_7_ref/src/libmojave/OMakefile

Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2005-10-13 19:09:56 -0700 (Thu, 13 Oct 2005)
Revision: 7904
Log message:

      Made -debug-shell a bit more verbose (trying to find the source of Yegor's
      waitpid problems).
      

Changes  Path
+7 -1 omake-branches/0.9.6.x/src/shell/omake_shell_job.ml

Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2005-10-13 22:40:56 -0700 (Thu, 13 Oct 2005)
Revision: 7906
Log message:

      Allow the .input file to have the CRLF line terminators even when compiling on
      Unix.
      

Changes  Path
+12 -0 omake-branches/0.9.6.x/src/env/omake_gen_parse.ml

Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2005-10-14 00:47:12 -0700 (Fri, 14 Oct 2005)
Revision: 7910
Log message:

      - My previous commit had an off-by-one error, fixing.
      
      - A little more debugging in "-debug-shell".
      
      - Regenerated some documentation.
      

Changes  Path
+19 -7 omake-branches/0.9.6.x/doc/html/omake-doc.html
+19 -7 omake-branches/0.9.6.x/doc/html/omake-system.html
Binary omake-branches/0.9.6.x/doc/ps/omake-doc.dvi
Binary omake-branches/0.9.6.x/doc/ps/omake-doc.pdf
Binary omake-branches/0.9.6.x/doc/ps/omake-doc.ps
+1 -1 omake-branches/0.9.6.x/src/env/omake_gen_parse.ml
+4 -0 omake-branches/0.9.6.x/src/shell/omake_shell_job.ml

Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2005-10-17 08:40:40 -0700 (Mon, 17 Oct 2005)
Revision: 7916
Log message:

      Include Pervasives definitions to files at parse time.
      This means that the following code will work as expected.
      
          f() =
              stdout = ...
              ...
      
      Before, since stdout was unknown, this would have to be explicit.
      
          f() =
              Pervasives.stdout = ...
              ...
      
      Note, that variable definitions in functions are still chosen
      statically, and they default to private.  Consider the following
      code.
      
          open build/C    # Defines CFLAGS
          f(file) =
              CFLAGS = -g  # This will be a private definition, not C.CFLAGS
              $(file):
      
      There are good arguments for and against this approach.
      

Changes  Path
+5 -2 omake-branches/omake_0_9_7_ref/src/build/omake_builtin.ml
+12 -0 omake-branches/omake_0_9_7_ref/src/env/omake_env.ml
+5 -3 omake-branches/omake_0_9_7_ref/src/env/omake_env.mli
+17 -0 omake-branches/omake_0_9_7_ref/src/env/omake_ir_ast.ml
+2 -0 omake-branches/omake_0_9_7_ref/src/env/omake_ir_ast.mli
+4 -1 omake-branches/omake_0_9_7_ref/src/eval/omake_eval.ml
+1 -0 omake-branches/omake_0_9_7_ref/src/eval/omake_eval.mli
+1 -0 omake-branches/omake_0_9_7_ref/src/ir/omake_ir.ml

Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2005-10-17 09:45:19 -0700 (Mon, 17 Oct 2005)
Revision: 7917
Log message:

      Allow the external forced vars to be redefined.
      

Changes  Path
+16 -4 omake-branches/omake_0_9_7_ref/src/env/omake_ir_ast.ml

Changes by: Cristian Tapus (crt at cs.caltech.edu)
Date: 2005-10-21 21:37:31 -0700 (Fri, 21 Oct 2005)
Revision: 7969
Log message:

      Not all tex files have citations, and in certain cases latex does
      not produce an .aux file, so we should check if the .aux file exists
      before checking if there are any citations.
      
      

Changes  Path
+1 -1 omake/lib/build/LaTeX.om

Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2005-10-31 19:09:38 -0800 (Mon, 31 Oct 2005)
Revision: 8058
Log message:

      - Copying libmojave's omake_0_9_7_ref branch to trunk
      - Moving all the libmojave branches to "closed"
      - Switching OMake (both 0.9.6.x and omake_0_9_7_ref branches) to using the
        libmojave trunk.
      

Changes  Path
Copied libmojave-branches/closed/S4-jprover
Copied libmojave-branches/closed/abstract_vars
Copied libmojave-branches/closed/bound_contexts2
Copied libmojave-branches/closed/configure
Copied libmojave-branches/closed/configure2
Copied libmojave-branches/closed/fast_parser
Copied libmojave-branches/closed/jprover-rule-based-unif
Copied libmojave-branches/closed/lexer_args_correction
Copied libmojave-branches/closed/nasslli_branch
Copied libmojave-branches/closed/new_match_table
Copied libmojave-branches/closed/new_parser
Copied libmojave-branches/closed/new_parser2
Copied libmojave-branches/closed/new_parser3
Copied libmojave-branches/closed/new_scanner
Copied libmojave-branches/closed/new_scanner2
Copied libmojave-branches/closed/ocaml_3_07
Copied libmojave-branches/closed/omake-0.9.6.x
Copied libmojave-branches/closed/omake_0_9_7_pre2
Copied libmojave-branches/closed/omake_0_9_7_pre3
Copied libmojave-branches/closed/omake_0_9_7_pre4
Copied libmojave-branches/closed/omake_0_9_7_pre5
Copied libmojave-branches/closed/omake_0_9_7_pre6
Copied libmojave-branches/closed/omake_0_9_7_pre7
Copied libmojave-branches/closed/omake_0_9_7_type1
Copied libmojave-branches/closed/opname_classes
Copied libmojave-branches/closed/opname_classes2
Copied libmojave-branches/closed/opname_classes3
Copied libmojave-branches/closed/opname_classes4
Copied libmojave-branches/closed/quote_param
Copied libmojave-branches/closed/recursive_sequents
Copied libmojave-branches/closed/recursive_sequents2
Copied libmojave-branches/closed/shell_begin
Copied libmojave-branches/closed/strictscope1
Copied libmojave-branches/closed/strictscope2
Copied libmojave-branches/closed/strictscope3
Copied libmojave-branches/closed/stricttest1
Copied libmojave-branches/closed/thread_select
Copied libmojave-branches/closed/version_0_9_7_pre1
Properties omake-branches/0.9.6.x/src
Properties omake-branches/omake_0_9_7_ref/src

Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2005-10-31 20:42:22 -0800 (Mon, 31 Oct 2005)
Revision: 8063
Log message:

      Working on OCaml 3.09.0 compatibility.
      

Changes  Path
+2 -2 omake-branches/0.9.6.x/OMakefile
+1 -1 omake-branches/0.9.6.x/mk/defaults
+7 -0 omake-branches/0.9.6.x/mk/make_gen
+5 -5 omake-branches/0.9.6.x/src/Makefile
+5 -5 omake-branches/0.9.6.x/src/Makefile.nt
+17 -17 omake-branches/0.9.6.x/src/env/omake_env.ml
+12 -19 omake-branches/0.9.6.x/src/exec/omake_exec_remote.ml
+1 -1 omake-branches/0.9.6.x/src/ir/omake_cache.ml
+2 -2 omake-branches/0.9.6.x/src/libmojave/OMakefile

Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2005-10-31 20:53:58 -0800 (Mon, 31 Oct 2005)
Revision: 8064
Log message:

      We should not assume that .aux always exists (\nofiles command would disable
      .aux creation). Based on Cristian's patch.
      

Changes  Path
+10 -8 omake-branches/0.9.6.x/lib/build/LaTeX.om

Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2005-10-31 21:10:21 -0800 (Mon, 31 Oct 2005)
Revision: 8066
Log message:

      Merging the 0.9.6.x branch changes (revisions 7828 through 8064):
      
        svn merge -r 7828:8064 svn+ssh://svn.metaprl.org/svnroot/mojave/omake-branches/0.9.6.x
      
        (with some manual editing)
      

Changes  Path
+2 -2 omake-branches/omake_0_9_7_ref/OMakefile
+19 -7 omake-branches/omake_0_9_7_ref/doc/html/omake-doc.html
+19 -7 omake-branches/omake_0_9_7_ref/doc/html/omake-system.html
+9 -7 omake-branches/omake_0_9_7_ref/lib/build/LaTeX.om
+1 -1 omake-branches/omake_0_9_7_ref/mk/defaults
+1 -1 omake-branches/omake_0_9_7_ref/src/env/omake_env.ml
+12 -0 omake-branches/omake_0_9_7_ref/src/env/omake_gen_parse.ml
+12 -19 omake-branches/omake_0_9_7_ref/src/exec/omake_exec_remote.ml
+1 -1 omake-branches/omake_0_9_7_ref/src/ir/omake_cache.ml
+11 -1 omake-branches/omake_0_9_7_ref/src/shell/omake_shell_job.ml