Skip to content
Snippets Groups Projects
  1. May 30, 2008
  2. Mar 11, 2008
    • Erwan Jahier's avatar
      Simplify significantly the node representation. The rational for this · 7f628ceb
      Erwan Jahier authored
      change is
      	- make the parser simpler
      	- make the compilation simpler
      	- make everything simpler actually...
      	- accepts more correct programs.
      	- etc.
      
      Indeed, before, we had specific syntax nodes for
      	- extern nodes
      	- aliased nodes
      	- abstract nodes
      	- normal nodes
      which leads to duplicate code everywhere. Now, we have a more generic
      representation.
      
      The nice thing is that the parser is much simpler, and a lot of
      duplicated code is avoided (for example, extern and abstract nodes do
      now share the same code).
      
      The bad thing is that we have more "assert false" lying everywere due
      to this «too rich» representation, in order to deal with cases
      that can never happen. For exemple, we have to do something with
      nodes that have  both an alias and a body. This cannot happen of
      course, so we issue an "assert false", which is a little bit painful,
      as it have been rejected by the parser anyway.
      
      Moreover, for some reason, external node params could not be clocked,
      and cannot have static params. Maybe it is not possible to compile
      such nodes (I don't know yet), but we should not raise a syntax error IMHO.
      
      Somehow, what was done was very similar to ask the parser to perform type
      checking.
      6.3.0
      7f628ceb
  3. Feb 07, 2008
  4. Feb 06, 2008
    • Erwan Jahier's avatar
      src/syntaxTree.ml · 1a14b111
      Erwan Jahier authored
      src/syntaxTreeCore.ml (new file)
      	Split      syntaxTree.ml      into     syntaxTree.ml      and
      	syntaxTreeCore.ml. The idea is that lic2loc should be able to
      	use syntaxTreeCore.ml verbatim.
      
      src/lxm.ml
      src/lxm.mli
      	remove pack_name from  this module, so that it  can be shared
      	with  lic2loc too  (this is  mandatory  since it  is used  by
      	SyntaxTreeCore)
      
      src/compile.ml
      src/compiledData.ml
      src/evalConst.ml
      src/evalConst.mli
      src/evalType.ml
      src/evalType.mli
      src/expandPack.ml
      src/lazyCompiler.ml
      src/main.ml
      src/parser.mly
      src/symbolTab.ml
      src/symbolTab.mli
      src/syntaxTab.ml
      src/syntaxTreeDump.ml
      src/syntaxTreeDump.mli
      src/test/Makefile
      src/test/packs.lus
      src/test/test.res.exp
      	opening SyntaxTreeCore  module, and inline  the definition of
      	Lxm.pack_name.
      
      	Also,  begin  to  replace  oper  by node  or  predef_node  in
      	identifiers, in order to get a more consistant naming scheme.
      1a14b111
  5. Jan 30, 2008
  6. Jan 28, 2008
  7. Dec 17, 2007
  8. Dec 14, 2007
  9. Dec 05, 2007
    • Erwan Jahier's avatar
      More cleanning. · a2eeaef0
      Erwan Jahier authored
      Add basic regression tests.
      
      Add "assert false" statements everywhere it was necessary.
      
      Add the fby operator in the syntax.
      a2eeaef0
  10. Nov 15, 2007
    • Erwan Jahier's avatar
      Un peu de mnage avant de commencer. · 3b6c999f
      Erwan Jahier authored
      	new file:   src/.compile.ml
      	modified:   src/TAGS
      	modified:   src/main.ml
      	modified:   src/syntaxe.ml
      
       Changed but not updated:
         (use "git add/rm <file>..." to update what will be committed)
      
      	deleted:    src/doc/html/EvalConst.html
      	deleted:    src/doc/html/EvalType.html
      	deleted:    src/doc/html/ExpandPack.html
      	deleted:    src/doc/html/LazyCompiler.html
      	deleted:    src/doc/html/Lxm.html
      	deleted:    src/doc/html/SrcTab.html
      	deleted:    src/doc/html/SymbolTab.html
      	deleted:    src/doc/html/Verbose.html
      	deleted:    src/doc/html/index.html
      	deleted:    src/doc/html/index_attributes.html
      	deleted:    src/doc/html/index_class_types.html
      	deleted:    src/doc/html/index_classes.html
      	deleted:    src/doc/html/index_exceptions.html
      	deleted:    src/doc/html/index_methods.html
      	deleted:    src/doc/html/index_module_types.html
      	deleted:    src/doc/html/index_modules.html
      	deleted:    src/doc/html/index_types.html
      	deleted:    src/doc/html/index_values.html
      	deleted:    src/doc/html/style.css
      	deleted:    src/doc/html/type_EvalConst.html
      	deleted:    src/doc/html/type_EvalType.html
      	deleted:    src/doc/html/type_ExpandPack.html
      	deleted:    src/doc/html/type_LazyCompiler.html
      	deleted:    src/doc/html/type_Lxm.html
      	deleted:    src/doc/html/type_SrcTab.html
      	deleted:    src/doc/html/type_SymbolTab.html
      	deleted:    src/doc/html/type_Verbose.html
      	deleted:    src/lpp.prj
      	deleted:    src/md5.ml
      	deleted:    src/ocamldoc.out
      	deleted:    src/parser.output
      	deleted:    src/t.ml
      	deleted:    src/v.ml
      	deleted:    src/xx.ml
      3b6c999f
  11. Oct 19, 2007
Loading