Commit Graph

408 Commits

Author SHA1 Message Date
Tom Jack
c2a3fd473c Fix test 2019-10-11 15:27:41 -05:00
Tom Jack
b64f82dff7 Add failing test 2019-10-11 15:24:46 -05:00
John David Pressman
62377135c4 Add empty map patch test 2019-10-11 13:23:29 -07:00
Tom Jack
c5361c57d4 Simplify a bit 2019-10-11 15:10:11 -05:00
Tom Jack
e672d10029 Expose tez mod tez, too 2019-10-11 14:54:22 -05:00
John David Pressman
d947f3b462 Change set patch to chain calls and only use one assignment 2019-10-11 12:38:00 -07:00
Tom Jack
d87d0aab73 Expose tez/tez division 2019-10-11 14:35:23 -05:00
John David Pressman
58b8e537e4 Merge branch 'dev' of gitlab.com:ligolang/ligo into feature/pascaligo-set-patch 2019-10-11 09:02:45 -07:00
Tom Jack
f06161ea42 Merge branch 'feature/dry-run-sender-source' into 'dev'
Accept fake values for SENDER/SOURCE in dry-run

See merge request ligolang/ligo!130
2019-10-11 15:09:16 +00:00
John David Pressman
49ffe00466 Remove unsupported_map_patch error in PascaLIGO simplifier 2019-10-10 18:35:39 -07:00
John David Pressman
c181ec1cac Upload rough draft of map patch functionality with test
Right now I'm concerned that the way this generates the code is inefficient, in particular this line:

`in ok @@ (access_path, key', value', loc)`

Since the comments [on my code for the set patch](https://gitlab.com/ligolang/ligo/merge_requests/127)
warned that repeated generation of the access path is a bad idea(?). In any case this does work, so
it's something I can improve on.
2019-10-10 18:26:28 -07:00
John David Pressman
0de17f4b57 Add empty set patches, add test for empty set patches 2019-10-10 13:35:38 -07:00
John David Pressman
c82076281f Add test for set patch functionality
Resolves LIGO-127
2019-10-09 23:13:25 -07:00
John David Pressman
2f60c85aa8 Add rough draft of set patch functionality 2019-10-09 17:08:58 -07:00
Rémi Lesenechal
dfe6f144bb Merge branch 'feature/unsupported-deep-map-ops' into 'dev'
fix unsupported deep_map assignements and remove. add tests

See merge request ligolang/ligo!125
2019-10-09 19:57:17 +00:00
Tom Jack
e8afba9581 Accept fake values for SENDER/SOURCE in dry-run 2019-10-09 12:08:02 -05:00
Christian Rinderknecht
cbaac2d124 Merge branch 'rinderknecht-dev' into 'dev'
Printing of tokens from the AST is now done in a Buffer.t

See merge request ligolang/ligo!128
2019-10-09 16:18:04 +00:00
Christian Rinderknecht
bcf73d01bf Printing of tokens from the AST is now done in a Buffer.t 2019-10-09 16:07:13 +02:00
Lesenechal Remi
8c29dc6df3 cleaning (using name return by simpl_path which is equivalent) 2019-10-09 11:54:48 +02:00
Lesenechal Remi
54662db2f6 use simpl_projection to build accessor 2019-10-09 11:54:48 +02:00
Lesenechal Remi
d59cd771c9 fix unsupported deep_map assignements and remove. add tests 2019-10-09 11:54:48 +02:00
John David Pressman
f990dc8a0f Merge branch 'dev' of gitlab.com:ligolang/ligo into gardening/code-comments 2019-10-08 13:46:25 -07:00
Sander
8dfb2a967f Merge branch 'feature/pascaligo-remove-simplify' into 'dev'
Add test for PascaLIGO remove syntax which appears to work

See merge request ligolang/ligo!126
2019-10-08 19:35:09 +00:00
John David Pressman
88de350264 Add test for PascaLIGO remove syntax which appears to work 2019-10-08 11:54:49 -07:00
Christian Rinderknecht
a4ad62ad16 Merge branch 'rinderknecht-dev' into 'dev'
Made  big_map a keyword, like map.

See merge request ligolang/ligo!124
2019-10-08 11:37:31 +00:00
Christian Rinderknecht
1362fbae9e Made big_map a keyword, like map. 2019-10-08 12:24:56 +02:00
John David Pressman
7cf75c54c8 Untested rough draft of pascaligo set removal 2019-10-07 21:41:36 -07:00
Tom Jack
4a5e41faa4 Resolve mli merge conflict 2019-10-07 13:56:48 -05:00
Christian Rinderknecht
6f414a8ad2 Merge branch 'feature/unsupported_ass_None' into 'dev'
Feature/unsupported_ass_none

See merge request ligolang/ligo!118
2019-10-07 16:31:19 +00:00
Christian Rinderknecht
9c1be8f3a3 Merge branch 'feature/unsupported-string-catenation' into 'dev'
feature/unsupported_string_catenation

See merge request ligolang/ligo!120
2019-10-07 16:30:39 +00:00
Christian Rinderknecht
76b4fa3f47 Merge branch 'rinderknecht-dev' into 'dev'
Gardening for Ligodity and update of the documentation of PascaLIGO.

See merge request ligolang/ligo!119
2019-10-07 15:44:36 +00:00
Lesenechal Remi
44767c4b8e Simplifier now emit CONCAT constant 2019-10-07 17:16:03 +02:00
Tom Jack
36ec771adf Remove singleton inductive type 2019-10-07 16:54:28 +02:00
Tom Jack
e2c831a231 Simplify more 2019-10-07 16:54:28 +02:00
Tom Jack
1c2c6cbc43 Delete unused NoneExpr 2019-10-07 16:54:28 +02:00
Tom Jack
3a14ef26ef Simplify? 2019-10-07 16:54:28 +02:00
Lesenechal Remi
3a3cfa341a cleaning 2019-10-07 16:54:28 +02:00
Lesenechal Remi
08a3e08f57 add a new T_constant in ast_simplified and ast_typed 2019-10-07 16:54:28 +02:00
Lesenechal Remi
1401d03d62 Parser patch from Christian 2019-10-07 16:54:28 +02:00
Christian Rinderknecht
ff9584c7b7 Gardening. 2019-10-07 16:37:33 +02:00
Pierre-Emmanuel Wulfman
59cb210b83 Interface for Ocaml code 2019-10-07 14:18:32 +00:00
John David Pressman
0207d1f88f Add .mli for SAST pretty printer with minimal comments 2019-10-04 15:33:50 -07:00
Georges Dupéron
0e5c9802ec More tests with lambdas 2019-10-04 16:47:01 -04:00
Georges Dupéron
606f7ca907 More tests, integration of some of the operators 2019-10-04 16:47:01 -04:00
Georges Dupéron
8c37fe355d test: contract for mligo version of the example on the website 2019-10-04 16:33:59 -04:00
John David Pressman
fcfbbcb9c1 Delete dead code and add .mli docs to simplify/pascaligo.ml 2019-10-03 15:32:16 -07:00
John David Pressman
c2489fd310 ocamldoc-ify Markup.mli 2019-10-03 14:07:12 -07:00
John David Pressman
30d25ee247 Convert top comment in LexToken.mli to ocamldoc comment 2019-10-03 13:59:53 -07:00
John David Pressman
211d5ea37f Add explanation of AST relationship to Parser.mly to AST.mli 2019-10-03 13:42:33 -07:00
John David Pressman
51e6c441f2 Add documentation for pascaligo parser interface as .mli 2019-10-03 13:32:43 -07:00
John David Pressman
e3c581ff02 Fix typo in transpiler.ml explanation 2019-10-03 11:47:09 -07:00
John David Pressman
b02c241a01 Add short explanation to transpiler.ml 2019-10-03 11:37:07 -07:00
Lesenechal Remi
c1845c2bfe Only look at arg.type_value instead of arg.content 2019-10-03 18:35:11 +02:00
Lesenechal Remi
4e333836cb ignore closure error in subexpression of argument 2019-10-03 15:36:06 +02:00
Lesenechal Remi
962a98da75 emmit a t_function when no variables are captured 2019-10-03 10:21:09 +02:00
Lesenechal Remi
6fbe43d28a Check for closure when applying a function and update tests 2019-10-02 18:31:15 +02:00
Lesenechal Remi
a7565145d5 add map_expression function in self_mini_c pass helpers 2019-10-02 18:31:15 +02:00
Lesenechal Remi
ae882c39ef Variable name gardening 2019-10-02 18:31:15 +02:00
Lesenechal Remi
2840eb7414 Treat env element expression as deep_closure only if they are lambda 2019-10-02 18:31:15 +02:00
Sander Spies
ccfe58efb8 Fix lexer 2019-10-01 07:51:10 +02:00
Rémi Lesenechal
6850d21650 Feature/ligo 100 map tests 2019-09-27 15:52:40 +00:00
Christian Rinderknecht
889a4d643d Forgot to fully resolved conflict due to removal of keyword fail. 2019-09-27 17:08:07 +02:00
Christian Rinderknecht
8257c5e6fe Merge remote-tracking branch 'origin/dev' into rinderknecht-dev 2019-09-27 17:07:36 +02:00
Sander
5bcf3cae6e Refactor Ligodity parser to use shared parser. 2019-09-27 13:33:25 +00:00
Christian Rinderknecht
81868ca3b2 Merge branch 'rinderknecht-dev' of gitlab.com:ligolang/ligo into rinderknecht-dev 2019-09-27 14:36:59 +02:00
Christian Rinderknecht
814a37b477 Merge remote-tracking branch 'origin/dev' into rinderknecht-dev 2019-09-27 14:35:47 +02:00
Christian Rinderknecht
e5e9fb8e2f Merge branch 'dev' into 'rinderknecht-dev'
# Conflicts:
#   src/passes/1-parser/pascaligo/AST.ml
#   src/passes/1-parser/pascaligo/AST.mli
#   src/passes/1-parser/pascaligo/ParToken.mly
2019-09-27 11:47:59 +00:00
Christian Rinderknecht
fa4a7cecdf Removed entrypoint. Added back missing error message (string cat). 2019-09-27 13:44:29 +02:00
Gabriel Alfour
0c6f233507 Merge branch 'feature/auto-field-annotations' into 'dev'
Generate field annotations for sum/record

See merge request ligolang/ligo!78
2019-09-27 07:34:51 +00:00
Gabriel Alfour
ebf699cde7 Merge branch 'feature/failwith-typed' into 'dev'
Feature/failwith typed

See merge request ligolang/ligo!98
2019-09-26 20:25:46 +00:00
Tom Jack
6fc1b6430b Add a little bit of tez tests, fix cameligo lexer bug 2019-09-26 13:31:37 -05:00
galfour
7974469159 remove fail 2019-09-26 19:30:17 +02:00
galfour
ef2f6060d5 deprecate fail 2019-09-26 19:13:25 +02:00
galfour
08809f8a5d type failwith 2019-09-26 19:01:07 +02:00
galfour
e0e5228254 failwith test 2019-09-26 18:47:46 +02:00
galfour
c4a4942b09 minor merge 2019-09-26 11:39:35 -05:00
Tom Jack
09496ce4ca Generate field annotations for sum/record 2019-09-26 11:39:35 -05:00
Tom Jack
be201a5109 Lose another opam battle 2019-09-26 10:59:18 -05:00
Christian Rinderknecht
68ff421b7d Merge remote-tracking branch 'origin/dev' into rinderknecht-dev 2019-09-26 17:11:08 +02:00
Christian Rinderknecht
ca1471612f Merge branch 'pascaligo-tests' into 'dev'
Add Pascaligo tests for not kwd, (commented out) procedure and for loop

See merge request ligolang/ligo!95
2019-09-26 15:09:37 +00:00
Christian Rinderknecht
10469818c1 Removed entrypoint and storage as keywords.
Bug fix: `n-1` was scanned as `n` and `-1`, which was rejected by
a style constraint.

I removed useless style constraints in the lexer.

I removed dead code in `pascaligo.ml`.

I added my first draft for the reference manual of PascaLIGO: DO
NOT EDIT. Edit the website instead.

About the bug fix: This was an awkward attempt at rejecting at
lexing time negative integer literals whose sign is separated
from the digits, like `- 1`. The fix was simple: remove the
`integer` regular expression and use `natural`.
2019-09-26 16:35:16 +02:00
Tom Jack
389cbdbded Hotfix: display errors, fix mystery fail 2019-09-26 06:01:09 -05:00
Tom Jack
8a96e38f04 More failure tests, fix mligo assert 2019-09-25 20:15:21 -05:00
Tom Jack
a521c01115 some michelson optimizations 2019-09-25 20:15:19 -05:00
Tom Jack
a2240e0649 Merge branch 'feature/stderr' into 'dev'
Print errors to stderr, exit 1

See merge request ligolang/ligo!66
2019-09-26 00:56:55 +00:00
Tom Jack
8a04ee8097 Fix bug for compile-parameter and compile-storage 2019-09-25 13:40:32 -05:00
galfour
be75fd4830 fixed minor bug 2019-09-25 17:21:44 +02:00
galfour
87bbdad553 fix stuff 2019-09-25 10:49:14 +02:00
John David Pressman
9bb0d3aa9f Disable tests for procedures and for loops, which are unsupported 2019-09-24 16:20:52 -07:00
John David Pressman
ada8a2b703 Add (commented out) for loop test & working procedure test
Also clean up typo in unsupported for loop error message
2019-09-24 15:47:04 -07:00
John David Pressman
a8def8c269 Add test for boolean not 2019-09-24 12:18:07 -07:00
galfour
e6ac10f0ce switch from tz to mtz 2019-09-24 14:29:18 +02:00
galfour
f72593ae85 add set literals 2019-09-24 14:00:43 +02:00
galfour
b6ee28d704 add map literals in cameligo 2019-09-24 13:54:34 +02:00
galfour
ac449d2cb3 test List.iter and List.map in cameligo 2019-09-24 10:54:14 +02:00
galfour
9c3c40c9ef add set fold 2019-09-24 00:26:39 +02:00
galfour
c4752c5935 add map fold 2019-09-23 23:46:47 +02:00
galfour
b41b676eb8 add list fold 2019-09-23 23:33:25 +02:00
Tom Jack
c07f0633cd Print errors to stderr, exit 1 2019-09-23 09:54:53 -07:00
galfour
fed4891840 Merge branch 'dev' into refactor/everything 2019-09-23 16:40:51 +02:00
galfour
96fd0b4660 yay 2019-09-22 23:39:52 +02:00
galfour
37836f9512 adding option 2019-09-22 22:44:50 +02:00
galfour
720ef99c69 solve conflict 2019-09-22 22:17:28 +02:00
John David Pressman
0cfb40f54d Add purpose comments to some test contracts
Add comments explaining what a contract is/does/tests to the top of several PascaLIGO test contracts, as part of evaluating what parts of the syntax are and aren't currently tested.
2019-09-21 14:59:48 -07:00
galfour
9fb65e71e8 more lists 2019-09-21 11:30:41 +02:00
galfour
ad79188c4f add list pattern matching 2019-09-21 09:12:00 +02:00
Lesenechal Remi
8978c5c4d7 Print expresion in error message to ease further debugging 2019-09-20 21:33:14 +02:00
Lesenechal Remi
ea6f51bd55 CLI checked, compile-storage and dry-run
Add a '--bigmap' option to the CLI. This way all the maps in the AST are transformed to bigmaps
2019-09-20 21:33:14 +02:00
Lesenechal Remi
b653996aae Big_map support
Add big_map case in the uncompiler which takes the original big_map and apply the returned diff

Add input_to_value option which compiles input expressions to mini_c.values
2019-09-20 21:33:14 +02:00
Lesenechal Remi
304184bcd3 Bla 2019-09-20 21:33:14 +02:00
Lesenechal Remi
c7cfce2bf7 Remove merge comments 2019-09-20 21:33:14 +02:00
Lesenechal Remi
e5b4d37af8 add E_big_map case in Ast 2019-09-20 21:33:14 +02:00
Lesenechal Remi
a9f7bb39e4 add tests for big_map 2019-09-20 21:33:14 +02:00
Lesenechal Remi
1c281ac079 merge operations syntax for map with big_map 2019-09-20 21:33:14 +02:00
Lesenechal Remi
e930dc00c4 some check on starage for big_map 2019-09-20 21:33:14 +02:00
Lesenechal Remi
25e3ab8e5d big map can be looked up 2019-09-20 21:33:14 +02:00
Lesenechal Remi
4fec6f1624 naively connects big_map to the transpiler 2019-09-20 21:33:14 +02:00
galfour
dc9294bbcc add options in cameligo 2019-09-20 20:38:04 +02:00
galfour
66efff631d add micheline 2019-09-20 18:56:55 +02:00
galfour
9a7c3ee54d Merge branch 'dev' into refactor/everything 2019-09-20 17:51:43 +02:00
galfour
1b901b1c25 Merge branch 'dev' into refactor/everything 2019-09-20 17:50:47 +02:00
galfour
2a90be292c more formats 2019-09-20 11:59:44 +02:00
galfour
e3179bd7c7 tests pass again 2019-09-19 12:59:07 +02:00
galfour
6fe48ff6ad more working 2019-09-19 08:29:31 +02:00
galfour
015e197183 back on track 2019-09-19 01:34:37 +02:00
galfour
b619fa1f17 further down the road 2019-09-18 18:49:33 +02:00
galfour
d8b7a12c69 more refactoring 2019-09-15 13:12:19 +02:00
galfour
5566095e49 more stuff 2019-09-11 13:56:39 +02:00
galfour
715812b2c3 more modifications 2019-09-10 15:19:15 +02:00
galfour
cdfffcf8ec more refactoring 2019-09-10 12:42:49 +02:00
John David Pressman
1cda8ca097 Merge branch 'fix-ci' into 'dev'
Try to fix CI again

See merge request ligolang/ligo!71
2019-09-10 02:38:18 +00:00
Tom Jack
c867a4c4d4 Remove dune-project files 2019-09-09 13:59:08 -07:00
galfour
d187317c32 move contracts 2019-09-09 11:47:42 +02:00
Tom Jack
e0b5910627 Try to fix CI again 2019-09-08 12:37:11 -07:00
galfour
0fb37e9d3f adding list cons 2019-09-08 12:34:29 +02:00
galfour
cb1aa44ff4 moving stuff around 2019-09-08 12:17:24 +02:00
Gabriel Alfour
dec2ffd2ed Merge branch 'feature/add-hashes' into 'dev'
add hashes and support for bytes

See merge request ligolang/ligo!69
2019-09-07 17:04:07 +00:00
galfour
6713160530 add hashes and support for bytes 2019-09-07 18:42:59 +02:00
galfour
25b07af6ae merge dev conflict 2019-09-07 16:54:08 +02:00
Georges Dupéron
644d90be6d Fix CI and Makefile (WIP) 2019-09-06 17:27:09 +02:00
galfour
f831793fbd y e s s s 2019-09-05 15:21:01 +02:00
Christian Rinderknecht
4b4698d1f0 Merge remote-tracking branch 'origin/dev' into rinderknecht-dev 2019-08-29 17:27:36 +02:00
Christian Rinderknecht
57b1d39b6e New contract in CameLIGO, based on the tutorial. (Not called from the CI.) 2019-08-29 17:25:35 +02:00
Christian Rinderknecht
3f47bb2e85 Recording as miscellaneous the old way to do series of items. 2019-08-29 17:09:43 +02:00
Christian Rinderknecht
95b2111a8b Left factoring of productions to get closer to LL. 2019-08-29 17:08:23 +02:00
Christian Rinderknecht
fbbff496c7 Cosmetics. 2019-08-29 17:07:23 +02:00
Christian Rinderknecht
f99bd0d1df More rewrites of the grammar for stream parsing.
Fixed code in the internal documentation of PascaLIGO.
2019-08-29 17:06:16 +02:00
Sander
b04a988a7e Separate parts of Pascaligo into a shared parser library 2019-08-29 14:54:06 +00:00
Tom Jack
faf3bbc061 Fix unpack_closure 2019-08-21 07:34:39 -07:00
Tom Jack
7afa8a9cdb Test closures more 2019-08-21 07:34:34 -07:00