Commit Graph

830 Commits

Author SHA1 Message Date
Christian Rinderknecht
6f56b297f2 Improved the pretty-printers. 2020-06-04 19:01:31 +02:00
Pierre-Emmanuel Wulfman
5896b2a63a Add new matching cases and fix compilation of match_tuples 2020-06-04 16:37:18 +02:00
Christian Rinderknecht
a6972bf28b Putting back .links. 2020-06-04 14:59:15 +02:00
Christian Rinderknecht
8606528ddb More pretty-printing. 2020-06-04 14:55:40 +02:00
Christian Rinderknecht
3bec051115 Added back test LIGO input. 2020-06-04 13:32:35 +02:00
Christian Rinderknecht
c67fc4aa34 Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@pprint 2020-06-04 13:26:29 +02:00
Christian Rinderknecht
adee60c444 Improved example for testing the pretty-printer. 2020-06-04 13:26:03 +02:00
Sander Spies
64076d882b Merge 2020-06-04 10:27:19 +02:00
Sander Spies
fbc854f4d1 Improve ReasonLIGO pretty printing output. 2020-06-04 10:05:33 +02:00
Sander Spies
c30ade3b85 Contracts now compile. 2020-06-04 09:54:25 +02:00
Pierre-Emmanuel Wulfman
8f529a059a reorder folder 2020-06-03 14:47:36 +02:00
Pierre-Emmanuel Wulfman
cc615f1c9f Change type_operator 2020-06-03 14:29:46 +02:00
Suzanne Dupéron
81358db582 Cleanup of solver.ml, separated the heuristic's definition from its state in the solver (propagator_heuristic vs. propagator_state) 2020-06-03 13:07:48 +01:00
Suzanne Dupéron
7257aaaff4 Solver: use a list of heuristics instead of hardcoding them. 2020-06-03 13:07:48 +01:00
Suzanne Dupéron
861ab57a43 move solver_types to typesystem/ (because of dependencies. It should be merged with the AST really) 2020-06-03 13:07:41 +01:00
Sander Spies
c8ed8c38cc ReasonLIGO pretty printing testing. 2020-06-03 12:41:26 +02:00
Christian Rinderknecht
562f08dabc Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@pprint 2020-06-02 22:14:14 +02:00
Christian Rinderknecht
62fe3b793a More cases. 2020-06-02 22:14:06 +02:00
Christian Rinderknecht
b12e9a5baa Aligned printing of tuples of expressions on CameLIGO. 2020-06-01 19:17:59 +02:00
Christian Rinderknecht
c376650ee5 More to the PascaLIGO pretty-printer. 2020-06-01 18:47:42 +02: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
Christian Rinderknecht
3264277310 Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@pprint 2020-05-30 13:50:43 +02:00
Suzanne Dupéron
e2bf0f6466 Split the solver into separate files, no meaningful changes to the code. 2020-05-29 21:23:11 +02:00
Suzanne Dupéron
4a860830b9 bugfix: replace very bogus implementation of add_list with a clean one 2020-05-29 21:23:11 +02:00
Suzanne Dupéron
d5a6f46452 Fix indentation of one function (only whitespace change) 2020-05-29 21:23:11 +02:00
Suzanne Dupéron
4cb34a1d7e bugfix: new typer did not check a lambda's result' type against its annotation. 2020-05-29 21:18:57 +02:00
Suzanne Dupéron
2633d732a3 bugfix: Use Var.equal 2020-05-29 21:18:57 +02:00
Suzanne Dupéron
36e4c426c9 assert that the selectors of rules elected constraints that match the propagator's expecations 2020-05-29 21:18:57 +02:00
Suzanne Dupéron
69a007cca9 Describe the reason why a constraint or type was produced for more typer internals 2020-05-29 21:18:57 +02:00
Sander Spies
e9f5c3e1ae Initial work for the ReasonLIGO pretty printer. 2020-05-29 19:07:44 +02:00
Gabriel Alfour
54a0fb63d8 Merge branch 'opt-strip-annots' into 'dev'
Strip type annotations from some instructions

See merge request ligolang/ligo!638
2020-05-28 15:30:29 +00:00
Christian Rinderknecht
4779d12295 Merge branch 'rinderknecht@pprint' of gitlab.com:ligolang/ligo into rinderknecht@pprint 2020-05-28 12:57:06 +02:00
Christian Rinderknecht
96f9c032c0 Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@pprint 2020-05-28 12:52:15 +02:00
Pierre-Emmanuel Wulfman
e661416056 review 1 2020-05-28 10:53:54 +02:00
Gabriel ALFOUR
294e048aff remove environments from the ast 2020-05-27 23:01:07 +02:00
Lesenechal Remi
2de18b8727 solve bug in environment recomputing 2020-05-26 15:39:06 +02:00
Lesenechal Remi
705c29aeed remove old cases in transpiler 2020-05-26 15:39:06 +02:00
Christian Rinderknecht
d4801d942a Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@pprint 2020-05-26 14:53:41 +02:00
Sander Spies
88c652a25f Fix issue caused by addition of PPar. 2020-05-26 12:33:32 +02:00
Sander Spies
a4128d037b Add PPar around PTyped for proper pretty printing and CST equality with CameLIGO. 2020-05-26 11:06:38 +02:00
Tom Jack
daa1c18573 Strip type annotations from some instructions 2020-05-25 17:42:31 -05:00
Suzanne Dupéron
92069077df Auto-generated comparator for AST_typed 2020-05-25 20:42:16 +01:00
Christian Rinderknecht
b97d2d4000 Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@pprint 2020-05-25 20:31:19 +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
Christian Rinderknecht
041a48bc7b [PascaLIGO] Fixed the build of ParserMain.exe. 2020-05-25 16:04:35 +02:00
Pierre-Emmanuel Wulfman
41d1f5e1b0 fix 2 missing loc in cameligo simplifier EProj et ETuple 2020-05-25 15:43:57 +02:00
Christian Rinderknecht
2d88d2145e Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@pprint 2020-05-25 15:15:27 +02:00
Christian Rinderknecht
7992a4e507 Added cased to test the pretty-printer. 2020-05-25 12:42:19 +02:00
Christian Rinderknecht
6a3dab69a2 Exported pretty-printing function for CameLIGO and ReasonLIGO (transpiler). 2020-05-25 12:37:30 +02:00
Christian Rinderknecht
36cecfb019 * Renamed AST.TStringLiteral into AST.TString
* Fixed parsing of "begin let x = e1 in e2; e3 end"
2020-05-20 16:36:44 +00:00
galfour
0199f3e448 produce I_LAMBDA instead of I_PUSH directly for functions 2020-05-19 23:53:55 +02:00
Pierre-Emmanuel Wulfman
ea306bf685 Merge branch 'fix/srcloc_different_constructor' into 'dev'
FIX/Solve two bug with location

See merge request ligolang/ligo!627
2020-05-19 21:49:23 +00:00
Pierre-Emmanuel Wulfman
e04918047c Merge branch 'fix/srloc_in_mini-c' into 'dev'
fix/Add srcloc in mini-c

See merge request ligolang/ligo!582
2020-05-19 21:37:40 +00:00
Pierre-Emmanuel Wulfman
85dc95dc7b solve to bug with location 2020-05-19 18:53:20 +02:00
Pierre-Emmanuel Wulfman
0f7fde19f5 Merge branch 'fix/region_simplifier' into 'dev'
fix/keep region information in the cameligo simplifier

See merge request ligolang/ligo!617
2020-05-18 14:32:42 +00:00
Pierre-Emmanuel Wulfman
fdb7697806 Merge branch 'fix/comparable-pair' into 'dev'
Allow comparison of "comparable pair"

See merge request ligolang/ligo!616
2020-05-18 14:32:36 +00:00
Pierre-Emmanuel Wulfman
551bf176fe add srcloc in mini-c 2020-05-18 15:47:59 +02:00
Pierre-Emmanuel Wulfman
6c8b76b3de add verbatim in lexer and parser 2020-05-18 13:28:31 +02:00
Pierre-Emmanuel Wulfman
7244b91c45 fix/keep region information in the simplifier 2020-05-15 18:28:24 +02:00
Pierre-Emmanuel Wulfman
0ccc637c9b Allow comparison of "comparable pair" (left is a simple comparable type, right is a comparable type) 2020-05-15 17:25:23 +02:00
Christian Rinderknecht
937bc99738 Finished second version based on test contracts. 2020-05-15 16:32:30 +02:00
Christian Rinderknecht
f3ed135926 More fixes to the pretty-printer. 2020-05-15 00:44:15 +02:00
Christian Rinderknecht
ec0a0dbd01 More pretty-printing. 2020-05-14 21:09:14 +02:00
Christian Rinderknecht
44c85daee4 Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@pprint 2020-05-13 21:02:17 +02:00
Christian Rinderknecht
85aa1a21d1 Some expressions remain to be pretty-printed.
Fixed a bug in the semantic action of the parser for record updates.
2020-05-13 21:01:27 +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
Christian Rinderknecht
262f34f214 Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@pprint 2020-05-12 19:25:30 +02:00
Christian Rinderknecht
8c0275b42c Tuples of types are pretty-printed now. 2020-05-12 19:25:02 +02:00
Gabriel Alfour
da5b9c1612 Remove erroneous comment 2020-05-09 20:15:33 +00:00
galfour
98d49959b7
add a pass to recompute environments 2020-05-09 13:21:19 +02:00
Christian Rinderknecht
546856e14a Fixed ParserLog. First complete version of the pretty-printer. 2020-05-08 19:01:51 +02:00
Christian Rinderknecht
2b96bbbdc3 Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@pprint 2020-05-08 19:00:57 +02:00
Christian Rinderknecht
f1c444da22 A bit more nodes added. 2020-05-07 20:26:47 +02:00
Lesenechal Remi
9eeac11628 some environment cleanup 2020-05-07 16:30:06 +02:00
Christian Rinderknecht
736860611f Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@pprint 2020-05-07 15:41:33 +02:00
Christian Rinderknecht
a1c5b471fe More cases added. 2020-05-07 11:11:16 +02:00
Rémi Lesenechal
29de1278b4 Merge branch 'feature/converter-generation' into 'dev'
michelson layout converters

Closes #74

See merge request ligolang/ligo!585
2020-05-04 13:45:26 +00:00
Rémi Lesenechal
51c043b7cb Merge branch 'feature/new-typer-3' into 'dev'
Add a reason string explaining why constraints are added by the typer

See merge request ligolang/ligo!596
2020-05-04 13:08:00 +00:00
Lesenechal Remi
5891a6f4cc 'convert_from_left_comb' and 'convert_from_right_comb' for sum types 2020-05-04 14:19:04 +02:00
Christian Rinderknecht
66aea1b8d1 Added more cases. 2020-05-04 12:34:42 +02:00
Christian Rinderknecht
0aa69ed35b Fixed last commit (renaming of TStringLiteral, adding --pretty) 2020-05-03 10:40:11 +02:00
Lesenechal Remi
8fdf9a8b95 fix weird bug in matching cases 2020-05-02 15:41:50 +02:00
Lesenechal Remi
0a44a22cac 'michelson_or_right_comb' and 'michelson_or_left_comb' type operators 2020-05-02 15:41:02 +02:00
Lesenechal Remi
8e3230bf29 'Layout.convert_to_right_comb' and 'Layout.convert_to_left_comb' for sum types 2020-05-02 15:38:58 +02:00
Lesenechal Remi
b54bcb8db7 rename 'michelson_right/left_comb' to 'michelson_pair_right/left_comb' 2020-05-02 15:38:58 +02:00
Lesenechal Remi
fb2f3e89e7 replace field name 'decl_position' by 'field_decl_pos' 2020-05-02 15:35:50 +02:00
Lesenechal Remi
1f6bc4fc6b convert_from for pairs/record 2020-05-02 15:35:50 +02:00
Lesenechal Remi
9d200a1b56 michelson_right_comb and michelson_left_comb type operators 2020-05-02 15:35:50 +02:00
Lesenechal Remi
3333742037 Converters for michelson types 2020-05-02 15:30:10 +02:00
Christian Rinderknecht
f4b9261104 Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@pprint 2020-05-01 20:34:34 +02:00
Christian Rinderknecht
2667c10990 * Renamed [TStringLiteral] as [TString].
* LexToken.mll for CameLIGO: Fixed printing of "Str"
    into "String".
  * Added CLI option --pretty to call the pretty-printer from
    ParserMain.
  * Use the package Terminal_size to try to determine the width
    of the terminal where the source is pretty-printed.
2020-05-01 20:32:48 +02:00
Christian Rinderknecht
82b3d634c1 Merge branch 'parser-promote-generated-error-files' into 'dev'
Promote generated error files by dune.

See merge request ligolang/ligo!427
2020-04-30 09:48:23 +00: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
Pierre-Emmanuel Wulfman
8d59389f7d review 2020-04-30 09:39:49 +02:00
Pierre-Emmanuel Wulfman
2c62f9d32e remove match_bool from the ast 2020-04-30 09:39:49 +02:00
Suzanne Dupéron
057bd19ca7 Add a reason string explaining why constraints are added by the typer 2020-04-29 21:36:50 +01:00
Suzanne Dupéron
4587862da7 Fix in new typer: propagator for break_ctor was too permissive 2020-04-29 21:33:07 +01:00
Suzanne Dupéron
cf492f03cb Solve T_arrow vs. TC_arrow bug by removing TC_arrow 2020-04-29 21:33:07 +01: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
Pierre-Emmanuel Wulfman
e467642f14 review 2020-04-29 19:31:38 +02:00