8 Commits

Author SHA1 Message Date
Christian Rinderknecht
24a1068dd4
Refactoring of the parser and AST so "let" constructs bind
exactly one variable. (Unfinished)

Fixed minor error in error printing in Lexer.

Added test in ParseMain.ml on --verbose=parser.
2019-05-22 19:38:09 +02:00
Christian Rinderknecht
331b11dcca
Refactored the AST and fixed the symlinks. 2019-05-20 21:42:11 +02:00
Christian Rinderknecht
af8d1083b7 Eased the translation from Ligodity AST to Liquidity AST.
More precisely,

  * I commented out the operator "@" on lists in Ligodity (it can
    be implemented as a function, as a workaround).

  * I removed the parallel "let" construct (hence the "and" keyword).

  * I renamed the type "field_assignment" into "field_assign", in
    order to match Pascaligo AST.

  * The reading of the command-line options is now done by
    calling the function [EvalOpt.read], instead of an ugly
    side-effect when loading the binary of the module. Options
    are now found in a record of type [EvalOpt.options].

  * I added support in the Ligodity lexer for #include CPP
    directives.
2019-05-15 16:05:03 +02:00
Christian Rinderknecht
fdf7704a7c Fixed the type for ECall. 2019-05-15 16:05:03 +02:00
Christian Rinderknecht
7de4a1802a Additions and refactoring so the AST gets even closer to that of PAscaligo.
* Added type annotations for expressions.
* Added bytes.
* Changed the AST for function calls
* Changed the AST for constructor applications
2019-05-15 16:05:03 +02:00
Christian Rinderknecht
011ae44b54 Finished narrowing the gap between Ligodity AST and Pascaligo AST. 2019-05-15 16:05:03 +02:00
Christian Rinderknecht
0796567aee Further reducing the distance from Ligodity AST to Pascaligo AST. 2019-05-15 16:05:03 +02:00
Christian Rinderknecht
dcbfbf781d Extended lib_utils/pos.ml{i}. First import of Ligodity. (No "simplify" yet.) 2019-05-15 16:04:37 +02:00