Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2004-09-01 11:34:14 -0700 (Wed, 01 Sep 2004)
Revision: 511
Log message:
More updates to the book.
Changes | Path |
+2 -2 | libmojave/cutil/lm_ssl.c |
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2004-09-01 19:43:08 -0700 (Wed, 01 Sep 2004)
Revision: 512
Log message:
Moved the globber, lexer, parser, and channel into libmojave proper.
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2004-09-01 20:09:00 -0700 (Wed, 01 Sep 2004)
Revision: 513
Log message:
Split out the C code needed by libmojave.
Changes | Path |
Added | libmojave/cutil/lm_channel.c |
Properties | libmojave/cutil/lm_channel.c |
+9 -6 | omake/Files |
+0 -46 | omake/src/clib/omake_shell_sys.c |
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2004-09-01 20:12:03 -0700 (Wed, 01 Sep 2004)
Revision: 514
Log message:
Declarations needed to compile on Win32.
Changes | Path |
+15 -0 | libmojave/cutil/lm_channel.c |
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2004-09-01 20:17:46 -0700 (Wed, 01 Sep 2004)
Revision: 515
Log message:
Incorporate the new files in libmojave.
Changes | Path |
+3 -1 | libmojave/cutil/Files |
+2 -1 | libmojave/stdlib/Files |
+6 -2 | libmojave/stdlib/OMakefile |
+5 -1 | libmojave/util/Files |
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2004-09-02 00:39:54 -0700 (Thu, 02 Sep 2004)
Revision: 516
Log message:
lm_threads_pool.ml is a generated symlink and should be removed
on "omake clean".
Changes | Path |
+2 -1 | libmojave/stdlib/OMakefile |
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2004-09-02 07:33:02 -0700 (Thu, 02 Sep 2004)
Revision: 518
Log message:
Compute the number of arguments when the regular expression is
calculated.
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2004-09-02 07:49:34 -0700 (Thu, 02 Sep 2004)
Revision: 519
Log message:
Argument counting won't work...
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2004-09-02 10:32:27 -0700 (Thu, 02 Sep 2004)
Revision: 520
Log message:
Factor precedence out of the parser module.
Changes | Path |
+136 -88 | libmojave/util/lm_parser.ml |
+22 -3 | libmojave/util/lm_parser.mli |
+1 -1 | omake/omake.html |
+1 -1 | omake/src/env/omake_parser.ml |
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2004-09-02 12:56:43 -0700 (Thu, 02 Sep 2004)
Revision: 521
Log message:
This is an initial start at an alternate form of parsing.
See theories/mmc/test/mmc_grammar.ml for an example.
This version is resource-based, but I've reached an issue.
If parsing is resource-based, then it has to be delayed until
runtime. That isn't so bad, and it has the advantage of being
able to use runtime values like precedences and conversions.
However, the filter still has to participate a little, by handling
special quotations. Something like:
<:parse< text >> --> Base_parser.parse "text"
This doesn't really work--we need the resource that contains the grammar.
<:parse< text >> --> Base_parser.parse (get_parser_resource ???) "text"
The problem is the ???.
It could be:
let mark = gensym () in
Mp_resource.set_bookmark mark;
get_parser_resource (Mp_resource.find mark)
However, it is obvious that Mp_resource was not designed for
this kind of interaction.
So, we either fix Mp_resource, or push this all back into the filter.
I don't really like the latter option because we add another resource-like
thing that the filter has to manage; we have to design a new syntax for it;
filter_prog.ml gets even larger; and we have to marshal PDAs and such.
Changes | Path |
+23 -1 | libmojave/util/lm_parser.ml |
+4 -1 | libmojave/util/lm_parser.mli |
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2004-09-02 17:27:55 -0700 (Thu, 02 Sep 2004)
Revision: 522
Log message:
Moving Jason's parser commit to the "new_parser" branch.
Changes | Path |
+1 -23 | libmojave/util/lm_parser.ml |
+1 -4 | libmojave/util/lm_parser.mli |
Changes by: ( at unknown.email)
Date: 2004-09-02 17:36:24 -0700 (Thu, 02 Sep 2004)
Revision: 523
Log message:
This commit was manufactured by cvs2svn to create branch 'new_parser'.
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2004-09-02 17:36:24 -0700 (Thu, 02 Sep 2004)
Revision: 524
Log message:
Re-adding Jason's filter changes to the branch
(without the base_parser and mmc_grammar files).
Changes | Path |
+23 -1 | libmojave-branches/new_parser/util/lm_parser.ml |
+4 -1 | libmojave-branches/new_parser/util/lm_parser.mli |
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2004-09-02 19:55:48 -0700 (Thu, 02 Sep 2004)
Revision: 525
Log message:
filter/base/filter_grammar.ml is the file that does most of the work
with parsing and lexing.
Added the initial lexer part.
Changes | Path |
+8 -3 | libmojave-branches/new_parser/util/lm_lexer.ml |
+1 -1 | libmojave-branches/new_parser/util/lm_lexer.mli |
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2004-09-03 09:39:24 -0700 (Fri, 03 Sep 2004)
Revision: 530
Log message:
This completes the base parser. Next thing is to hook it into the filter.
Changes | Path |
+11 -9 | libmojave-branches/new_parser/util/lm_channel.ml |
+1 -0 | libmojave-branches/new_parser/util/lm_channel.mli |
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2004-09-03 13:52:09 -0700 (Fri, 03 Sep 2004)
Revision: 531
Log message:
Added the grammar to Filter_cache_fun. Still no hooks to
camlp4. Needs a little more work in Lm_parser to take
the union of two parsers, but that part is nearly done.
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2004-09-04 13:19:06 -0700 (Sat, 04 Sep 2004)
Revision: 542
Log message:
Added hooks in Filter_cache_fun for calling the grammar functions.
Implemented precedence union in Lm_grammar.
Changes | Path |
+68 -9 | libmojave-branches/new_parser/util/lm_parser.ml |
+2 -0 | libmojave-branches/new_parser/util/lm_parser.mli |
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2004-09-04 14:40:28 -0700 (Sat, 04 Sep 2004)
Revision: 543
Log message:
Added the hooks in Filter_parse for the grammar.
Changes | Path |
+2 -0 | libmojave-branches/new_parser/util/lm_parser.ml |
+1 -0 | libmojave-branches/new_parser/util/lm_parser.mli |
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2004-09-05 10:00:08 -0700 (Sun, 05 Sep 2004)
Revision: 550
Log message:
Parser now rewrites in Relaxed mode so we can do capture and all that.
Changes | Path |
+3 -2 | libmojave-branches/new_parser/util/lm_glob.ml |
+1 -1 | libmojave-branches/new_parser/util/lm_lexer.ml |
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2004-09-05 20:30:51 -0700 (Sun, 05 Sep 2004)
Revision: 556
Log message:
Added the grammar for MMC.
This is in Mmc_core_ast, Mmc_ext_boolean, Mmc_ext_integer.
We have 3 shift/reduce conflicts in the core grammar. Somehow I'm
having trouble turning on the debug flags, MP_DEBUG=parsegen doesn't
seem to work, so I'll leave these conflicts for later.
Also, defining grammars in the .mli file is a little awkward.
Perhaps necessary, but I'm not sure.
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2004-09-05 23:08:52 -0700 (Sun, 05 Sep 2004)
Revision: 558
Log message:
Added the MIT license, as per Aleksey's text.
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2004-09-06 13:57:40 -0700 (Mon, 06 Sep 2004)
Revision: 571
Log message:
Fixed the problem with remove-emphasis.
However, this has a performance hit on the Lexer.
Will add to bugzilla.
Changes | Path |
+10 -0 | libmojave/util/lm_channel.ml |
+1 -0 | libmojave/util/lm_channel.mli |
+16 -1 | libmojave/util/lm_lexer.ml |
+6 -0 | libmojave/util/lm_lexer.mli |
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2004-09-06 16:03:30 -0700 (Mon, 06 Sep 2004)
Revision: 572
Log message:
Added MMC grammar. Added post-processing based on iforms.
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2004-09-06 20:04:53 -0700 (Mon, 06 Sep 2004)
Revision: 573
Log message:
Added the magic number generator. If you are concerned that your
data structure might be Marshaled, delimit the type definitions
as follows:
(* %%MAGICBEGIN%% *)
type foo = ...
...
(* %%MAGICEND%% *)
We actually don't need to worry much about marshaling the grammar.
Things marshaled are: a) lexer, b) parser, c) rewrites, d) terms,
e) sets, f) tables.
However, when one of these data structures changes, it will usually
force the theory files to be recompiled anyway.
Changes | Path |
+2 -0 | libmojave-branches/new_parser/util/lm_lexer.ml |
+2 -0 | libmojave-branches/new_parser/util/lm_parser.ml |
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2004-09-07 20:30:41 -0700 (Tue, 07 Sep 2004)
Revision: 576
Log message:
Attack the $HOME/.omake problem on two fronts.
1. Don't create the directories unless explicitly needed.
2. Set HOME to /tmp before running omake.
Move the -custom option to OCAML_BYTE_LINK_FLAGS
Changes by: ( at unknown.email)
Date: 2004-09-07 20:30:41 -0700 (Tue, 07 Sep 2004)
Revision: 577
Log message:
This commit was manufactured by cvs2svn to create branch 'new_parser2'.
Changes | Path |
Copied | libmojave-branches/new_parser2 |
Changes by: ( at unknown.email)
Date: 2004-09-08 20:08:22 -0700 (Wed, 08 Sep 2004)
Revision: 591
Log message:
This commit was manufactured by cvs2svn to create tag 'omake_0_9_2'.
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2004-09-10 13:26:04 -0700 (Fri, 10 Sep 2004)
Revision: 598
Log message:
Migrated the grammars into the .cm?z files.
Not quite finished, because grammar unions don't appear as
separate grammars.
Changes | Path |
+6 -10 | libmojave-branches/new_parser/util/lm_parser.ml |
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2004-09-10 17:03:27 -0700 (Fri, 10 Sep 2004)
Revision: 599
Log message:
Actually, it all works as expected, but parser generation
is a bit slow. I'm tuning it,
Changes | Path |
+45 -20 | libmojave-branches/new_parser/util/lm_parser.ml |
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2004-09-11 11:21:51 -0700 (Sat, 11 Sep 2004)
Revision: 602
Log message:
First function was missing symbols from nullable variables.
Changes | Path |
+22 -20 | libmojave-branches/new_parser/util/lm_parser.ml |
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2004-09-11 14:19:30 -0700 (Sat, 11 Sep 2004)
Revision: 603
Log message:
Updated parser so it is a lot faster. Not quite finished.
Changes | Path |
+279 -157 | libmojave-branches/new_parser/util/lm_parser.ml |
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2004-09-11 16:54:30 -0700 (Sat, 11 Sep 2004)
Revision: 605
Log message:
Upgrading the LALR generator.
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2004-09-11 18:14:17 -0700 (Sat, 11 Sep 2004)
Revision: 606
Log message:
LALR is mostly complete, trying with MetaPRL.
Changes | Path |
+41 -22 | libmojave-branches/new_parser/util/lm_parser.ml |
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2004-09-11 18:32:42 -0700 (Sat, 11 Sep 2004)
Revision: 607
Log message:
The new LALR changes look good.
Grammar compilation is now about 25 times faster than it
used to be. There is still room for improvement,
especially in the widespread use of Pervasives.compare,
which is being used in the comparison of production sets,
which are essentially shape list sets.
However, we are in the sub-second range for the grammars
that we have, and this is just a compile-time cost. Still
we want to keep compile times down.
Changes | Path |
+10 -14 | libmojave-branches/new_parser/util/lm_parser.ml |
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2004-09-11 19:04:41 -0700 (Sat, 11 Sep 2004)
Revision: 608
Log message:
Added a hash code to production items, for only a small improvement in speed.
Changes | Path |
+49 -32 | libmojave-branches/new_parser/util/lm_parser.ml |
Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2004-09-11 20:10:07 -0700 (Sat, 11 Sep 2004)
Revision: 609
Log message:
Preorder the states in the LALR(1) fixpoint calculation.
This shaves off even more time.
Changes | Path |
+90 -26 | libmojave-branches/new_parser/util/lm_parser.ml |
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2004-09-24 15:37:28 -0700 (Fri, 24 Sep 2004)
Revision: 613
Log message:
branch <-> trunk sync.
Changes | Path |
+4 -1 | libmojave-branches/new_parser/util/lm_glob.ml |
Changes by: Aleksey Nogin (nogin at cs.caltech.edu)
Date: 2004-09-24 15:38:14 -0700 (Fri, 24 Sep 2004)
Revision: 614
Log message:
More sync (missed a line in the previous one).
Changes | Path |
+1 -0 | libmojave-branches/new_parser/util/lm_glob.ml |