Pierre-Emmanuel Wulfman
e436a0a08a
removes loops
2020-03-09 18:24:02 +01:00
Lesenechal Remi
25f004844a
self: now reject capitalized entrypoint annotation
2020-03-09 11:23:08 +01:00
Lesenechal Remi
b7c08b78d5
self operator now takes an entrypoint annotation as parameter
2020-03-09 11:23:08 +01:00
Lesenechal Remi
e2776e9849
New checks in the self_ast_typed pass:
...
* Ast_typed stage is now aware of the main function name
* main function type is checked against expected contract types
* Tezos.self (returning contract type) is checked against main function type
* In general, Ast_typed.compile signature has been changed to enable/disable contract-related checks
2020-03-09 11:23:08 +01:00
Lesenechal Remi
f0ad2fed04
new pass : self_ast_typed
2020-03-09 11:23:08 +01:00
Lesenechal Remi
550e6b084b
new constant : add self (michelson SELF)
2020-03-09 11:23:08 +01:00
Pierre-Emmanuel Wulfman
49625001b1
Fix simplifyer and test
2020-03-07 02:39:39 +01:00
Pierre-Emmanuel Wulfman
558f3f5e80
fix annotation for funciton in ReasonLigo
2020-03-07 02:00:29 +01:00
Pierre-Emmanuel Wulfman
adc31a6e01
Merge branch 'rinderknecht@contracts' into 'dev'
...
Refactoring of the test contracts
See merge request ligolang/ligo!465
2020-03-04 19:26:50 +00:00
Tom Jack
0871fe9c59
Merge branch 'feature/remove-assignment-mini_c' into 'dev'
...
Remove (unused) assignment from mini_c
See merge request ligolang/ligo!454
2020-03-04 18:38:18 +00:00
Christian Rinderknecht
2b01dd78fc
Fixed the parsing of type t = list ((u,v));
2020-03-04 16:45:05 +01:00
Christian Rinderknecht
8b2a182c6a
Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@contracts
2020-03-04 15:59:47 +01:00
Christian Rinderknecht
d43209f1a1
Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@contracts
2020-03-04 15:26:43 +01:00
Pierre-Emmanuel Wulfman
4f13a33d46
fix bug with wrong annotation at the beginning
2020-03-04 10:35:34 +01:00
Pierre-Emmanuel Wulfman
89f2b44e7d
Works also when the function parameter are passed in the rhs
...
Fix some religo contract
2020-03-04 10:35:34 +01:00
Pierre-Emmanuel Wulfman
5159f293f8
Repare function annotation in let binding for Camligo and ReasonLigo and fix some contracts
2020-03-04 10:35:34 +01:00
Tom Jack
ac374ed2ba
Remove debug printfs
2020-03-03 23:47:10 -06:00
Lesenechal Remi
1e5abda3ee
create contract : conservative restrictions & errors in typer, before inlining/beta optimizations
2020-03-03 13:46:11 +01:00
Lesenechal Remi
ffd792e2f8
CREATE_CONTRACT: add a check in the typer to allow only closures
2020-03-03 13:46:11 +01:00
Lesenechal Remi
ad7024c62b
compiler: compile CREATE_CONTRACT
2020-03-03 13:46:11 +01:00
Lesenechal Remi
4e48026daa
typer: typing C_CREATE_CONTRACT
2020-03-03 13:46:11 +01:00
Christian Rinderknecht
00e6959503
Refactoring of the test contracts.
2020-03-02 18:01:56 +01:00
Tom Jack
8229d6a6af
Remove (unused) assignment from mini_c
2020-02-28 13:58:29 -06:00
Christian Rinderknecht
a9214f864d
Reviewing again the PascaLIGO contracts.
2020-02-27 19:09:14 +01:00
Gabriel Alfour
4d61c2285c
Merge branch '151-union-type-option-names-collision-when-matching' into 'dev'
...
Resolve "Union type option names collision when matching"
Closes #151
See merge request ligolang/ligo!457
2020-02-27 09:24:17 +00:00
Lesenechal Remi
a08adbd085
typer: checks for constructor redundancy
2020-02-26 18:54:16 +01:00
Sander Spies
1522a7d2e4
Update error.messages for PascaLIGO.
2020-02-26 15:07:14 +01:00
Christian Rinderknecht
623e16459f
Changed Loop.continue to Loop.resume.
2020-02-26 13:36:50 +01:00
Christian Rinderknecht
31a39bffbc
I upgraded the parsers to accept Map.map
etc. I rewrote the doc except "reference" to promote and deprecate built-ins.
2020-02-25 18:07:53 +01:00
Christian Rinderknecht
d7dd064095
Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@doc
2020-02-25 16:40:23 +01:00
Lesenechal Remi
4c2529b83c
allow constructor without parameters
2020-02-25 14:54:08 +01:00
Christian Rinderknecht
f4d688df7b
Fixed the tutorial. Enabled underscores in tez amounts. Fixed docs on
...
Tez and tuples (zero-indexation).
2020-02-21 17:16:53 +01:00
Rémi Lesenechal
040ed8b6ff
Merge branch 'feature/subtler-nontail-fail' into 'dev'
...
Fix non-tail fail avoidance
See merge request ligolang/ligo!438
2020-02-21 13:50:25 +00:00
Tom Jack
01531ac307
Support lowercase in hex bytes
2020-02-20 12:07:01 -06:00
Tom Jack
4c53fa4ae6
Fix non-tail fail avoidance
2020-02-20 09:58:17 -06:00
Suzanne Dupéron
ce4c2ee783
Merge branch 'feature/ast-cleanup-ocaml-tuples' into 'dev'
...
AST cleanup + replace OCaml tuples with record in ast_typed
See merge request ligolang/ligo!429
2020-02-20 14:57:07 +00:00
Suzanne Dupéron
4f36ff3bcb
Replace OCaml tuples with record in ast_typed
2020-02-20 14:21:30 +01:00
John David Pressman
62fe576bc9
Revert "Merge branch 'fix/pascal-tuples-in-doc' into 'dev'"
...
This reverts merge request !437
2020-02-20 05:25:30 +00:00
Pierre-Emmanuel Wulfman
8d01fcb9f7
Merge branch 'fix/pascal-tuples-in-doc' into 'dev'
...
Make Tuple in PascaLigo starting at one
See merge request ligolang/ligo!437
2020-02-19 17:15:29 +00:00
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
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
Pierre-Emmanuel Wulfman
eee6dbaeb2
make while_loop, for_int and for_collect more similar
2020-02-19 14:41:16 +01: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
Lesenechal Remi
fd28da98a0
comparable pairs in the backend
2020-02-18 12:19:19 +01:00
Lesenechal Remi
39fc076c2b
fix regression of comparison of key_hash and add a test for it
2020-02-13 16:44:21 +01:00
Suzanne Dupéron
a1880b013b
Fix #147 by allowing comparison of bools
2020-02-12 20:22:59 +01:00
John David Pressman
953e91bc54
Remove Current.gas from LIGO
2020-02-12 02:24:58 -08: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
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
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
76ad9c47ec
cleanup
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
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
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
Pierre-Emmanuel Wulfman
ae82144418
removing assign, tuples, sequences,
2020-02-09 00:31:30 +01:00
Christian Rinderknecht
e6dc4371ee
Merge branch 'dev' of gitlab.com:ligolang/ligo into feature/doc-pascaligo-loop
2020-02-08 10:16:34 +01:00
Lesenechal Remi
5ef61d3520
add assert primitive for pascaligo
2020-02-07 15:28:46 +01:00
Lesenechal Remi
54f4ffd413
Fix assetion with a default string "failed assertion"
2020-02-07 15:27:16 +01: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
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
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
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
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
bbe80bcbfb
Merge.
2020-02-03 14:01:01 +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
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
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
Suzanne Dupéron
0abc4cd206
Started adding typer for constants
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
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
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
Christian Rinderknecht
fc3385389b
[WIP] Refactoring the front-end.
2020-01-27 16:05:47 +01:00
Christian Rinderknecht
8843a46975
Added missing check for reserved names in CameLIGO.
...
The calls to the lexer and parser of CameLIGO through the compiler use
now their error messages, like in PascaLIGO.
2020-01-24 15:57:41 +01:00
Christian Rinderknecht
3c9dd93c8b
Fixed again priority of "->" vs "*" in type expressions.
...
Fixed negative tests.
2020-01-24 14:35:15 +01:00
Christian Rinderknecht
47a41971d7
Fixed the parsing of [a * b -> c] as [(a * b) -> c].
2020-01-24 14:15:07 +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
Christian Rinderknecht
41d6956b66
[WIP] Added traces to debug
2020-01-24 12:56:05 +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
Suzanne Dupéron
1592404e03
Merge commit '4977c18e' into bugfix/new-typer
2020-01-23 11:56:02 +01: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
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
Christian Rinderknecht
7437d6ae1a
Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev
2020-01-22 11:43:35 +01: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
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
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
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
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