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
3c9dd93c8b
Fixed again priority of "->" vs "*" in type expressions.
...
Fixed negative tests.
2020-01-24 14:35:15 +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
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
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
77fdb739b6
typer: typecheck expression and subst (used e.g. to typecheck arguments of contracts)
2020-01-22 13:49:32 +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
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
95205609f8
Merge.
2020-01-21 14:14:23 +01:00
Lesenechal Remi
f1977b12aa
self in lambda negative test
2020-01-21 13:26:38 +01: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
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
673b54e6ae
Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev
2020-01-18 11:37:36 +01:00
Lesenechal Remi
600ee51940
running contract or function does not fail on failwiths
2020-01-17 16:35:40 +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
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
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
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
1863cf324b
Improve error messages in ast_typed/combinators.ml
2020-01-09 23:13:14 +00: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
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
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
Lesenechal Remi
af5c32cb98
checking .md file arguments
2020-01-09 10:33:44 +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
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
Sander
8dd936ab90
Test lexer error messages.
2020-01-07 20:35:04 +00:00
Lesenechal Remi
2667ed62b3
fix indent (unrelated)
2020-01-06 22:29:07 +01:00
Lesenechal Remi
8ce4772ae4
add tests
2020-01-06 18:51:43 +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
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
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
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
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
acee34985b
remove ppx in tests
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
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
2d9de2aef0
Clean up let ... in multi-bind
2019-12-24 15:35:05 -08:00
John David Pressman
7454e8b01f
Add let-in multi bind test
2019-12-24 13:48:14 -08:00
Lesenechal Remi
bdd1d09c04
t_operator can not throw exceptions
2019-12-24 12:43:32 +01:00
John David Pressman
1bf04574c1
Merge branch 'dev' into feature/set-delegate
2019-12-20 08:37:01 -08: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
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
Tom Jack
172038cef0
Kill warning 45 by reusing Pervasives.result for Trace
2019-12-18 21:20:35 +00:00
Lesenechal Remi
f9fcf1fbc3
Also perform Ast_typed check
2019-12-18 16:47:23 +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
Rémi Lesenechal
e6cb4e63c6
Contracts: replaceable ID
2019-12-17 14:18:09 +00: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
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
6f9134834f
Remove original Cameligo and rename Ligodity to Cameligo.
2019-12-12 14:35:07 +01:00
Lesenechal Remi
c0472629b9
application at ast_simplified level
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
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
Sander
95a7e19be6
Add ReasonLIGO support
2019-12-10 13:47:31 +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
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
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
Lesenechal Remi
c1c551e33f
fix and more tests
2019-11-26 18:08:53 +01: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
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
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
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
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
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
683bc0a72b
fix problems with nested for collection loop
2019-11-15 20:05:35 +01:00
galfour
d0efbd9f92
add and test more ways to do function application in pascaligo
2019-11-14 20:13:15 +01: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
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
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
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
1e06c24325
Merge branch 'dev' of gitlab.com:ligolang/ligo into clean-sts-solver
2019-10-31 17:18:09 -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
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
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
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
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
c7056d200d
merging with dev
2019-10-28 20:52:14 +01:00
Lesenechal Remi
7eed9b1856
test passing !
2019-10-28 20:52:14 +01:00
Lesenechal Remi
7f7f19854a
WIP : make test a bit easier
2019-10-28 20:52:14 +01:00
Lesenechal Remi
79de96136d
Collection for translation without type annotation on record
2019-10-28 20:52:14 +01:00
Lesenechal Remi
730c130fb3
merge step and down reemoval
...
WIP
WIP
2019-10-28 20:52:14 +01:00
Lesenechal Remi
1d3d57c7c5
not complete for collect tryout
2019-10-28 20:52:14 +01:00
Lesenechal Remi
3058a57c62
cleaning and better tests
2019-10-28 20:52:14 +01:00
Lesenechal Remi
d8e44476ba
First version for ForInt loops
2019-10-28 20:52:14 +01:00
Christian Rinderknecht
2c4183f008
Merge branch 'feature/cameligo-bitwise-operators' into 'dev'
...
[LIGO-177] Add bitwise operators to CameLIGO
See merge request ligolang/ligo!160
2019-10-28 18:13:54 +00:00
Suzanne Dupéron
174c028406
Fixing issues in the new typer
2019-10-27 23:24:21 -04:00
John David Pressman
cae0dfb1aa
Change names to the standard library names for the functions in OCaml
2019-10-27 12:05:34 -07:00
Tom Jack
0191d8b0ed
Replace "mtz" with "mutez"
2019-10-27 11:50:24 -05:00
John David Pressman
b3993d0db9
Add failing negative operator
2019-10-25 17:24:12 -07:00
John David Pressman
8cfa583d55
Add more string tests to CameLIGO
2019-10-25 16:33:31 -07:00
John David Pressman
ea661247b6
Add bitwise operators to CameLIGO
...
Right now they're defined as '.bor' and '.band' because of a glitch
in CameLIGO's parser where 'X.Y' leads to a parse error if Y is a
keyword or reserved word in CameLIGO.
2019-10-25 16:12:54 -07:00
Rémi Lesenechal
5a5c3a8dd4
Merge branch 'feature/clean-big-map' into 'dev'
...
Feature/clean big map
See merge request ligolang/ligo!145
2019-10-25 21:30:09 +00:00
John David Pressman
0eb2b73afa
Add CameLIGO test function utilizing multiple subroutines
2019-10-24 15:27:26 -07:00
John David Pressman
99dfd18dea
Add explanatory comment to annotation.ligo
2019-10-24 14:44:07 -07:00
John David Pressman
790dc6c370
Merge branch 'test/cameligo-boolean-and' into test/cameligo-test-parity
2019-10-24 09:14:12 -07:00
John David Pressman
0bf37a2e21
Fix boolean tests for CameLIGO
2019-10-24 09:13:31 -07:00
Tom Jack
7958508e14
Merge branch 'feature/some-tests' into 'dev'
...
More tests and a few operations
See merge request ligolang/ligo!26
2019-10-24 13:03:39 +00:00
John David Pressman
2aa201553c
Add test for the if conditional in CameLIGO
2019-10-23 20:29:32 -07:00
John David Pressman
ddc5b8e36d
Add failing boolean operator test
2019-10-23 18:29:49 -07:00
John David Pressman
2566ebc7d0
Add arithmetic tests for CameLIGO
2019-10-23 17:53:26 -07:00
Tom Jack
e2ea89cf87
Move tests, remove operators
2019-10-23 09:38:45 -05:00
Christian Rinderknecht
4730df6ea1
Merge branch 'rinderknecht-dev' into 'dev'
...
Forbidding empty patches (records, maps, sets)
See merge request ligolang/ligo!148
2019-10-23 10:06:26 +00:00
John David Pressman
1f50cc8f57
Remove PascaLIGO set_size
2019-10-22 20:24:05 -07:00
John David Pressman
c4cc4fcba9
Add set size op for CameLIGO and PascaLIGO
2019-10-22 19:28:13 -07:00
Christian Rinderknecht
eae3348d51
I forbade empty patches (parser). Fixed AST pretty-printer (PascaLIGO).
...
Changed accordingly the simplifier: the dead code for the error about
empty record patches is no long.
2019-10-23 00:35:29 +02:00
Lesenechal Remi
e6ee915f1e
updating tests (we don't need the big_map to be in a pair anymore)
2019-10-22 12:23:48 +02:00
Lesenechal Remi
5d040220c0
WIP: add test
2019-10-22 12:23:48 +02:00
Lesenechal Remi
23993a4488
clean big_map tests
2019-10-22 12:23:48 +02:00
Christian Rinderknecht
9ad0859a4c
Merge branch 'feature/pascaligo-remove-case-as-expression' into 'dev'
...
Feature/pascaligo add conditional as an expression
See merge request ligolang/ligo!144
2019-10-22 08:42:59 +00:00
Christian Rinderknecht
fa30b7d87d
Merge remote-tracking branch 'origin/dev' into rinderknecht-dev
2019-10-22 10:38:32 +02:00
John David Pressman
48515b9f3b
Add explanatory comment to string concatenation test
2019-10-21 16:40:40 -07:00
John David Pressman
8f799321d6
Add string concatenation support to CameLIGO
2019-10-21 15:46:26 -07:00
Christian Rinderknecht
312dc65950
Merge remote-tracking branch 'origin/dev' into rinderknecht-dev
2019-10-21 21:42:52 +02:00
John David Pressman
97f2a44a24
Merge branch 'feature/pascaligo-expr-fun' into 'dev'
...
[LIGO-150] Add blockless functions to PascaLIGO
See merge request ligolang/ligo!143
2019-10-20 08:46:15 +00:00
John David Pressman
daad15c57d
Write blockless function test and make it pass
2019-10-19 10:46:24 -07:00
Lesenechal Remi
85fe8d2018
using the proper entry point in the test..
2019-10-18 17:44:10 +02:00
Lesenechal Remi
080b25a3bd
WIP: add test. still have two ECond implementation, none of them pass the test
2019-10-18 17:44:10 +02:00
Lesenechal Remi
71548f8c7c
using the proper entry point in the test..
2019-10-18 14:42:36 +02:00
Lesenechal Remi
b721a19b00
WIP: add test. still have two ECond implementation, none of them pass the test
2019-10-18 14:32:58 +02:00
Lesenechal Remi
c9bcfc3ab0
higher order function test, pass two closure one calling the other as function arg
2019-10-17 17:33:29 +02:00
Lesenechal Remi
9f0b61659e
we don't need to check for closures in function arguments
2019-10-17 17:18:10 +02:00
John David Pressman
6f5e88c93c
Make failing deep set removal test pass
2019-10-14 18:59:16 -05:00
John David Pressman
0b8c0dad3f
Add failing deep set removal test to contracts
2019-10-14 18:58:42 -05:00
John David Pressman
c4babe60d8
Merge branch 'dev' of gitlab.com:ligolang/ligo into feature/pascaligo-map-patch
2019-10-14 11:34:26 -07:00
John David Pressman
93b5a068b5
Add deep map patch test
2019-10-14 10:19:18 -07:00
Christian Rinderknecht
d7baebdb2f
Merge branch 'feature/pascaligo-set-patch' into 'dev'
...
[LIGO-127] Add set patch functionality to PascaLIGO
See merge request ligolang/ligo!127
2019-10-12 20:35:14 +00:00
Suzanne Dupéron
38f9b0ba0b
tests build (but fail when running, as expected)
2019-10-11 17:22:43 -04: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
e672d10029
Expose tez mod tez, too
2019-10-11 14:54:22 -05: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
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
Lesenechal Remi
d59cd771c9
fix unsupported deep_map assignements and remove. add tests
2019-10-09 11:54:48 +02: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
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
Lesenechal Remi
44767c4b8e
Simplifier now emit CONCAT constant
2019-10-07 17:16:03 +02:00
Tom Jack
3a14ef26ef
Simplify?
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
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
Lesenechal Remi
4e333836cb
ignore closure error in subexpression of argument
2019-10-03 15:36:06 +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
2840eb7414
Treat env element expression as deep_closure only if they are lambda
2019-10-02 18:31:15 +02:00
Rémi Lesenechal
6850d21650
Feature/ligo 100 map tests
2019-09-27 15:52:40 +00:00
Sander
5bcf3cae6e
Refactor Ligodity parser to use shared parser.
2019-09-27 13:33:25 +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
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
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
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
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
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
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
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
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
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