Skip to content
Snippets Groups Projects
  1. Dec 20, 2012
  2. Dec 18, 2012
  3. Dec 13, 2012
    • Erwan Jahier's avatar
      Some work to plug back the array expansion. · 8d9c3422
      Erwan Jahier authored
      8d9c3422
    • Erwan Jahier's avatar
      Documentation et renommage des modules. · 65dfa567
      Erwan Jahier authored
      nb: les tests ne passent toujours bien sur.
      
      * Partie lus -> AST
      
      predef.ml -> srcPredef.ml
      syntaxTreeCore.ml -> astCore.ml
      syntaxTree.ml     -> astV6.ml
      syntaxTreeDump.mli-> astV6Dump.mli
      
      * Partie Ast -> Ast
      
      solveIdent.mli -> astRecognizePredef.mli
      syntaxTab.mli -> astTab.mli
      symbolTab.mli -> astTabSymbol.mli
      
      * Partie  AST -> lic (static evaluation)
      
      eff.ml  -> lic.ml
      getEff.mli -> ast2lic.mli
      lazyCompiler.mli -> licTab.mli
      builtIn.ml -> licMetaOp.ml
      predefEval*.ml -> licEval*.ml
      name.mli -> licName.mli
      
      * Partie Lic -> Lic
      
      uniqueOutput.mli      -> l2lCheckOutputs.mli
      structArrayExpand.mli -> l2lExpandArrays.mli
      nodesExpand.mli       -> l2lExpandNodes.mli
      doNoPoly.ml           -> l2lRmPoly.ml
      doAliasTypes.ml       -> l2lAliasType.ml
      doSplit.ml            -> l2lSplit.ml
      65dfa567
  4. Dec 11, 2012
    • Erwan Jahier's avatar
      Un petit bilan des changements effectués par Pascal · dce00f59
      Erwan Jahier authored
      + remise en place du souk qu'il a mis dans le repertoire test.
      
      - il a commencé à rajouter le CondAct (tout est parti de la en fait...)
      - il a coupé le LazyCompiler en morceaux
      
      Pour cela, il a créé un nouveau module LicPrg qui définit la
      structure de données (SDD) en sortie du LazyCompiler. Ensuite, les
      diverses tranformations src2src sont faites à partir de cette SDD.
      
      - il a débranché (temporairement) l'expansion de noeud et de array/structure
      
      - il a débranché ma pseudo inférence de type et a mis à la place une
      vérification de types.
      
      - Le traitement du polymorphisme est effectué via une transfo src2src
      dans DoNoPoly (que je vais renommer en RmPoly)
      
      --------------------------------------------------------------------------
      Par ailleurs,
      
      J'ai créé un todo.org et un README.org que je vais essayer de tenir à jour.
      
      nb: les tests ne passent toujours bien sur.
      dce00f59
  5. Aug 10, 2012
    • Pascal Raymond's avatar
      gros menage : · fbd5b3bc
      Pascal Raymond authored
      - plus de macros prefefinies (e.g. FILL, BOOLRED etc...)
        (remplacé par la notion de BuiltIn)
      - split.ml adapté et remanié pour rentrer dans le moule
        source to source (voir DoSplit)
      fbd5b3bc
  6. Aug 08, 2012
  7. Jul 11, 2012
    • Pascal Raymond's avatar
      Debut de DoNoPoly, qui necessite une modif assez · 4e1418a0
      Pascal Raymond authored
      importante du mecanisme de UnifyType :
      - fait :
        * definition de Eff.poly_match
        * TypeVar type_var au lieu de Any/Overload
          avec type_var = Any | AnyNum
          (pour l'instant et pour longtemps ?!)
      - à faire :
        * revoir UnifyType pour qu'il rende un poly_match
        * stocker là où c'est nécessaire les poly_match
          calculés lors du type check
          (pour les CALL et peut-être les sargs ?)
      4e1418a0
  8. Jul 10, 2012
  9. Jul 07, 2012
  10. Jul 06, 2012
  11. May 19, 2011
  12. Jan 23, 2009
  13. Aug 29, 2008
  14. Aug 28, 2008
  15. Jul 22, 2008
  16. Jul 01, 2008
  17. May 30, 2008
  18. May 28, 2008
  19. May 02, 2008
  20. Apr 02, 2008
    • Erwan Jahier's avatar
      Add a --compile-all-items option, and use it in the non-regression · b6db7c6b
      Erwan Jahier authored
      tests.
      
      Also, Add the possibility to have several lustre files in the
      command-line arguments.
      
      remove the power operator.
      
      Define a lustre.lus that contains a packaged version of Lustre
      predefined operators. It will be in the standard lustre library,
      and should be accessible directly (path).
      6.8.0
      b6db7c6b
    • Erwan Jahier's avatar
      Add stuff to output the lic file. · 2b30a91d
      Erwan Jahier authored
      For non-regression tests, do not use Lazycompiler.test function
      anymore and just use  LazyCompiler.node_check instead.
      
      put in the new file compiledDataDump.ml all the stuff
      related to string convertions of CompiledData items.
      6.7.0
      2b30a91d
  21. Feb 15, 2008
    • Erwan Jahier's avatar
      Resolve the inconsistant use of node and oper identifiers in the code. · de2a5f14
      Erwan Jahier authored
      To do that, we :
      
      (1) totally remove  (in the  ocaml code) the  use of "oper",  and use
      "node" instead.  Indeed, a node  is a memoryfull operator, as opposed
      to function that are memoryless operators.  However, lus2lic does not
      really care about memoryless  and memoryfull information. Therefore I
      prefer  to use  node everywhere,  and to  flag node_info  to indicate
      whether it has memories or not.
      
      (2) change the syntaxTreeCore type to make it more general. Indeed,
          the distinction between functions and nodes was
      
          - redundant:  extern nodes  and (extern)  functions  were handled
          differently (NodeExtern versus ExtNode (was named FUNC before)).
      
          - and  incomplete:   it  was  not  possible   to  provide  static
            parameters to function, nor to define functions with body, etc.
      
      Now a  function is  just a memoryless  node. The check  that function
      indeed use no memory will be done later.
      
      (3) also,  change  the  parser   so  that  functions  with  body  are
          accepted.
      
      (4) in order  to do it step by  step, I add the  "extern" keyword" so
          that extern nodes and functions are more easy to parse. I will
          remove it later.
      de2a5f14
  22. Feb 11, 2008
  23. 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
  24. Jan 30, 2008
    • Erwan Jahier's avatar
      src/main.ml: · 36f22c50
      Erwan Jahier authored
      src/lxm.ml:
      src/global: (new file)
         Add the lustre file name in error messages.
      
      src/compiledData.ml:
         Better Data structure dumping (string_of_type_eff,string_of_const_eff),
         and more dumping (LazyCompiler.check_const_interface).
      
      src/lazyCompiler.ml:
         Fix a bug that prevented enum constants to be exported.
         Indeed, in LazyCompiler.const_check_interface_do, only extern
         constants (Extern_const_eff) were accepted in the provided part, whereas
         enum contants (Enum_const_eff) should also be accepted.
      
         Force constants interface checking in LazyCompiler.test.
      
      src/test/Makefile:
      src/test/onlyroll.lus:
      src/test/heater_control.lus:
      src/test/pfs.lus:
         Some more test files.
      6.1.1
      36f22c50
  25. Jan 28, 2008
  26. Dec 21, 2007
  27. Dec 18, 2007
  28. Dec 17, 2007
  29. Dec 14, 2007
  30. 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
  31. Oct 19, 2007
Loading