Commit Graph

153 Commits

Author SHA1 Message Date
Lesenechal Remi
e9db0afffa WIIP 2020-06-30 19:15:04 +02:00
Pierre-Emmanuel Wulfman
bc259fcde7 Feature/transpiler 2020-06-29 13:05:34 +00:00
Suzanne Dupéron
c1d211d98c Debug prints for the new typer: output JSON 2020-06-24 02:07:02 +01:00
Pierre-Emmanuel Wulfman
02d66cf536 rename operators to predefined 2020-06-23 16:35:30 +02:00
Pierre-Emmanuel Wulfman
aa849f6dcb renaming of passes 2020-06-23 16:35:28 +02:00
Lesenechal Remi
4969b34225 more annotation on the global error type 2020-06-15 15:33:32 +02:00
Lesenechal Remi
c6b95bf07a result monad refactoring:
- do not use plain JSON rep for errors and use polymorphic variants instead
- split formatting for human readable and JSON output
- no more simple_errors simple_fails
- much less result bindings used in stages
2020-06-15 14:45:28 +02:00
Sander Spies
d7b4a97731 PascaLIGO fixes. 2020-06-08 15:00:10 +02:00
Sander Spies
9495901b75 Merge 2020-06-05 12:23:32 +02:00
Christian Rinderknecht
c67fc4aa34 Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@pprint 2020-06-04 13:26:29 +02:00
Sander Spies
64076d882b Merge 2020-06-04 10:27:19 +02:00
Suzanne Dupéron
7257aaaff4 Solver: use a list of heuristics instead of hardcoding them. 2020-06-03 13:07:48 +01:00
Christian Rinderknecht
2d74681c96 Added more to the PascaLIGO pretty-printer.
Improved the AST of PascaLIGO to better capture the struture.
2020-05-30 20:24:47 +02:00
Sander Spies
e9f5c3e1ae Initial work for the ReasonLIGO pretty printer. 2020-05-29 19:07:44 +02:00
Christian Rinderknecht
320e31cb41 * [ligo pretty-print foo.mligo] works.
* [ligo pretty-print foo.religo] is a transpiler (for now) and needs
    more work.

  * Renamed functions *_ast into *_cst. One day, module AST should be
    renamed CST for clarity and consistency.
2020-05-25 20:29:48 +02:00
Pierre-Emmanuel Wulfman
7bcf46d3bc Merge branch 'refactoring_mini-c_type' into 'dev'
Refactor Mini-c types for conformity with the other stage

See merge request ligolang/ligo!598
2020-05-13 11:01:20 +00:00
Lesenechal Remi
9eeac11628 some environment cleanup 2020-05-07 16:30:06 +02:00
Pierre-Emmanuel Wulfman
62f97e2f7f replace type_value by type_expresion end expression' by
expression_content for conformity
2020-04-30 11:22:56 +02:00
Suzanne Dupéron
0580f21896 moved core and solver types to the AST, removed functor hell (Map, Set, UnionFind) 2020-04-29 21:32:50 +01:00
Tom Jack
5df005f4b7 Add print-mini-c --optimize=entrypoint to print optimized mini_c 2020-04-21 13:28:39 +00:00
Lesenechal Remi
5bed9dadef WIP: michelson_pair 2020-04-19 15:18:46 +02:00
Christian Rinderknecht
b23b2d1dbb Plugged the preprocessor into the compiler's CLI. 2020-04-12 15:26:47 +02:00
Pierre-Emmanuel Wulfman
6cafb4026b adding E_sequence in sugar 2020-03-18 18:13:02 +01:00
Pierre-Emmanuel Wulfman
5a4c0b32fb rewrite test suite to compare value from ast_imperative instead of ast_core; includes uncompiler fo stage 4 and 6 2020-03-18 16:00:34 +01:00
Pierre-Emmanuel Wulfman
6dd7afbeb1 change passes name concrete_to_imperative, imperative_to_sugar, sugar_to_core 2020-03-18 16:00:34 +01:00
Pierre-Emmanuel Wulfman
8b3877a92c rename AST to imperative, sugar and core. Factor code in compile 2020-03-18 16:00:34 +01:00
Pierre-Emmanuel Wulfman
2abd737ed3 compiling 2020-03-18 16:00:34 +01:00
Lesenechal Remi
97a85766d3 add a flag to disable michelson typechecking in compile-contract 2020-03-16 12:19:23 +01:00
Pierre-Emmanuel Wulfman
27f583266e test for tail recursion 2020-03-12 16:05:17 +01:00
Lesenechal Remi
e2776e9849 New checks in the self_ast_typed pass:
* Ast_typed stage is now aware of the main function name
* main function type is checked against expected contract types
* Tezos.self (returning contract type) is checked against main function type
* In general, Ast_typed.compile signature has been changed to enable/disable contract-related checks
2020-03-09 11:23:08 +01:00
Lesenechal Remi
f0ad2fed04 new pass : self_ast_typed 2020-03-09 11:23:08 +01:00
Lesenechal Remi
9de04123d3 --balance option and updated tests 2020-03-05 20:52:47 +01:00
Tom Jack
d10b95357f Detect gas exhaustion while typechecking 2020-03-05 10:43:40 -06:00
Tom Jack
23353b0e27 Clarify internal sender/source options 2020-02-20 12:17:31 -06:00
Lesenechal Remi
e63f2407c2 carthage update:
* update dune & opam files
* update modules in source
2020-02-17 13:10:51 +01:00
Lesenechal Remi
29959ec915 Initial LIGO interpreter version 2020-02-09 18:22:33 +01:00
Pierre-Emmanuel Wulfman
ae82144418 removing assign, tuples, sequences, 2020-02-09 00:31:30 +01:00
Christian Rinderknecht
a6bf16cbe2 Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev 2020-01-29 16:49:42 +01:00
Suzanne Dupéron
1734d31a41 Merge branch 'dev' of gitlab.com:ligolang/ligo into dev 2020-01-27 15:10:30 +00:00
Christian Rinderknecht
fc3385389b [WIP] Refactoring the front-end. 2020-01-27 16:05:47 +01:00
Christian Rinderknecht
1a1a8d986c Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev 2020-01-24 14:04:25 +01:00
Christian Rinderknecht
e85486eae4 Improved slightly the formatting of some error messages.
Fixed the bug in the parser: I wrongly closed [stdout].
2020-01-24 14:03:25 +01:00
Christian Rinderknecht
41d6956b66 [WIP] Added traces to debug 2020-01-24 12:56:05 +01:00
Lesenechal Remi
fd47f51031 add a new CLI command: list-declarations 2020-01-23 22:12:33 +01:00
Suzanne Dupéron
1592404e03 Merge commit '4977c18e' into bugfix/new-typer 2020-01-23 11:56:02 +01:00
Suzanne Dupéron
0f420eaaf5 typer: bugfix: tuple is now a built-in type constructor 2020-01-22 15:17:10 +01:00
Suzanne Dupéron
77fdb739b6 typer: typecheck expression and subst (used e.g. to typecheck arguments of contracts) 2020-01-22 13:49:32 +01:00
Christian Rinderknecht
a2a35cc953 Fixed helpers.ml and promoted negative test of reserved name for PascaLIGO. 2020-01-22 12:47:11 +01:00
Lesenechal Remi
a2c51ddbcf better description for bad_contract error message 2020-01-21 13:26:38 +01:00
Lesenechal Remi
57aeb4e931 detect self_address when not at top level 2020-01-21 13:26:38 +01:00