Commit Graph

277 Commits

Author SHA1 Message Date
Lesenechal Remi
3a80fadcc8 rewrite interpreter recursion within the initial formalism. 2020-03-12 18:16:56 +01:00
Pierre-Emmanuel Wulfman
660dcbb79f review 3 2020-03-12 16:05:17 +01:00
Pierre-Emmanuel Wulfman
a5f44d3e88 clean-up junk 2020-03-12 16:05:17 +01:00
Pierre-Emmanuel Wulfman
27f583266e test for tail recursion 2020-03-12 16:05:17 +01:00
Pierre-Emmanuel Wulfman
c46002b160 modifying doc and test for loops (Cameligo and pascaligo) 2020-03-12 16:05:17 +01:00
Pierre-Emmanuel Wulfman
b15d9a5123 compiling Pascaligo 2020-03-12 16:05:17 +01:00
Lesenechal Remi
66aca916bf mapping over type_operator types is useless 2020-03-09 18:29:07 +01:00
Lesenechal Remi
503d8f771e add tests for sum type names limit length 2020-03-09 18:29:07 +01:00
Lesenechal Remi
25f004844a self: now reject capitalized entrypoint annotation 2020-03-09 11:23:08 +01:00
Lesenechal Remi
b7c08b78d5 self operator now takes an entrypoint annotation as parameter 2020-03-09 11:23:08 +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
9de04123d3 --balance option and updated tests 2020-03-05 20:52:47 +01:00
Christian Rinderknecht
8b2a182c6a Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@contracts 2020-03-04 15:59:47 +01:00
Christian Rinderknecht
bd48a56a24 Forgot to add to the previous commit. 2020-03-04 15:36:33 +01:00
Christian Rinderknecht
d43209f1a1 Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@contracts 2020-03-04 15:26:43 +01:00
Pierre-Emmanuel Wulfman
b7e65764dd dune promote 2020-03-04 10:35:34 +01:00
Pierre-Emmanuel Wulfman
c23827e8de new negative test 2020-03-04 10:35:34 +01:00
Pierre-Emmanuel Wulfman
dfb1e1ebef add negative test 2020-03-04 10:35:34 +01:00
Pierre-Emmanuel Wulfman
a19e2ceb3b adding negative test 2020-03-04 10:35:34 +01:00
Lesenechal Remi
cf383fe327 more tests 2020-03-03 13:46:11 +01:00
Lesenechal Remi
9a30eb67c1 create_contract: add some tests 2020-03-03 13:46:11 +01:00
Christian Rinderknecht
00e6959503 Refactoring of the test contracts. 2020-03-02 18:01:56 +01:00
Christian Rinderknecht
a9214f864d Reviewing again the PascaLIGO contracts. 2020-02-27 19:09:14 +01:00
Lesenechal Remi
a08adbd085 typer: checks for constructor redundancy 2020-02-26 18:54:16 +01:00
Tom Jack
4b9e175063 Examples: don't use SOURCE 2020-02-20 12:18:57 -06:00
Rémi Lesenechal
e8129c5be3 Merge branch 'feature/variable-in-dry-run' into 'dev'
Allow using top level variables defined in source code in dry-run PARAMETER and STORAGE

See merge request ligolang/ligo!436
2020-02-19 20:41:37 +00:00
Lesenechal Remi
44ff5d580d Allow using top level variables defined in source code in dry-run PARAMETER and STORAGE 2020-02-19 16:10:50 +01:00
Pierre-Emmanuel Wulfman
eee6dbaeb2 make while_loop, for_int and for_collect more similar 2020-02-19 14:41:16 +01:00
Lesenechal Remi
38c99eca53 carthage: add tests for comparable pairs 2020-02-18 12:31:19 +01:00
Lesenechal Remi
39fc076c2b fix regression of comparison of key_hash and add a test for it 2020-02-13 16:44:21 +01:00
Suzanne Dupéron
0113a448de Merge branch 'dev' into 'feature/doc-pascaligo-loop'
# Conflicts:
#   src/passes/operators/operators.ml
2020-02-10 20:51:41 +00:00
Christian Rinderknecht
9b5d63de1f Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@contracts 2020-02-10 19:33:04 +01:00
Christian Rinderknecht
61832354d9 Merge branch 'dev' of gitlab.com:ligolang/ligo into feature/doc-pascaligo-loop 2020-02-10 19:22:52 +01:00
Lesenechal Remi
8c38352290 ligo interpreter : adding more tests 2020-02-10 12:02:36 +01:00
Lesenechal Remi
69ddce1860 add temporary CLI comand for ligo interpreter tests 2020-02-09 18:22:33 +01:00
Suzanne Dupéron
995ca7e807 Print numeric records as tuples, better typer error messages for records & tuples 2020-02-09 00:31:30 +01:00
Pierre-Emmanuel Wulfman
199e0a3bb2 Print records and variants in lexicographic order 2020-02-09 00:31:30 +01:00
Pierre-Emmanuel Wulfman
ae82144418 removing assign, tuples, sequences, 2020-02-09 00:31:30 +01:00
Christian Rinderknecht
e6dc4371ee Merge branch 'dev' of gitlab.com:ligolang/ligo into feature/doc-pascaligo-loop 2020-02-08 10:16:34 +01:00
Lesenechal Remi
5ef61d3520 add assert primitive for pascaligo 2020-02-07 15:28:46 +01:00
Lesenechal Remi
784c2da81b Remove useless constants:
* C_HASH (removed)
* C_MAP_GET --replaced--> C_MAP_FIND_OPT
* C_MAP_GET_FORCE --replaced--> C_MAP_FIND
2020-02-06 18:08:51 +01:00
Christian Rinderknecht
7a484cb45c Merge branch 'dev' of gitlab.com:ligolang/ligo into feature/doc-pascaligo-loop 2020-02-05 16:29:37 +01:00
Christian Rinderknecht
410bbb0723 Complete rewrite of the documentation. 2020-02-05 16:28:40 +01:00
Sander Spies
0f9b92b83f Oops. 2020-02-04 14:02:57 +01:00
Sander Spies
795f0d4056 ReasonLIGO: missing ')' error message. 2020-02-04 13:31:41 +01:00
Sander Spies
e92d16fd79 Simplify error case. 2020-02-03 14:03:47 +01:00
Sander Spies
bbe80bcbfb Merge. 2020-02-03 14:01:01 +01:00
Sander Spies
98dab8d491 Extra line. 2020-02-03 11:57:37 +01:00
Sander Spies
1146292a76 Argh 2020-02-03 11:26:23 +01:00
Sander Spies
bf985797fb - Don't allow to chain let bindings like: let a = let b = 2.
- Give a proper warning when creating an incorrect let binding.
2020-02-03 10:53:44 +01:00
Sander Spies
952e291066 Typo 2020-02-03 10:06:28 +01:00
Sander Spies
c1f5080b81 Spacing. 2020-02-03 09:30:42 +01:00
Sander Spies
360ee7b45e Wrong extension 2020-02-02 20:07:19 +01:00
Sander Spies
6beccd09a8 Wrong function arguments error message. 2020-02-02 18:08:16 +01:00
Sander Spies
bc9cb36d97 Typo. 2020-01-31 19:31:51 +01:00
Sander Spies
6c3879403b Enable incremental parser by default \o/
Fix test.
2020-01-31 17:45:48 +01:00
Suzanne Dupéron
8eb6472b00 Updated some docs that did not include reasonligo / .religo yet 2020-01-29 18:02:55 +00:00
Christian Rinderknecht
a6bf16cbe2 Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev 2020-01-29 16:49:42 +01:00
Christian Rinderknecht
a29b5acb31 Finished refactoring the front-end. 2020-01-27 17:28:31 +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
0131b0c23d Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev 2020-01-27 13:00:18 +01:00
Rémi Lesenechal
334deea8ec Merge branch 'feature/fix-compile-storage' into 'dev'
fix bad copy paste ?

See merge request ligolang/ligo!360
2020-01-27 11:38:30 +00:00
Lesenechal Remi
088c5560c4 test for compile-storage 2020-01-27 11:42:32 +01:00
Lesenechal Remi
1a6a682584 fix bad copy paste ? 2020-01-27 11:36:51 +01:00
Christian Rinderknecht
8843a46975 Added missing check for reserved names in CameLIGO.
The calls to the lexer and parser of CameLIGO through the compiler use
now their error messages, like in PascaLIGO.
2020-01-24 15:57:41 +01:00
Christian Rinderknecht
3c9dd93c8b Fixed again priority of "->" vs "*" in type expressions.
Fixed negative tests.
2020-01-24 14:35:15 +01:00
Lesenechal Remi
ba0548d6b8 some list-declarations tests 2020-01-23 22:12:33 +01:00
Lesenechal Remi
fd47f51031 add a new CLI command: list-declarations 2020-01-23 22:12:33 +01:00
Lesenechal Remi
69d125b667 fix evaluate-value and added tests 2020-01-23 14:29:04 +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
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
f1977b12aa self in lambda negative test 2020-01-21 13:26:38 +01:00
Sander
3223f9cfe1 Add sub commands to print different stages. 2020-01-21 12:24:51 +00:00
Lesenechal Remi
a30d59121f review request (more regular output) 2020-01-17 17:02:54 +01:00
Lesenechal Remi
3081ec477b add test & promote 2020-01-17 16:35:53 +01:00
Lesenechal Remi
600ee51940 running contract or function does not fail on failwiths 2020-01-17 16:35:40 +01:00
Lesenechal Remi
0ad8bde6d1 add missing newlines 2020-01-17 16:29:23 +01:00
Suzanne Dupéron
ff9370a422 Improved typer error messages in operators.ml LIGO-371 2020-01-13 23:56:06 +01:00
Lesenechal Remi
7143b82ba8 support for key and signature literals 2020-01-13 11:37:10 +01:00
Suzanne Dupéron
4ee75afb0a fix test: add helper blurb 2020-01-09 23:13:14 +00:00
Suzanne Dupéron
1863cf324b Improve error messages in ast_typed/combinators.ml 2020-01-09 23:13:14 +00:00
Suzanne Dupéron
8e18c1f8bd update tests with the helper blurb 2020-01-09 18:59:10 +01:00
Suzanne Dupéron
75e6344972 Move the last two negative tests to a subdirectory, actually check that they fail in the expected way 2020-01-09 17:19:00 +00:00
Tom Jack
10eebf69bd Support always-failing conditionals 2020-01-09 09:47:54 -06:00
John David Pressman
71989876db Fix a bug, test added:
A never accounted message was not adding anything to the map
2020-01-08 20:58:26 +00:00
John David Pressman
16ac289381 [LIGO-347] Add changelog 2020-01-08 10:54:21 +00:00
Sander
8dd936ab90 Test lexer error messages. 2020-01-07 20:35:04 +00:00
Tom Jack
e73c901135 Show 'deepest' location for errors 2020-01-07 00:34:41 +00:00
Lesenechal Remi
d885eb8d4a check key_hash format 2020-01-06 22:52:30 +01:00
Lesenechal Remi
8ce4772ae4 add tests 2020-01-06 18:51:43 +01:00
Lesenechal Remi
b1dd35b56d fix definition of predecessor_timestamp 2020-01-05 14:29:22 +01:00
Lesenechal Remi
0a676d72a5 add --predecessor-timestamp to compile-storage/parameter 2020-01-03 18:11:44 +01:00
Lesenechal Remi
1a2a29bc03 negative timestamp literal test 2020-01-03 18:11:37 +01:00
Lesenechal Remi
8584bacf83 test & dune promote 2020-01-02 15:21:56 +01:00
Lesenechal Remi
98ac18ccef propagate failwith strings (also support for others) in the error 2020-01-02 12:50:45 +01:00
Lesenechal Remi
c873350b15 no ppx in expect_tests lib 2019-12-31 14:23:51 +01:00
Lesenechal Remi
6c7440ea79 inline magic 2019-12-31 14:23:51 +01:00
Lesenechal Remi
61d095ea28 also preprocess the executable 2019-12-31 14:23:51 +01:00
Lesenechal Remi
c8339ed2ef first try 2019-12-31 14:23:51 +01:00
Lesenechal Remi
bdd1d09c04 t_operator can not throw exceptions 2019-12-24 12:43:32 +01:00
Lesenechal Remi
e18233434d dune promote 2019-12-20 12:18:36 +01:00
Lesenechal Remi
2086dd9ab5 add predecessor timestamp to the CLI 2019-12-20 12:18:36 +01:00
Suzanne Dupéron
e5acdc4228 All typer errors in ast_typed/misc.ml are covered it seems. 2019-12-19 17:27:17 +00:00
Suzanne Dupéron
f7616b7b49 Small improvements to negative typer tests 2019-12-19 17:27:17 +00:00
Suzanne Dupéron
f9daa64aa7 Moved negative tests to a negative/ folder 2019-12-19 17:27:17 +00:00
Suzanne Dupéron
2a11c6d180 test for typer error message: different keys 2019-12-19 17:27:17 +00:00
Suzanne Dupéron
e919a1eba3 Fixes unsoundness in old typer (expected type for the expression as a whole was not checked for ascriptions) 2019-12-19 17:27:17 +00:00
Lesenechal Remi
be84244d7a add some CLI tests 2019-12-18 16:47:23 +01:00
Lesenechal Remi
f9fcf1fbc3 Also perform Ast_typed check 2019-12-18 16:47:23 +01:00
Lesenechal Remi
ea343760b2 compile_parameter and compile_storage CLI commands now gets their input checked 2019-12-18 16:47:23 +01:00
Suzanne Dupéron
1bf3d8f02a First negative tests for the old typer & improvement of error messages 2019-12-17 18:18:49 +00:00
John David Pressman
fb8fae05d7 Fix IMPLICIT_ACCOUNT, again and this time add regression expect test 2019-12-16 12:10:31 -08:00
Tom Jack
611bd0382a dune runtest ; dune promote 2019-12-13 03:11:51 -06:00
Tom Jack
e914833600 Add --version via dune rule 2019-12-13 08:12:35 +00:00
Lesenechal Remi
61fd91a0d4 optional init file 2019-12-12 12:15:18 +01:00
Lesenechal Remi
a80ffae897 add interpret command 2019-12-12 12:15:18 +01:00
Lesenechal Remi
c0472629b9 application at ast_simplified level 2019-12-11 20:02:54 +01:00
Lesenechal Remi
5ac25bfe21 easy to interpret expressions. evaluate-value does the job. CLI refactoring might be necessary 2019-12-10 15:58:53 +01:00
Lesenechal Remi
16fc55482d Remove wrapper. Flatten everything for now.
Now have a run function for contracts and a run function for everything else.
Run function for contract is only used in CLI dry-run
2019-12-10 15:58:53 +01:00
Lesenechal Remi
d1f6c37f62 CLI clean 2019-12-10 15:58:53 +01:00
Lesenechal Remi
46623ceb77 contract are now typecheck (at least in the CLI) 2019-12-10 15:58:53 +01:00
Lesenechal Remi
0cae4302cd WIP: introduce compiled_expression and unify dry-run and compile-contract 2019-12-10 15:58:53 +01:00
Tom Jack
317313ecc6 Rename executable to fix merlin confusion 2019-12-01 23:08:05 +00:00
Rémi Lesenechal
4be2d6fb6a Refactoring eval run functions 2019-11-29 21:22:56 +00:00
Tom Jack
a121766a89 Fix semantic merge conflict w/ expect tests 2019-11-29 10:00:58 -06:00
Gabriel Alfour
c1dac64af3 Merge branch 'feature/inlining2' into 'dev'
Substitution-based inlining

See merge request ligolang/ligo!227
2019-11-29 14:17:25 +00:00
Tom Jack
0040b1f460 Mention subcommand --help only once 2019-11-27 11:00:21 -06:00
Tom Jack
e3fbc58e7a Show help instead of "Do ligo --help" 2019-11-27 11:00:21 -06:00
Tom Jack
32625bb075 Use doc not docs in cli 2019-11-27 11:00:21 -06:00
Tom Jack
06603b594a Mini_c: Identify more pure constants 2019-11-27 09:06:36 -06:00
Tom Jack
66d2cda107 Mini_c: Inlining optimization 2019-11-27 09:06:31 -06:00
Tom Jack
f7ef0472be Add command for measuring contracts 2019-11-25 17:36:22 -06:00
Tom Jack
6f9778f578 Add some cli expect tests 2019-11-21 16:46:38 -06:00
Tom Jack
81c49f4342 Fix/simplify big_maps using Babylon 2019-11-21 08:18:18 -06:00
Suzanne Dupéron
1e06c24325 Merge branch 'dev' of gitlab.com:ligolang/ligo into clean-sts-solver 2019-10-31 17:18:09 -04:00
Tom Jack
fd03d577e4 Support --michelson-format in all commands producing Michelson 2019-10-31 09:50:51 -05:00
Tom Jack
6956e8751d Add hex michelson output, use enums for format options 2019-10-26 12:57:22 -05:00
Suzanne Dupéron
5a58559edc Merge remote-tracking branch 'origin/dev' into HEAD 2019-10-11 16:59:45 -04:00
Suzanne Dupéron
9e2c057edb dune build passes, but not dune build @ligo-test. Threaded the typechecker's state in a bunch of places where it's likely not needed, because I don't know which parts are entrypoints and which parts are intermediate functions, and the role of the state between program fragments is not yet 100% clear to me. 2019-10-11 15:21:28 -04:00
Suzanne Dupéron
2a39aa2949 Revert "Builds (commented out a few issues, just to check that there are no compilation errors left)"
This reverts commit 581babb459.
2019-10-10 03:55:15 -04:00
Suzanne Dupéron
581babb459 Builds (commented out a few issues, just to check that there are no compilation errors left) 2019-10-10 03:55:08 -04:00
Tom Jack
e8afba9581 Accept fake values for SENDER/SOURCE in dry-run 2019-10-09 12:08:02 -05:00
Pierre-Emmanuel Wulfman
59cb210b83 Interface for Ocaml code 2019-10-07 14:18:32 +00:00
Tom Jack
389cbdbded Hotfix: display errors, fix mystery fail 2019-09-26 06:01:09 -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
galfour
87bbdad553 fix stuff 2019-09-25 10:49:14 +02:00
Tom Jack
c07f0633cd Print errors to stderr, exit 1 2019-09-23 09:54:53 -07:00
galfour
96fd0b4660 yay 2019-09-22 23:39:52 +02:00