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
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