Pierre-Emmanuel Wulfman
0b10b7188b
Merge branch 'test-contract-religo' into 'dev'
...
Multisig contract test for Cameligo and ReasonLigo
See merge request ligolang/ligo!421
2020-02-19 17:08:30 +00:00
Pierre-Emmanuel Wulfman
e1606c4700
add multisig test for cameligo and reasonligo
2020-02-19 16:40:55 +01:00
Pierre-Emmanuel Wulfman
dcb342e031
add primitive to cameligo
2020-02-19 16:40:55 +01:00
Pierre-Emmanuel Wulfman
b8af9a56d9
fix contract with tuples starting at one
2020-02-19 16:15:43 +01: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
a6fc8a3f6a
Merge branch 'for-loop-bugs' into 'dev'
...
For loop bugs fixed
See merge request ligolang/ligo!434
2020-02-19 15:08:01 +00:00
Pierre-Emmanuel Wulfman
eee6dbaeb2
make while_loop, for_int and for_collect more similar
2020-02-19 14:41:16 +01:00
John David Pressman
892f813a6c
Merge branch 'contract/hashlock' into 'dev'
...
[LIGO-406] Hashlock contract
See merge request ligolang/ligo!359
2020-02-19 00:15:39 +00:00
Pierre-Emmanuel Wulfman
9de45285b2
remove Var.show
2020-02-18 14:19:11 +01:00
Pierre-Emmanuel Wulfman
c468cb94a1
remove unused code
2020-02-18 14:16:05 +01:00
Tom Jack
e262f9e103
Demonstrate a couple simple_for_collect bugs
2020-02-18 14:09:29 +01:00
Lesenechal Remi
38c99eca53
carthage: add tests for comparable pairs
2020-02-18 12:31:19 +01:00
Lesenechal Remi
fd28da98a0
comparable pairs in the backend
2020-02-18 12:19:19 +01:00
John David Pressman
b2c654ec65
Merge branch 'dev' into contract/hashlock
2020-02-17 20:51:31 -08:00
Lesenechal Remi
e63f2407c2
carthage update:
...
* update dune & opam files
* update modules in source
2020-02-17 13:10:51 +01:00
Tom Jack
9f09506f58
Fix literal bytes printing again
2020-02-15 11:50:20 -06:00
John David Pressman
eaa0c12d63
e_ez_record -> e_record_ez in hashlock contract tests
2020-02-13 22:00:25 -08:00
John David Pressman
741374fa24
Merge branch 'dev' into contract/hashlock
2020-02-13 21:59:54 -08:00
John David Pressman
5764f53ed1
Refactor commitment mechanism, add reveal tests to hashlock contract
2020-02-13 21:54:16 -08: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
John David Pressman
f766840311
Fix commit test for hashlock
2020-02-13 04:35:21 -08:00
Suzanne Dupéron
a1880b013b
Fix #147 by allowing comparison of bools
2020-02-12 20:22:59 +01:00
Suzanne Dupéron
2c03ebf2e3
Merge branch 'docs/list-reference' into 'dev'
...
Add list reference page to docs and add unit tests for List.size
See merge request ligolang/ligo!398
2020-02-12 16:12:21 +00:00
Suzanne Dupéron
da546eabb7
Merge branch 'docs/crypto-reference' into 'dev'
...
Add crypto reference page to doc tests
See merge request ligolang/ligo!410
2020-02-12 15:43:09 +00:00
Suzanne Dupéron
6be23179c6
Merge branch 'dev' into 'docs/list-reference'
...
# Conflicts:
# src/test/contracts/list.ligo
# src/test/md_file_tests.ml
2020-02-12 15:13:27 +00:00
John David Pressman
953e91bc54
Remove Current.gas from LIGO
2020-02-12 02:24:58 -08:00
John David Pressman
d12aa130f7
Add crypto reference page to doc tests
2020-02-11 18:47:54 -08:00
John David Pressman
f2b3e83986
Merge branch 'dev' into docs/map-reference
2020-02-11 17:56:21 -08:00
John David Pressman
1fe41b011b
Merge branch 'docs/sets-reference' into 'dev'
...
Add set reference page to the docs
See merge request ligolang/ligo!373
2020-02-12 01:39:41 +00:00
John David Pressman
e8da2626e4
Add set reference page to the docs
...
Add Set.literal to the test suite
2020-02-12 01:39:41 +00:00
Suzanne Dupéron
437b696b19
Merge branch 'feature/some-new-typer-constant-contraints' into 'dev'
...
some more contraints (untested) for the typer
See merge request ligolang/ligo!404
2020-02-12 01:12:24 +00:00
Christian Rinderknecht
414dce2fc8
Merge branch 'docs/big-map-reference' into 'dev'
...
Add big map reference page to docs
See merge request ligolang/ligo!382
2020-02-11 18:24:41 +00:00
Rémi Lesenechal
8b83e375bd
Revert "Merge branch 'feature/adt-generator-poly-3' into 'dev'"
...
This reverts merge request !403
2020-02-11 10:45:08 +00:00
Lesenechal Remi
702416a0a7
fix continuation and add some comments
2020-02-11 11:05:43 +01:00
John David Pressman
e0c5505886
Merge branch 'dev' into docs/big-map-reference
2020-02-11 01:07:32 -08:00
John David Pressman
39c0f01998
Add big_map reference page to doc tests and add big_map add
to test suite
2020-02-11 01:03:46 -08:00
John David Pressman
bfd240dacf
Merge branch 'dev' into docs/map-reference
2020-02-10 20:53:30 -08:00
John David Pressman
b6a6eea5d2
Add map reference page to doc tests and fix bugs
2020-02-10 20:51:48 -08: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
Suzanne Dupéron
76fa4b0549
Revert "Make menhir less verbose, to see error messages in gitlab."
...
This reverts commit b5f3ae76b049d4e712bd539b39d771191bc8978b.
2020-02-10 20:40:43 +01:00
Suzanne Dupéron
c71e47f252
Make menhir less verbose, to see error messages in gitlab.
2020-02-10 20:40:43 +01:00
Suzanne Dupéron
5151a0fd92
ADT generator: polymorphic types (list, option…)
2020-02-10 20:40:43 +01:00
Suzanne Dupéron
2588de2395
Remove generated file fold.ml
2020-02-10 20:40:43 +01:00
Suzanne Dupéron
c3b1c1ac0f
Removed promote-until-clean because it moves the file out of _build instead of copying it, which causes issues for the gitlab build
2020-02-10 20:40:43 +01:00
Suzanne Dupéron
76ad9c47ec
cleanup
2020-02-10 20:40:43 +01:00
Suzanne Dupéron
42699256e5
Run adt_generator.exe as part of dune runtest
2020-02-10 20:40:43 +01:00
Lesenechal Remi
87a8901645
review fixes
2020-02-10 20:02:43 +01:00
Lesenechal Remi
f798392760
constant typer:
...
* Removed unused LIST_CONS
* support for misc constants (untestetable for now)
2020-02-10 19:54:23 +01: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
541728fc6c
First batch of rewritten contracts (PascaLIGO).
2020-02-10 19:27:58 +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
Christian Rinderknecht
82aacde97f
More documentation rewrites.
2020-02-10 19:07:20 +01:00
Lesenechal Remi
8c38352290
ligo interpreter : adding more tests
2020-02-10 12:02:36 +01:00
Lesenechal Remi
0e5a68d58b
ligo interpreter : review fixes
2020-02-09 19:04:21 +01:00
Lesenechal Remi
3ce0d180f5
ligo interpreter: simplfied AST merge
2020-02-09 18:50:18 +01:00
Lesenechal Remi
ce70c82122
ligo interpreter : moving combinators do a dedicated module
2020-02-09 18:22:33 +01:00
Lesenechal Remi
69ddce1860
add temporary CLI comand for ligo interpreter tests
2020-02-09 18:22:33 +01:00
Lesenechal Remi
0374c5900b
add missing 'Set.iter' to cameligo
2020-02-09 18:22:33 +01:00
Lesenechal Remi
f08879feb0
ligo interpreter support for :
...
* operations of map/set
* slice
* add
* literals/pps
2020-02-09 18:22:33 +01:00
Lesenechal Remi
29959ec915
Initial LIGO interpreter version
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
John David Pressman
8db8f6f039
Add list reference page to docs and add unit tests for List.size
2020-02-07 20:17:13 -08:00
John David Pressman
ebf258d128
Merge branch 'docs/string-reference' into 'dev'
...
Add string reference page to docs
See merge request ligolang/ligo!392
2020-02-07 23:01:25 +00:00
Lesenechal Remi
5ef61d3520
add assert primitive for pascaligo
2020-02-07 15:28:46 +01:00
Lesenechal Remi
54f4ffd413
Fix assetion with a default string "failed assertion"
2020-02-07 15:27:16 +01:00
John David Pressman
4c45eb9fb3
Add string reference page to docs
2020-02-07 05:27:23 -08:00
Sander
bd4a75016d
Merge branch 'add_lsl_lsr' into 'dev'
...
Add lsl and lsr support.
Closes #146
See merge request ligolang/ligo!387
2020-02-07 11:08:13 +00:00
Sander Spies
560ae6e0bc
Remove block skips.
2020-02-07 11:10:47 +01:00
Rémi Lesenechal
8003a9e2b1
Merge branch 'feature/remove-useless-constants' into 'dev'
...
Remove useless constants
See merge request ligolang/ligo!388
2020-02-06 21:26:04 +00:00
Suzanne Dupéron
d3a34445f4
Merge branch 'bugfix/new-typer-9' into 'dev'
...
New typer: constants: use a tuple of arguments, + typechecking rules for constants
See merge request ligolang/ligo!378
2020-02-06 20:56:04 +00:00
Lesenechal Remi
78693b482c
remove unused test
2020-02-06 18:12:44 +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
Sander Spies
e14dd18680
Correction: lsl and lsr are impure
2020-02-06 17:30:50 +01:00
Sander Spies
9433fa9bc4
Add lsl and lsr support.
2020-02-06 16:17:33 +01:00
Christian Rinderknecht
61ec0f41c3
Merge branch 'dev' of gitlab.com:ligolang/ligo into feature/doc-pascaligo-loop
2020-02-05 20:02:06 +01:00
Christian Rinderknecht
26059c281a
Forgot to check that function parameters are not reserved names.
2020-02-05 18:09:45 +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
John David Pressman
59448e1d91
Add partial draft of Current library documentation and unit tests for Current.amount
2020-02-04 20:27:56 -08:00
Sander Spies
79fd0317ae
Merge
2020-02-04 15:05:13 +01:00
Pierre-Emmanuel Wulfman
cf7bc9374d
Merge branch 'feature/get_contract_opt' into 'dev'
...
add get_contract_opt and get_entrypoint_opt to ligo
See merge request ligolang/ligo!362
2020-02-04 13:36:22 +00:00
Sander Spies
0f9b92b83f
Oops.
2020-02-04 14:02:57 +01:00
Pierre-Emmanuel Wulfman
7c4871babc
add test
2020-02-04 13:38:17 +01:00
Pierre-Emmanuel Wulfman
4195026d73
add get_contract_opt and get_entrypoint_opt to ligo
2020-02-04 13:38:17 +01:00
Sander Spies
795f0d4056
ReasonLIGO: missing ')' error message.
2020-02-04 13:31:41 +01:00
Sander Spies
3461af53dd
ReasonLIGO: Make the semicolon optional in more cases.
2020-02-04 12:52:12 +01:00
Sander
fbc61eb809
Optional vbar for ReasonLIGO sumtypes
2020-02-04 10:39:15 +00:00
Suzanne Dupéron
0297b6033b
New typer: constants: use a tuple of arguments, + typechecking rules for constants
2020-02-03 20:20:00 +00:00
Suzanne Dupéron
d2630379ec
Merge branch 'bugfix/new-typer-8' into 'dev'
...
misc. fixes on the new typer
See merge request ligolang/ligo!369
2020-02-03 19:48:49 +00:00
Christian Rinderknecht
d92a5499e1
Merge branch 'dev' of gitlab.com:ligolang/ligo into feature/doc-pascaligo-loop
2020-02-03 14:18:06 +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
Christian Rinderknecht
5293fa3572
Merge branch 'fix-reasonligo-wrongfunctionarguments-error' into 'dev'
...
Correct wrong function arguments error message
See merge request ligolang/ligo!375
2020-02-03 11:34:06 +00: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
a0ffc441f3
Forgot to add these.
2020-02-03 11:25:13 +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
Christian Rinderknecht
87aa50f097
Merge branch 'docs/bytes-reference' into 'dev'
...
Add bytes reference page to docs
See merge request ligolang/ligo!371
2020-02-02 19:29:18 +00: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
Christian Rinderknecht
e6119db35a
Merge branch 'dev' of gitlab.com:ligolang/ligo into feature/doc-pascaligo-loop
2020-02-01 15:09:04 +01:00
John David Pressman
6d421ab4b1
Add Map.add to test suite
2020-01-31 17:13:22 -08: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
Sander Spies
ff16af9331
Merge
2020-01-31 16:06:47 +01:00
Sander Spies
c3cb69a0d0
Move error.messages handling to dune.
2020-01-31 16:05:59 +01:00
Christian Rinderknecht
e25bb00961
Forgot to add those fixes to the previous commit.
2020-01-31 14:11:56 +01:00
Christian Rinderknecht
729ecd3f12
Merge branch 'dev' of gitlab.com:ligolang/ligo into feature/doc-pascaligo-loop
2020-01-31 13:30:28 +01:00
John David Pressman
c8e0654ffe
Add crypto reference page to docs
...
Change 'black2b' to 'blake2b' in CameLIGO/ReasonLIGO frontend
2020-01-31 03:34:36 -08:00
Christian Rinderknecht
a9b3d295fd
Fixes to the lexer and the parser API.
...
* The parameter for logging the lexer is now mandatory.
* The ParserAPI now thread the logging of the lexer.
* LexerMain.ml now call the logging of the lexers (CameLIGO, ReasonLIGO).
* Fixed bug in lexer when a line comment ends with EOF.
2020-01-31 12:31:25 +01:00
Christian Rinderknecht
fa9372c595
Updated ParErr.ml for ReasonLIGO (may have caused Not_found).
2020-01-31 12:24:25 +01:00
John David Pressman
e127528e95
Add bytes reference page to docs
2020-01-30 12:13:24 -08:00
Suzanne Dupéron
0abc4cd206
Started adding typer for constants
2020-01-30 18:50:19 +00:00
Suzanne Dupéron
a6f0d7297c
Improved temporary internal error message
2020-01-30 18:50:19 +00:00
Suzanne Dupéron
96468bd8ff
Disabled conversion of records & variants to type constructor + argument list in new typer, the current implementation is just wrong.
2020-01-30 18:50:19 +00:00
Suzanne Dupéron
7ab2ffa156
New typer: fix tuples
2020-01-30 18:50:19 +00:00
Sander
6551168a56
ReasonLIGO type declaration improvements for tuples and function arguments.
...
CameLIGO tests for tuples and function arguments.
2020-01-30 17:38:01 +00:00
Tom Jack
780e8e956c
Merge branch 'bugfix/religo-missing-in-some-docs' into 'dev'
...
Updated some docs that did not include reasonligo / .religo yet
See merge request ligolang/ligo!368
2020-01-29 19:57:01 +00:00
Suzanne Dupéron
8eb6472b00
Updated some docs that did not include reasonligo / .religo yet
2020-01-29 18:02:55 +00:00
Suzanne Dupéron
c534d6dff2
Cleanup
2020-01-29 17:37:10 +00:00
Suzanne Dupéron
821c980e3e
documentation for Declaration_constant
2020-01-29 17:36:34 +00: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
5ff9803989
Merge remote-tracking branch 'origin/dev' into dev
2020-01-28 22:30:31 +00:00
Suzanne Dupéron
a9a12ae244
Changes requested in MR review
2020-01-28 20:23:11 +00:00
Pierre-Emmanuel Wulfman
f36d6a01de
Modify record update, using path for update
2020-01-28 14:12:46 +00:00
Christian Rinderknecht
a29b5acb31
Finished refactoring the front-end.
2020-01-27 17:28:31 +01:00
Christian Rinderknecht
8047e98124
WIP: Refactoring of the front-end.
2020-01-27 16:36:04 +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
John David Pressman
e025eab45d
[LIGO-269] ID Layer Contract
2020-01-24 22:52:06 +00:00
John David Pressman
62a4482ff3
Change commit.salted_hash to be hash, reorder salt in tests, still failing
2020-01-24 13:28:02 -08: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
Christian Rinderknecht
47a41971d7
Fixed the parsing of [a * b -> c] as [(a * b) -> c].
2020-01-24 14:15:07 +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
John David Pressman
13de36d6db
Merge branch 'contract/timelock-repeat' into 'dev'
...
[LIGO-410] Contract/timelock repeat
See merge request ligolang/ligo!353
2020-01-24 12:01:15 +00:00
Christian Rinderknecht
41d6956b66
[WIP] Added traces to debug
2020-01-24 12:56:05 +01:00
John David Pressman
3a320c26c8
Modify hashlock to use commit-reveal and add non-working commit test
2020-01-24 03:29:00 -08:00
John David Pressman
98f85bb2fe
Merge branch 'dev' into contract/hashlock
2020-01-24 02:49:53 -08: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
Christian Rinderknecht
4f4294bf56
Refactoring of the front-end towards integration of the local builds
...
and the globol build, using the parser error messages, for instance.
2020-01-23 18:28:04 +01:00
John David Pressman
0636994ffb
Fix interval advance test for repeating time lock contract
2020-01-23 08:32:43 -08: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
4977c18e05
Fixed semantic conflict (split bytes into several constructor functions)
2020-01-23 11:43:43 +01:00
John David Pressman
f166748757
Merge branch 'gardening/e-bytes-split' into 'dev'
...
[LIGO-374] Split e_bytes into e_bytes_hex, e_bytes_raw and e_bytes_string
See merge request ligolang/ligo!336
2020-01-23 08:35:30 +00:00
John David Pressman
d260e831d1
Add failing interval advance test for repeating timelock contract
2020-01-22 23:05:41 -08:00
John David Pressman
eba4901a76
Merge branch 'docs/update-front-page-examples-2' into 'dev'
...
Update CameLIGO and ReasonLIGO examples on front page so they're usable in the IDE
See merge request ligolang/ligo!347
2020-01-23 03:19:46 +00:00
Suzanne Dupéron
ef6f46db5b
typer: bugfix: stray leftover attempt to typecheck the old way in the new typer
2020-01-22 15:30:38 +01:00
Suzanne Dupéron
c5190ac91d
typer: bugfix: missing case for E_skip
2020-01-22 15:30:29 +01:00
Suzanne Dupéron
d97044b581
typer: bugfix: arrow is now a built-in type constructor
2020-01-22 15:30:18 +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
30dac09494
typer: bugfix: use "String.equal", not "="
2020-01-22 13:49:32 +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
Christian Rinderknecht
d46d95ee90
Fixed CameLIGO parsing of -> vs *
...
Fixed reserved_name.ligo ("arguments" instead of "args").
2020-01-22 12:33:29 +01:00
John David Pressman
9781a1c8ff
Add rough draft of repeating timelock contract
2020-01-22 03:01:21 -08:00
Christian Rinderknecht
7437d6ae1a
Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev
2020-01-22 11:43:35 +01:00
John David Pressman
b50479b96b
Merge branch 'docs/michelson-specific' into 'dev'
...
[LIGO-358] Add Tezos-specific LIGO features docs
See merge request ligolang/ligo!335
2020-01-22 09:58:46 +00:00
John David Pressman
d878387424
Add salt to hashlock contract
2020-01-22 01:40:23 -08:00
John David Pressman
7756bfda93
Add rough draft of hashlock contract
2020-01-22 01:30:04 -08:00
John David Pressman
69ee6d0521
Update CameLIGO and ReasonLIGO examples on front page so they're usable in the IDE
2020-01-21 14:49:42 -08:00
Sander Spies
da53758d85
Merge
2020-01-21 21:26:52 +01:00
Sander Spies
f104b5e512
Handle parentheses when destructuring.
2020-01-21 21:23:31 +01:00
Lesenechal Remi
8237947c4d
monad fix
2020-01-21 19:04:51 +01:00
Christian Rinderknecht
786b183d40
[WIP]
...
* Reverted [pos.mli] to the previous signature, except [Pos.min]
that now takes a labelled parameter [file].
* Reverted [ParserAPI.ml] to the previous signature.
* Reexported [shor_error] in [ParserUnit].
* Changed the modules [LexToken] so that they export one function
to make attributes, the first, additional paramater being "[@"
or "[@@" (and invalid in PascaLIGO).
* Added support in all [ParserLog] for attributes (pretty-printings).
* Added AST nodes [Attr] and [AttrDecl] to PascaLIGO. The simplifier
takes care of hooking them with their respective declarations
or discarding them. (In the future, we should issue a warning for detached
attributes.)
2020-01-21 18:35:36 +01:00
Sander Spies
483f591f62
Typo
2020-01-21 14:57:13 +01:00
Pierre-Emmanuel Wulfman
5ba2144f0f
Merge branch 'new-typer-bugfix1' into 'dev'
...
Implemented some missing cases of the subst in the new typer.
See merge request ligolang/ligo!334
2020-01-21 13:53:27 +00:00
Sander Spies
95205609f8
Merge.
2020-01-21 14:14:23 +01:00
Lesenechal Remi
a2c51ddbcf
better description for bad_contract error message
2020-01-21 13:26:38 +01:00
Lesenechal Remi
f1977b12aa
self in lambda negative test
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
Suzanne Dupéron
93d16b4b6a
typer: do multiple substitutions at once (pass a sort of map from free variables to their substitution)
2020-01-21 13:25:04 +01:00
Sander
3223f9cfe1
Add sub commands to print different stages.
2020-01-21 12:24:51 +00:00
John David Pressman
c811f0058e
Change 'touples' to 'tuples' in docs
2020-01-21 03:13:57 -08:00
John David Pressman
dd44c0d621
Add self_address docs, fix warning for PACK and UNPACK
2020-01-21 02:45:38 -08:00
John David Pressman
44dd39dcb2
Fix examples on front page of ligolang.org, add reminder to change in future
2020-01-20 19:42:22 -08:00
Suzanne Dupéron
614970d2d7
Implemented some missing cases of the subst. First kinda actual typer test passes!
2020-01-20 21:19:37 +01:00
Suzanne Dupéron
688a636251
typer: cleanup
2020-01-20 21:19:37 +01:00
Sander Spies
e959ef4f6f
Forgot to add test file.
2020-01-20 19:04:02 +01:00
Sander Spies
fbb622cc03
Add support for tuple destructuring in ReasonLIGO
2020-01-20 19:03:00 +01:00
Christian Rinderknecht
8384e3d1f7
[WIP] Refactoring of front-end.
2020-01-20 10:57:07 +01:00
Christian Rinderknecht
673b54e6ae
Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev
2020-01-18 11:37:36 +01: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
John David Pressman
d6000be369
Add ReasonLIGO CHECK_SIGNATURE test to suite
2020-01-17 01:57:07 -08:00
John David Pressman
eea8e30e87
Add CameLIGO CHECK_SIGNATURE test to suite
2020-01-17 01:53:22 -08:00
John David Pressman
eb4336b0e7
Add PascaLIGO CHECK_SIGNATURE test to suite
2020-01-17 01:50:06 -08:00
John David Pressman
4835ac4d10
Split e_bytes into e_bytes_hex, e_bytes_raw and e_bytes_string
2020-01-16 22:46:28 -08:00
John David Pressman
411c17eb99
Add ReasonLIGO version of key_hash test
2020-01-16 21:45:40 -08:00
John David Pressman
4fcfa3df8f
Add CameLIGO key_hash test
2020-01-16 21:37:29 -08:00
John David Pressman
4ee3a29a34
Enable CameLIGO bytes_unpack test and add one for ReasonLIGO
2020-01-16 20:59:26 -08:00
John David Pressman
ca1caf2e61
Add bytes_unpack test for CameLIGO
2020-01-16 20:27:50 -08:00
Sander
88159e15b2
Add inline attribute
2020-01-16 19:36:04 +00:00
Christian Rinderknecht
5972d1d988
Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev
2020-01-14 18:37:17 +01:00
Christian Rinderknecht
cb8aaa7b9b
Additional refactoring to get local and global builds closer.
...
I removed the last top-level effect (the execution of cpp).
The idea is that ParserUnit.ml and each ParserMain.ml get closer
to pascaligo.ml, cameligo.ml and reasonligo.ml, respectively.
2020-01-14 18:35:30 +01:00
Christian Rinderknecht
c5b5ffe51a
Merge remote-tracking branch 'origin/dev' into rinderknecht-dev
2020-01-14 12:59:32 +01:00
Christian Rinderknecht
9570caac53
Refactoring to bring local builds of the parsers closer to the global build.
...
Added --expr to parse expressions.
2020-01-14 01:27:35 +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
Pierre-Emmanuel Wulfman
bbfcc9839b
Updates for ReasonLIGO
2020-01-10 18:00:23 +01:00
Pierre-Emmanuel Wulfman
98d6aea4e1
mr review 2
2020-01-10 17:28:45 +01:00
Pierre-Emmanuel Wulfman
60edd0cf5b
after review 1
2020-01-10 16:41:47 +01:00
Christian Rinderknecht
6bf91538c4
Some refactoring.
...
I removed AST.mli from CameLIGO (for maintenance's sake).
I removed useless functions.
I renamed unlexer.ml to Unlexer.ml
I added a cleaning rule for my Makefile in Makefile.cfg
2020-01-10 15:32:54 +01:00
Pierre-Emmanuel Wulfman
812834656a
Updates for OcamLIGO and PascaLIGO
2020-01-10 13:52:05 +01:00
Christian Rinderknecht
8a683e1a69
Merge branch 'feature/literal-bytes-again' into 'dev'
...
Fix literal bytes
See merge request ligolang/ligo!325
2020-01-10 10:35:04 +00:00
Suzanne Dupéron
e7589f1a6a
Merge branch 'feature/auto-generate-folds' into 'dev'
...
Automatic generation of the boilerplate for folds
See merge request ligolang/ligo!303
2020-01-10 00:24:55 +00: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
Tom Jack
5cef850bdd
Fix printing of bytes in parsers/lexers
2020-01-09 16:53:07 -06:00
Tom Jack
1b0ed4d4de
Fix literal bytes
2020-01-09 16:53:07 -06:00
Lesenechal Remi
20c9de0380
parset negative tests for all syntaxes
2020-01-09 22:19:40 +01:00
Lesenechal Remi
47199ca13c
add negative tests rules
2020-01-09 22:19:40 +01:00
Christian Rinderknecht
0791866a63
Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev
2020-01-09 20:59:22 +01:00
Christian Rinderknecht
19e2ffb750
Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev
2020-01-09 19:49:57 +01:00
Suzanne Dupéron
801efeed46
tests for automatic fold generator + fold_config hook to update the state before a node has been transformed, without transforming it.
2020-01-09 18:16:02 +00:00
Suzanne Dupéron
fe5f8d9f64
fold_config hook to update the state after a node has been transformed, without transforming it.
2020-01-09 18:16:02 +00:00
Suzanne Dupéron
8b98898dbf
first executable version of the auto-generation of folds
2020-01-09 18:16:02 +00:00
Suzanne Dupéron
3605768bb0
Started auto-generation of folds on ADTs (part of the code is generated, not all)
2020-01-09 18:16:02 +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
Christian Rinderknecht
dad9b0f816
Refactoring of the AST and simplfier of PascaLIGO.
...
Some weeks ago, anonymous functions as expressions were added to
PascaLIGO, unfortunately in a manner that allowed in theory for
contexts in which a named function was found when an anonymous was
expected, and vice-versa. That explains that the simplifier had two new possible errors:
* unexpected_anonymous_function
("you provided a function declaration without name")
* unexpected_named_function
I changed the AST and the parser so that function expressions
correspond to anonymous functions (without block) and function
declarations correspond to named functions.
I also removed a error in the simplifier, which was unused:
* bad_bytes
("you provided a function expression with a name (remove it)")
2020-01-09 17:26:07 +01:00
Tom Jack
10eebf69bd
Support always-failing conditionals
2020-01-09 09:47:54 -06:00
Christian Rinderknecht
c347d1b08b
Removed temporary Emacs file.
2020-01-09 15:55:58 +01:00
Christian Rinderknecht
9426222d86
Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev
2020-01-09 14:27:17 +01:00
Christian Rinderknecht
d123abd46f
Added new error for duplicated record fields.
...
Removed interface for the AST (for maintenance sake).
2020-01-09 14:26:47 +01:00
Sander Spies
8904ededb7
Improve error handling of negative start positions.
2020-01-09 10:41:24 +00:00
Lesenechal Remi
af5c32cb98
checking .md file arguments
2020-01-09 10:33:44 +01:00
Christian Rinderknecht
330d2ab351
Forgot to commit this.
2020-01-08 23:47:37 +01:00
Christian Rinderknecht
b8017ca8ac
Moved stuff to module [SyntaxError] from [AST] and [Parser].
...
Added support for the rejection of non-linear patterns in PascaLIGO.
2020-01-08 23:35:09 +01: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
Suzanne Dupéron
13ff600509
union-find: rename partition to UnionFind for more consistency across the various names that opam and dune assign to this library
2020-01-08 18:12:00 +00:00
Suzanne Dupéron
dd9a4dfb47
update union-find library (part 2: adjust module names)
2020-01-08 18:12:00 +00:00
Suzanne Dupéron
5e444dd278
update union-find library (part 1: remove old copy, download https://github.com/rinderknecht/UnionFind.git 3fc434d0d75e40d40d17f5abb70d86a51f434771 in new folder)
2020-01-08 18:12:00 +00:00
Christian Rinderknecht
8bdc103ec8
Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev
2020-01-08 16:46:59 +01:00
Christian Rinderknecht
9e7c97637c
Added support for language-specific parse errors for PascaLIGO:
...
* Duplicate variants in the same type declaration
* Duplicate parameter in the same function declaration
* Shadowing of predefined value in a declaration
I fixed the architecture for that support: ParserMain.ml is now where
those specific errors are handled, and they are produced by the
semantic actions of the parsers.
2020-01-08 16:39:52 +01: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
Lesenechal Remi
05afd6c8c7
improve simplifier self pass errors
2020-01-07 18:32:32 +00:00
Sander Spies
8f57f63be7
Show proper parser error messages in the terminal again.
2020-01-07 12:15:54 +00:00
Tom Jack
6716af9123
Eliminate some spurious synonyms of "location"
2020-01-07 00:34:41 +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
2667ed62b3
fix indent (unrelated)
2020-01-06 22:29:07 +01:00
Lesenechal Remi
55a8734c81
key_hash now comparable
2020-01-06 21:31:54 +01:00
Lesenechal Remi
6841609362
allow key_hash literals
2020-01-06 21:31:45 +01:00
Lesenechal Remi
a0a8f114c0
replaces remove_from by take which does not raise any exceptions
2020-01-06 19:24:41 +01:00
Lesenechal Remi
8ce4772ae4
add tests
2020-01-06 18:51:43 +01:00
Lesenechal Remi
7e05b7d276
now removes the entry-point declaration from the program before aggregation
2020-01-06 18:41:53 +01:00
Sander Spies
301defda3f
Show lexer error messages in CameLIGO + PascaLIGO.
2020-01-06 13:46:11 +01:00
Christian Rinderknecht
ddd438aaa8
Forgot to add.
2020-01-06 10:03:41 +00:00
Christian Rinderknecht
a6e4837aa0
Sharing standalone lexers and parsers, and parser error API.
2020-01-06 10:03:41 +00:00
Lesenechal Remi
f133729318
fix dune file warnings
2020-01-05 14:32:15 +01:00
Lesenechal Remi
b1dd35b56d
fix definition of predecessor_timestamp
2020-01-05 14:29:22 +01:00
Christian Rinderknecht
e23350071f
Merge remote-tracking branch 'origin/dev' into rinderknecht-dev
2020-01-04 17:47:20 +01:00
John David Pressman
10b26f610f
Show lexer error messages in ReasonLIGO
2020-01-04 08:24:16 +00: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
c805a27b99
adding timestamp literals as string or int
2020-01-03 18:11:27 +01:00
Christian Rinderknecht
1806d6d74c
Merge remote-tracking branch 'origin/dev' into rinderknecht-dev
2020-01-03 16:58:37 +01:00
Lesenechal Remi
a3a09dc0e5
functionize the name in the error
2020-01-03 16:23:18 +01:00
Lesenechal Remi
4d56a71bd1
propagate location for cameligo variables
2020-01-03 16:23:18 +01:00
Lesenechal Remi
3288696784
add the name of the variable in the unbound variable error message title
2020-01-03 16:23:18 +01:00
Lesenechal Remi
72f4ed35f1
print ill-typed michelson code
2020-01-03 15:25:37 +01:00
John David Pressman
5108b820cf
Fix minor typos in wrong michelson contract parameter/storage msgs
2020-01-03 15:25:37 +01:00
Lesenechal Remi
e834e2ac20
More informative errors when calling michelson typecheck function
2020-01-03 15:25:37 +01:00
Sander
ce6ccab728
Add support for empty constructors.
2020-01-03 13:01:13 +00:00
Lesenechal Remi
e25c5bac35
adding loops.md to the list of tested file and fixed "loops.md"
2020-01-02 20:38:45 +01:00
John David Pressman
7c4f59035f
Add inclusion directive docs and inclusion tests for CameLIGO and ReasonLIGO
2020-01-02 16:11:03 +00:00
Lesenechal Remi
2d7c3eb216
support bytes_unpack operator in pascaligo + tests
2020-01-02 16:19:21 +01:00
Christian Rinderknecht
c18e6e9748
Handling of EOF in ParserAPI messages.
2020-01-02 15:44:21 +01:00
Lesenechal Remi
46027de719
Proper error with location
2020-01-02 15:21:56 +01:00
Lesenechal Remi
8584bacf83
test & dune promote
2020-01-02 15:21:56 +01:00
Lesenechal Remi
42cbabac69
check ast_simplified address literals to be well formatted
2020-01-02 15:20:48 +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
d0ea94b472
'dune runtest' also execute 'md files tests'
2019-12-31 14:23:51 +01:00
Lesenechal Remi
c171ce7ad9
fully tested md_files
2019-12-31 14:23:51 +01:00
Lesenechal Remi
bddad3f234
add missing GE operator (>=) to cameligo
2019-12-31 14:23:51 +01:00
Lesenechal Remi
afa61e5825
Now have an default group "ungrouped" for all the code blocks without any "group=..."
2019-12-31 14:23:51 +01:00
Lesenechal Remi
08471ba246
basic architecture for the doc tests
2019-12-31 14:23:51 +01:00
Lesenechal Remi
c873350b15
no ppx in expect_tests lib
2019-12-31 14:23:51 +01:00
Lesenechal Remi
acee34985b
remove ppx in tests
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
6f804a4432
exclude parser debug tooling
2019-12-31 14:23:51 +01:00
Lesenechal Remi
e8d1e359f4
exclude PPs from coverage
2019-12-31 14:23:51 +01:00
Lesenechal Remi
c8339ed2ef
first try
2019-12-31 14:23:51 +01:00
John David Pressman
dcfc8d6391
Horrible hack to rewrite CST for tuple param destruct,
...
Fails because Let In doesn't support multi-bind
2019-12-29 01:24:22 +00:00
Christian Rinderknecht
ea7460f8c9
Miscellaneous.
2019-12-28 17:58:15 +01:00
Christian Rinderknecht
c92e3b28ad
Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev
2019-12-28 17:58:09 +01:00
John David Pressman
3d9489530a
Merge branch 'dev' into feature/cameligo-multi-bind-let-in
2019-12-27 09:29:30 -08:00
John David Pressman
e1ecb36e61
Have let ... in evaluate right hand side first during multi-bind
2019-12-26 21:06:24 -08:00
Christian Rinderknecht
6814e7786a
Same error formatting for the incremental and monolithic API of Menhir.
2019-12-26 18:57:02 +01:00
Christian Rinderknecht
379311a748
Shortened the parser's API.
...
Unfortunately, even thought all the front-ends use the same
ParserAPI.ml, that file cannot be moved to the folder `shared` due to
a dependency on AST.ml produced by Menhir.
2019-12-26 18:17:57 +01:00
Christian Rinderknecht
548b1267a4
Added .gitignore for all syntaxes.
2019-12-26 14:13:19 +01:00
Christian Rinderknecht
07a70b4648
Added unlexing to ReasonLIGO.
2019-12-26 13:31:54 +01:00
Christian Rinderknecht
ea4eb76013
I added support for unlexing to CameLIGO. Fixed cover.sh.
2019-12-26 13:23:32 +01:00
John David Pressman
2d9de2aef0
Clean up let ... in multi-bind
2019-12-24 15:35:05 -08:00
John David Pressman
48a3bebadd
Working rough draft of let ... in multi-bind
2019-12-24 14:54:22 -08:00
John David Pressman
7454e8b01f
Add let-in multi bind test
2019-12-24 13:48:14 -08:00
Christian Rinderknecht
7c1d637226
Fixing the constant constructors in CameLIGO's simplifier.
2019-12-24 18:56:21 +01:00
Christian Rinderknecht
e99c9b32de
Fixed the [dune] file for building [pascaligo/Unlexer.exe].
2019-12-24 17:35:43 +01:00
Christian Rinderknecht
dadf1fbe41
Fixed the stratification of "++".
2019-12-24 17:01:39 +01:00
Christian Rinderknecht
7b9b6866b2
Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev
2019-12-24 14:26:32 +01:00
Christian Rinderknecht
ce857fbe40
Fixed the [dune] files to build ParserMain.exe
2019-12-24 14:25:40 +01:00
Lesenechal Remi
bdd1d09c04
t_operator can not throw exceptions
2019-12-24 12:43:32 +01:00
Christian Rinderknecht
b0e92a58bf
Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev
2019-12-24 11:59:34 +01:00
Sander Spies
29c96fb021
Fix 'dune build ParserMain.exe'.
2019-12-24 08:08:50 +01:00
Christian Rinderknecht
e6a9bf6510
Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev
2019-12-23 21:46:21 +01:00
Christian Rinderknecht
24f067b69e
Added nat and bytes to ReasonLIGO and CameLIGO (expressions).
...
Use the correct ParserAPI for ReasonLIGO now.
2019-12-23 20:37:48 +01:00
John David Pressman
1bf04574c1
Merge branch 'dev' into feature/set-delegate
2019-12-20 08:37:01 -08:00
Christian Rinderknecht
705b425589
Merge remote-tracking branch 'origin/dev' into rinderknecht-dev
2019-12-20 16:46:33 +01:00
Christian Rinderknecht
072dea757c
[WIP] Adding the infrastructure for supporting the incremental API of Menhir.
...
* I added CLI option "--mono" to select the monolithic API of Menhir.
* I added a field "win" to the state of the lexer (a two-token
window for error reporting).
* I escaped LIGO strings before making them OCaml strings (for
example for printing).
2019-12-20 16:44:03 +01:00
Lesenechal Remi
638b45611d
fix message of redundant_match_case error
2019-12-20 12:17:47 +00:00
Lesenechal Remi
70977d1f00
improve badly annotated timestamp error
2019-12-20 12:18:36 +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
Lesenechal Remi
e8c8aa4d2b
Time lock : contract + tests
2019-12-20 12:18:36 +01:00
Tom Jack
71e2670572
Fix one hex printing bug
2019-12-19 13:05:30 -06: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
a835bc9286
Added "did you mean" feature for unbound type names
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
Sander
600ae2d4f6
Move to Trace.error instead of simple_error.
2019-12-19 13:50:57 +00:00
Christian Rinderknecht
3add77eba5
Adding the build of the unlexer by dune.
2019-12-18 22:17:49 +00:00
Christian Rinderknecht
d47ec7cf7c
Fixed a tag file (local build of PascaLIGO with my Makefile).
2019-12-18 22:17:49 +00:00
Tom Jack
172038cef0
Kill warning 45 by reusing Pervasives.result for Trace
2019-12-18 21:20:35 +00:00
Christian Rinderknecht
c46bf008c8
Adding the build of the unlexer by dune.
2019-12-18 21:32:12 +01:00
Christian Rinderknecht
dfcdc54965
Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev
2019-12-18 21:22:38 +01:00
Christian Rinderknecht
64f04b8c40
Fixed a tag file (local build of PascaLIGO with my Makefile).
2019-12-18 16:53:32 +01: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
Christian Rinderknecht
97a6d7162f
Regression.
2019-12-18 15:50:42 +01:00
Christian Rinderknecht
c7bd986772
Merge remote-tracking branch 'origin/dev' into rinderknecht-dev
2019-12-18 14:22:57 +01:00
Sander Spies
7518005532
Merge branch 'dev' of https://gitlab.com/ligolang/ligo into reasonligo-improvemtns
2019-12-18 09:59:19 +01:00
John David Pressman
310dde6dc9
[LIGO-286] Tuple destructuring doesn't do left hand type inference in CameLIGO
2019-12-17 21:04:53 +00:00
John David Pressman
7067644b1d
Merge branch 'dev' into feature/set-delegate
2019-12-17 12:17:02 -08: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
a4b1c9951d
Add ReasonLIGO and CameLIGO tests for SET_DELEGATE
2019-12-17 09:50:47 -08:00
John David Pressman
fdeb95288d
Passing SET_DELEGATE test for PascaLIGO
2019-12-17 09:34:05 -08:00
Christian Rinderknecht
078dd06132
Merge branch 'rinderknecht-dev' of gitlab.com:ligolang/ligo into rinderknecht-dev
2019-12-17 17:07:10 +01:00
Christian Rinderknecht
7ae8d9340b
Merge remote-tracking branch 'origin/dev' into rinderknecht-dev
2019-12-17 17:04:59 +01:00
Christian Rinderknecht
8210a4e186
Added basic support for Menhir's incremental API.
...
I added the token Bytes to ReasonLIGO's [LexToken.mll] for the build.
2019-12-17 17:03:43 +01:00
Christian Rinderknecht
757b0da78c
Removed the open type [Error.t] (less [assert false]).
...
I also had to remove the keywords [Down], [Fail] and [Step] in
PascaLIGO that made a mysterious and unwanted come back. (I did not
bother with [git blame]).
2019-12-17 15:58:27 +00:00
Christian Rinderknecht
531dd238a7
Added unlexer for PascaLIGO.
2019-12-17 15:58:27 +00:00
Rémi Lesenechal
e6cb4e63c6
Contracts: replaceable ID
2019-12-17 14:18:09 +00:00
Christian Rinderknecht
35d4b64a02
Removed the open type [Error.t] (less [assert false]).
...
I also had to remove the keywords [Down], [Fail] and [Step] in
PascaLIGO that made a mysterious and unwanted come back. (I did not
bother with [git blame]).
2019-12-17 14:56:16 +01:00
Sander Spies
ebba74e7a7
Merge branch 'dev' of https://gitlab.com/ligolang/ligo into reasonligo-improvemtns
2019-12-17 14:34:58 +01:00
Lesenechal Remi
ffb225e269
fix address arity and update test
2019-12-17 11:10:29 +01:00
John David Pressman
20285f2b9e
Add broken set_delegate test to LIGO, get to typer error
2019-12-16 16:26:39 -08:00
Tom Jack
c83813456a
Relocate .opam
2019-12-16 22:50:25 +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
Sander Spies
52eff4e764
Incorrect function arguments message for ReasonLIGO.
2019-12-16 18:04:15 +01:00
Christian Rinderknecht
257ef4f5d2
Added unlexer for PascaLIGO.
2019-12-16 17:37:46 +01:00
Sander Spies
09875cf1da
Make type_expr_simple less complicated.
2019-12-16 14:54:12 +01:00
Christian Rinderknecht
a94ee53fd3
Finished the refactoring of the parsers.
2019-12-15 20:59:04 +01:00
Christian Rinderknecht
f8d6396fcd
Refactoring of the parsers
...
* [CameLIGO/ReasonLIGO] The AST node [EAnnot] (expressions
annotated by a type) now records the region in the source
code for the colon.
* [CameLIGO/ReasonLIGO/PascaLIGO] I added the syntax
%token <...> TOKEN "lexeme"
* [ReasonLIGO] I changed the AST nodes [Mtz] and [Str] to
[Mutez] and [String], respectively (in accordance with the
PascaLIGO front-end). I changed token [DOTDOTDOT] to
[ELLIPSIS].
* [ReasonLIGO] I added what was missing to make a loca build
with my Makefile.
2019-12-15 17:46:08 +01:00
Christian Rinderknecht
6692643cc5
Streamlined LexerMain and ParserMain for ReasonLIGO.
2019-12-13 17:28:15 +01:00
Christian Rinderknecht
2904a40373
Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev
2019-12-13 14:53:33 +01:00
Christian Rinderknecht
e685e313f0
Fixed the build after I made a small error when fixing the latest
...
merge conflict.
2019-12-13 12:30:59 +01:00
Christian Rinderknecht
c7ffa6d563
Merge remote-tracking branch 'origin/dev' into rinderknecht-dev
2019-12-13 12:28:33 +01:00
Christian Rinderknecht
0226b9f23c
Refactoring of comments (for [dune build @doc]).
...
Refactoring of parsing command-line arguments
* The type [options] is now abstract and implemented as an
object type to avoid struggling with scoping and type
inference when record types share some common field names.
Refactoring of ParserLog for PascaLIGO and CameLIGO
* The immediate motivation behind that refactoring was to
remove the use of a couple of global references. A
consequence is that we have a nicer and more compact code, by
threading a state. The files [pascaligo/Tests/pp.ligo] and
[ligodity/Tests/pp.mligo].
* Another consequence is that the choice of making strings from
AST nodes depends on the CLI (offsets? mode?). After this
refactoring, that choice is hardcoded in the simplifiers in a
few places (TODO), waiting for a general solution that would
have all CL options flow through the compiler.
* I removed the use of vendors [x_option.ml], [x_map.ml] and
[x_list.ml] when handling optional values. (Less dependencies
this way.)
Refactoring of the ASTs
* I removed the node [local_decl], which was set to [[]]
already in a previous commit (which removed local
declarations as being redundant, as statements could already
be instructions or declarations).
* I changed [StrLit] to [String] in the AST of CameLIGO and
ReasonLIGO.
* I also changed the type [fun_expr] so now either a block is
present, and therefore followed by the [with] keyword, or it
is not. (Before, the presence of a block was not enforced in
the type with the presence of the keyword.)
Notes
* [LexerMain.ml] and [ParserMain.ml] for CameLIGO and PascaLIGO
are almost identical and differ in the same way (language
name and file extension), which suggests that they should be
in the [shared] folder and instanciated as a functor in the
future (TODO).
* I removed the blank characters at the end of many lines in
the parser of ReasonLIGO.
2019-12-13 12:21:52 +01: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
Sander Spies
6f9134834f
Remove original Cameligo and rename Ligodity to Cameligo.
2019-12-12 14:35:07 +01:00
Lesenechal Remi
1842d50ef1
some Ast_simplified PP improvements
2019-12-12 12:15:18 +01: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
c62f147a01
MR requests
2019-12-12 11:00:04 +01:00
Lesenechal Remi
df0dfb029b
better error message when a contract in invalid
2019-12-11 20:02:54 +01:00
Lesenechal Remi
c0472629b9
application at ast_simplified level
2019-12-11 20:02:54 +01:00
Lesenechal Remi
ebd073f5e2
Separate aggregation case for contract and expression
2019-12-11 20:02:54 +01:00
Lesenechal Remi
9d83159e89
merge with dev
2019-12-10 16:01:26 +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
1c346ead28
remove useless code in test helper
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
bbf6b7b860
sséssaoupa?
2019-12-10 15:58:53 +01:00
Lesenechal Remi
974fa6432b
Revert "unify a little more"
2019-12-10 15:58:53 +01:00
Lesenechal Remi
85cffdfc52
remove comented function
2019-12-10 15:58:53 +01:00
Lesenechal Remi
255b9a6e00
type compile_main function in contracts tests
2019-12-10 15:58:53 +01:00
Lesenechal Remi
6ed2f2b3ae
unify a little more
2019-12-10 15:58:53 +01:00
Lesenechal Remi
26f26171e6
Tests clean
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
Lesenechal Remi
8edeb27321
add a function to fetch (param,storage) in a contract's lambda
2019-12-10 15:58:53 +01:00
Sander
95a7e19be6
Add ReasonLIGO support
2019-12-10 13:47:31 +00:00
Christian Rinderknecht
04a770e22d
To enable local builds of the PascaLIGO parser.
2019-12-09 15:52:17 +00:00
John David Pressman
f043135df1
Add Michelson map membership to CameLIGO and PascaLIGO
2019-12-06 09:35:08 -08:00
Pierre-Emmanuel Wulfman
034c92a64c
Use ADT for types and move type to ast_common
...
and Making name, type_variable, built-in, constructor, label and string uncompatible types in ligo (weird bug with types in ligodity)
2019-12-04 11:40:58 +00:00
John David Pressman
6a4d58d467
Overkill the tuple ordering bug
2019-12-03 11:10:53 -08:00
John David Pressman
085a756ed3
Fix bug where tuples are destructured with the members in the wrong order
2019-12-03 10:49:58 -08:00
John David Pressman
8609196bac
Fix IMPLICIT_ACCOUNT
2019-12-03 00:00:01 -08:00
Tom Jack
317313ecc6
Rename executable to fix merlin confusion
2019-12-01 23:08:05 +00:00
John David Pressman
0b3e057819
Add self address to CameLIGO and PascaLIGO
2019-12-01 21:56:49 +00:00
John David Pressman
03dd86c9ad
Expose address operator in PascaLIGO and CameLIGO
2019-12-01 21:56:49 +00:00
John David Pressman
694c3aea97
Add implicit_account to operators
2019-12-01 21:56:49 +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
Gabriel Alfour
bfb01d371a
Merge branch 'feature/more-subtraction' into 'dev'
...
Type subtraction also as nat->int->int and int->nat->int
See merge request ligolang/ligo!228
2019-11-29 10:13:29 +00:00
Tom Jack
49586b65be
Type subtraction also as nat->int->int and int->nat->int
2019-11-28 06:48:24 -06: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
Lesenechal Remi
e7195c4c41
mutisig v2 some renaming and counter reset fix
2019-11-26 19:21:51 +01:00
Lesenechal Remi
39c7766b08
multisig v2 comments
2019-11-26 19:11:30 +01:00
Lesenechal Remi
cf540a1a78
multisigv2 default entry point
2019-11-26 19:11:30 +01:00
Lesenechal Remi
c8eb1a3fa6
multisigv2 with less user uncertainty
2019-11-26 19:11:30 +01:00
Lesenechal Remi
b82383751c
multisigv2 more robust to spam
...
Set limits to the number of approvals and message sizes
2019-11-26 19:11:30 +01:00
Lesenechal Remi
652138b115
new 'expect' test helpers working on expressions
2019-11-26 19:11:30 +01:00
Lesenechal Remi
00def6d20e
Fix a bug, test added:
...
A never accounted message was not adding anything to the map
2019-11-26 19:11:30 +01:00
Rémi Lesenechal
48bef70a6a
Merge branch 'record-accesses-fix' into 'dev'
...
Broken nested access to record
See merge request ligolang/ligo!225
2019-11-26 18:09:06 +00:00
Lesenechal Remi
c1c551e33f
fix and more tests
2019-11-26 18:08:53 +01:00
Lesenechal Remi
848b902cd9
generated variable name typo
2019-11-26 17:49:23 +01:00
Tom Jack
f7ef0472be
Add command for measuring contracts
2019-11-25 17:36:22 -06:00
Tom Jack
c322ca53de
Merge branch 'feature/cli-tests' into 'dev'
...
Add some cli expect tests
See merge request ligolang/ligo!215
2019-11-25 19:59:47 +00:00
Tom Jack
3323c7f7d2
Fix build: constrain dune version
2019-11-25 08:15:11 -06:00
Tom Jack
e16ddf7ddc
Merge branch 'region-invalid' into 'dev'
...
Fix a Region.Invalid error in Cameligo simplifier
See merge request ligolang/ligo!214
2019-11-22 21:53:59 +00:00
Rémi Lesenechal
c7dfd54f7e
Resolve "Error when dry-running a contract (having a storage which contains a lambda)"
2019-11-22 20:28:55 +00:00
Rémi Lesenechal
1219a0188c
Merge branch 'contract-multisigv2' into 'dev'
...
Multisig v2
See merge request ligolang/ligo!218
2019-11-22 17:04:35 +00:00
Lesenechal Remi
6555c39c9d
some review request
2019-11-22 17:15:49 +01:00
Lesenechal Remi
cd94fd850b
move common funciton test helpers
2019-11-22 15:52:46 +01:00
Lesenechal Remi
30a410413a
mulisig contract v2 and test
2019-11-22 15:41:30 +01:00
John David Pressman
0b50d94071
Add higher order function test to CameLIGO
2019-11-22 02:22:29 -08:00
Tom Jack
7f7d5972ac
Fix a Region.Invalid error in Cameligo simplifier
2019-11-21 16:53:17 -06:00
Tom Jack
6f9778f578
Add some cli expect tests
2019-11-21 16:46:38 -06:00
Tom Jack
dbb36e6fdc
Use runtest to run tests
2019-11-21 12:28:38 -06:00
Lesenechal Remi
17ecf12fa3
multisig : non quadratic signature check
2019-11-21 17:21:39 +01:00
Lesenechal Remi
88a0f33fca
add key_hash type and crypto_key_hash operator to pascaligo
2019-11-21 17:21:39 +01:00
Lesenechal Remi
87d0064113
Multisig made robust to replay attack
2019-11-21 17:21:39 +01:00
Lesenechal Remi
1185b8abda
add chain_id type and operator
2019-11-21 17:21:39 +01:00
Lesenechal Remi
4edf58726a
multisig tests
2019-11-21 17:21:39 +01:00
Lesenechal Remi
beeba317d6
multisig contract
2019-11-21 17:19:11 +01:00
Lesenechal Remi
edb1e3d607
add crypto_check function to pascaligo
2019-11-21 17:19:11 +01:00
Lesenechal Remi
2fa78bd0bd
add key and signature types
2019-11-21 17:19:11 +01:00
Tom Jack
5ab3bf85e9
Merge branch 'mystery-bigmap' into 'dev'
...
Fix/simplify big_maps using Babylon
See merge request ligolang/ligo!173
2019-11-21 15:04:37 +00:00
Tom Jack
81c49f4342
Fix/simplify big_maps using Babylon
2019-11-21 08:18:18 -06:00
John David Pressman
c2c774ba75
Add closure test to CameLIGO
2019-11-21 06:02:47 -08:00
Lesenechal Remi
f27f8c10d1
For collection loop: also capture variable in logical blocks
...
Also, the iterated element/s are appended tot he list of local declaration
2019-11-21 11:28:32 +01:00
Pierre-Emmanuel Wulfman
cdb36167f9
remove rope
2019-11-20 17:27:32 +01:00
John David Pressman
eb85595818
Add is_nat operator to CameLIGO
2019-11-20 12:48:55 +00:00
John David Pressman
598fbf96ed
Add is_nat operator to PascaLIGO
2019-11-20 12:48:55 +00:00
John David Pressman
4270cc0d22
[LIGO-229] Change ordering of collection operation args
2019-11-20 12:16:31 +00:00
Tom Jack
e9319b518c
Merge branch 'fix-dev' into 'dev'
...
Fix semantic merge conflict in test and parser
See merge request ligolang/ligo!205
2019-11-20 00:07:21 +00:00
Tom Jack
1a3909affd
Fix semantic merge conflict in test and parser
2019-11-19 17:19:26 -06:00
Rémi Lesenechal
5aada38d5d
Merge branch 'feature/tests-catch-failwith-and-pack' into 'dev'
...
Test framework catch failwith and pack
See merge request ligolang/ligo!203
2019-11-19 23:18:07 +00:00
Lesenechal Remi
725176a59d
allow to pack message (aka lambda of type unit -> operation list)
2019-11-19 23:27:43 +01:00
Tom Jack
863dfbb39d
Merge branch 'feature/get-entrypoint' into 'dev'
...
Add `get_entrypoint`...
See merge request ligolang/ligo!184
2019-11-19 22:27:12 +00:00
John David Pressman
9b0eb636fb
Properly typed multi-variable binding simplification
...
Thanks for the help Sanders. :)
2019-11-19 21:13:52 +00:00
Lesenechal Remi
f7d6a5ea58
allow to catch failwith's in our tests
2019-11-19 15:38:23 +01:00
Rémi Lesenechal
f0655eab28
Pascaligo for collection loops: take locally declared variable into account
2019-11-19 13:25:48 +00:00
John David Pressman
bbcacc253b
Merge branch 'feature/pascaligo-anon-functions' into 'dev'
...
Feature/pascaligo anon functions
See merge request ligolang/ligo!201
2019-11-19 08:33:54 +00:00
John David Pressman
e1a05a27c5
Remove vestigial commented-out code
2019-11-18 23:45:26 -08:00
Matej Sima
5ba34b3ac3
Updated docs with blockless & anonymous functions, added variable mutation disclaimer, updated landing page pascaligo example.
2019-11-19 01:44:36 +01:00
galfour
63822e0430
test anon function
2019-11-18 18:44:15 +01:00
Tom Jack
723201ce5e
Add get_entrypoint
...
2019-11-18 09:28:20 -06:00
galfour
ddc4b7b7a5
add anon functions; remove pre-block declarations; update tests
2019-11-18 16:10:48 +01:00
Lesenechal Remi
91e245ef70
Fix issue with nested collection loop where inner loop iterated elements were shadowing outer loop iterated element
2019-11-18 14:14:54 +01:00
galfour
5422049dba
Merge branch 'dev' into feature/more-applications-pascaligo
2019-11-18 09:53:57 +01:00
Lesenechal Remi
e689d3d3b7
more doc
2019-11-15 20:05:35 +01:00
Lesenechal Remi
683bc0a72b
fix problems with nested for collection loop
2019-11-15 20:05:35 +01:00
Tom Jack
a73ede31e7
Work around upstream in-place update
2019-11-15 10:02:22 -06:00
galfour
d0efbd9f92
add and test more ways to do function application in pascaligo
2019-11-14 20:13:15 +01:00
Tom Jack
5b60109606
Improve purity test for dead code elimination
2019-11-13 14:05:22 -06:00
John David Pressman
3675aed76d
Merge branch 'dev' of ssh://gitlab.com/ligolang/ligo into feature/pascaligo-balance
2019-11-12 17:16:07 -08:00
Pierre-Emmanuel Wulfman
29a86ad411
Fix: deep access
2019-11-12 17:07:09 +00:00
John David Pressman
273ec8c280
Add ability to access balance to PascaLIGO
2019-11-12 08:01:18 -08:00
Pierre-Emmanuel Wulfman
f91de985d0
remove 'Access_Map'
2019-11-12 14:28:58 +00:00
Rémi Lesenechal
73919e3a5c
Merge branch 'rinderknecht-dev' into 'dev'
...
Removing the type annotation for variables iterating over collections.
See merge request ligolang/ligo!178
2019-11-07 11:23:31 +00:00
Christian Rinderknecht
02f58ee212
I removed the annotation for the variable that iterates over collections.
...
for x in set s block { ... } // now
for x : t in set s block { ... } // before
2019-11-06 20:12:25 +01:00
John David Pressman
7c291158c2
Finish balance operator and add test for CameLIGO
2019-11-06 11:08:18 -08:00
Christian Rinderknecht
759978393a
Merge branch 'rinderknecht-dev' into 'dev'
...
Refactoring of PascaLIGO's front-end
See merge request ligolang/ligo!176
2019-11-06 17:17:02 +00:00
Christian Rinderknecht
0fdbbe0a4c
Merge remote-tracking branch 'origin/dev' into rinderknecht-dev
2019-11-06 17:33:39 +01:00
Christian Rinderknecht
9da6d81a0f
Added local test file.
2019-11-06 17:33:00 +01:00
Christian Rinderknecht
fe90246e3a
Fixed the printing of some AST nodes.
2019-11-06 17:23:49 +01:00
Tom Jack
a69d084d0a
Fix merge conflict
2019-11-06 07:35:15 -06:00
Christian Rinderknecht
70a9afcce2
Merge branch 'rinderknecht-dev' into 'dev'
...
Refactoring of Ligodity (CameLIGO) and making an AST pretty-printer
See merge request ligolang/ligo!172
2019-11-06 12:18:54 +00:00
Pierre-Emmanuel Wulfman
e741531041
Merge branch 'clean-sts-solver' into 'dev'
...
New typer in a separate folder along with old typer
See merge request ligolang/ligo!166
2019-11-06 11:28:03 +00:00
Suzanne Dupéron
0b7a84e949
Fixed qwerty typo + small cleanup
2019-11-05 21:52:59 +00:00
Christian Rinderknecht
bd6ce2f28c
Bug fix: Some nodes were not indented.
2019-11-05 15:57:43 +01:00
John David Pressman
2aeebb8726
Add bytes arithmetic tests to CameLIGO
2019-11-04 16:58:34 -08:00
Christian Rinderknecht
351025b52d
Refactoring of Ligodity (CameLIGO) and making an AST pretty-printer
...
- AST.ml/AST.mli:
- The AST now distinguishes the constructors `None` and `Some` as being
predefined, as in PascaLIGO. See type `AST.constr_pattern`.
- I removed the nodes specific to Liquidity,
e.g. `let%entry`, and, in particular, the natural literals
ending with `p`. Now it should be `n`, as in `10n`.
- I renamed the node `TAlias` to `TVar`.
- I have applied the rule of expanding type expressions after `of` when
those were not records.
- The type of the argument to a data constructor is now
`type_expr`, instead of `cartesian`.
- I added the patterns for bytes (`PBytes`) and natural literals (`PNat`).
- I renamed the node `Sugar` into
`PListComp` (meaning "pattern of list comprehension").
- Record types in CameLIGO now must have at least one field declaration.
- Replaced the type `closing` and `opening` with one type `compound`,
which captures only the right combinations of opening and closing.
- Components of tuples in a selection must not be written
between parentheses. For example, `a.b.(1).(0)` is now
`a.b.1.0`, as in PascaLIGO.
- LexToken.mli/LexToken.mll
- I renamed the string literal `Str` into `String`.
- I added the tokens `C_None` and `C_Some` (to distinguish the
constructors `None` and `Some`. See AST.ml)
- Fixed the function `mk_sym` so it does not fail with `failwith`, but
with `Error Invalid_symbol`.
- Lexer.mll (shared)
- I removed the character `%` from the identifiers (used to
support Liquidity, like `entry%point` and `match%nat`).
- I adde to the hint on broken strings: "or insert a backslash"
(from a Gitlab issue).
- ParToken.mly
- I added the tokens `C_None` and `C_Some` (to distinguish the
constructors `None` and `Some`. See AST.ml and LexToken.mll)
- Parser.mly
- Fixed the order of declarations in the AST (it was reversed).
- I removed syntax support for Liquidity.
- I added user-defined constructor applications to irrefutable
patterns (the ones afer a `let`), even though only the type
checker can decide that they are truly irrefutable because they
are the only constructors of their types.
- I added natural numbers and bytes to patterns.
- Access of tuple components do not require parentheses now, like
`a.b.1.0`.
- I refactored the semantic actions.
- I added the empty sequence `begin end`.
- ParserLog.ml/ParserLog.mli
- I added a pretty-printer for the AST (with source locations).
- ParserMain.ml
- The CLI for the pretty-printer is now `--verbose=ast`.
- The old CLI `--verbose=ast` is now `--verbose=ast-tokens`.
- ligodity.ml (simplifier)
- I removed the constructions of sets, lists and maps with
`Set [...]`, `List [...]` and `Map [...]`, as there are already
better ways (that is, more like the OCaml's way), like
`Set.literal [...]` and `Map.literal [...]`. (The case for lists
was entirely redundant with the rest of the language as it is.)
- Everywhere there is now a non-empty list of elements, I made a
change. In particular, I removed a corner case ("let without
binding"), thanks to more precise OCaml types for non-empty
lists.
- I ported all the changes to the AST above.
- region.ml (vendors)
- I changed the method `compact` so the end-line is not repeated
if it is the same as the start line: this is even more compact. I
use this in the new pretty-printer for the AST (see above)
- I updated all the CameLIGO contracts.
2019-11-04 23:51:47 +01:00
John David Pressman
aec572fc20
[LIGO-168] Add the while loop to CameLIGO
2019-11-04 19:06:18 +00:00
Suzanne Dupéron
4325ba7ee4
Merge branch 'clean-sts-solver' of gitlab.com:ligolang/ligo into clean-sts-solver
2019-11-04 18:44:09 +00:00
Suzanne Dupéron
40b318eff6
Rename 4-typer to 4-typer-old (part 2: make changes)
2019-11-04 18:40:49 +00:00
Suzanne Dupéron
f41625ceb3
Rename 4-typer to 4-typer-old (part 1: move files)
2019-11-04 18:39:56 +00:00
galfour
9fe5d821c3
Merge branch 'dev' into clean-sts-solver
2019-11-04 16:32:32 +01:00
Tom Jack
c969f306af
Eliminate dead lambdas
2019-11-02 18:43:46 -05:00
Tom Jack
e30b7faa9d
Mini_c: Remove T_deep_closure and D_function
2019-11-02 18:43:46 -05:00
Tom Jack
cccbd424a8
Implement Mini_c.Free_variables
2019-11-02 18:43:46 -05:00
Tom Jack
ba7a83d0f7
Deal with upstream MBytes changes
2019-11-02 17:54:33 -05:00
Suzanne Dupéron
865cf80c77
Tests pass again, using the old typer
2019-11-01 09:48:09 -04:00
Suzanne Dupéron
45347e3e88
Bring back copy of the old typer (part 2: changes)
2019-10-31 18:19:01 -04:00
Suzanne Dupéron
d57a87a3ea
Moving new typer to separate folder
2019-10-31 17:43:44 -04:00
Suzanne Dupéron
5c3e1ad642
Hack for E_constant with loops shouldn't be necessary in new typer, thanks to typeclasses?
2019-10-31 17:19:01 -04: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
Suzanne Dupéron
dce15a79c6
WIP on understanding where in the AST we need the subst.
2019-10-31 13:21:05 -04:00
Lesenechal Remi
b9d32ddf4e
add bytes_pack
2019-10-31 17:39:07 +01:00
Rémi Lesenechal
0423a704ec
Merge branch 'feature/signature_type' into 'dev'
...
add signature type
See merge request ligolang/ligo!164
2019-10-31 16:36:23 +00:00
Lesenechal Remi
f341527aa6
add signature type
2019-10-31 16:46:07 +01:00
Tom Jack
58638c6a05
Merge branch 'feature/hex' into 'dev'
...
Add hex michelson output, use enums for format options
See merge request ligolang/ligo!162
2019-10-31 15:39:03 +00:00
Tom Jack
76ecd56e3d
Merge branch 'feature/babylon-optimizer' into 'dev'
...
Update optimizer for Babylon
See merge request ligolang/ligo!158
2019-10-31 15:17:00 +00:00
Tom Jack
fd03d577e4
Support --michelson-format in all commands producing Michelson
2019-10-31 09:50:51 -05:00
Pierre-Emmanuel Wulfman
770bdda9df
commenting a little bit the typesystem
2019-10-30 19:35:35 +01:00
Suzanne Dupéron
c0397f68a0
Wrap type names with a constructor Type_name, so that merlin does not think that all strings are type names
2019-10-30 12:50:19 -04:00
John David Pressman
750605cee4
Merge branch 'dev' of gitlab.com:ligolang/ligo into test/cameligo-test-parity
2019-10-29 22:06:42 -07:00
John David Pressman
27b7527f18
Add test for CameLIGO set fold
2019-10-29 21:33:48 -07:00
John David Pressman
85345387d0
Add tuple tests to CameLIGO
2019-10-29 20:55:36 -07:00
John David Pressman
2ff178543f
Add more operations to CameLIGO set tests
2019-10-29 20:33:18 -07:00
Suzanne Dupéron
3f0b9346a5
More but not enough of the fold. Filled in holes with failwith, need to implement enough that it passes a test.
2019-10-29 20:14:42 -04:00
John David Pressman
c09116211f
Merge branch 'feature/cameligo-negative-op' into 'dev'
...
[LIGO-172] Add negative operator to CameLIGO
See merge request ligolang/ligo!161
2019-10-29 18:12:17 +00:00
John David Pressman
f0f4c683f2
Add more complex negative operator test
2019-10-29 10:07:07 -07:00
John David Pressman
dce98c06ec
Merge branch 'dev' of gitlab.com:ligolang/ligo into feature/cameligo-negative-op
2019-10-29 09:59:37 -07:00
John David Pressman
102ffda7c3
Make negative operator test pass
2019-10-29 09:28:20 -07:00
Lesenechal Remi
a140e12394
add test for nested for collection loops (not supported yet)
2019-10-29 16:32:28 +01:00
Lesenechal Remi
402d849cec
use intermediary tuple access to get key and value for maps. add tests.
2019-10-29 15:43:00 +01:00
Lesenechal Remi
fd901548af
add more tests
2019-10-29 11:57:15 +01:00
Lesenechal Remi
c288f3c81e
simplify the simplifier and now find the free variables with a expression_fold
2019-10-29 11:56:21 +01:00
Lesenechal Remi
e86c92bc3b
improving simplifier
2019-10-29 11:41:59 +01:00
Lesenechal Remi
ba00db2b4c
add self_ast_simplified fold_expression
2019-10-29 10:43:38 +01:00
Suzanne Dupéron
735bd8e668
Implementing subst over the AST
2019-10-29 01:55:53 -04:00
John David Pressman
ec3f836605
Add test for several function parameters in CameLIGO
2019-10-28 22:07:00 -07:00
John David Pressman
c004fd24cd
Add option and boolean match tests to CameLIGO
2019-10-28 22:01:31 -07:00
John David Pressman
f62481fb0a
Add list match test to CameLIGO
2019-10-28 21:38:29 -07:00
Lesenechal Remi
e77f3e4903
empty for collection loop
2019-10-28 20:52:14 +01:00
Lesenechal Remi
37570c6a40
clean test
2019-10-28 20:52:14 +01:00
Lesenechal Remi
2ced2e784e
add doc
2019-10-28 20:52:14 +01:00
Lesenechal Remi
e16eac77a6
fixes for loop on map.
...
Untested because of issue with deep tuple access (LIGO-131 LIGO-134)
An error message is in the simplifier
2019-10-28 20:52:14 +01:00
Lesenechal Remi
1a035f9713
tests for sets
2019-10-28 20:52:14 +01:00
Lesenechal Remi
b71309bfa2
proper error message for deep accesses in loops of collection body
2019-10-28 20:52:14 +01:00
Lesenechal Remi
c7056d200d
merging with dev
2019-10-28 20:52:14 +01:00