Christian Rinderknecht
005b7fd69b
Finished refactoring of lexer.
2020-04-28 19:26:31 +02:00
Tom Jack
56fe3b6021
Don't dip for the second var either
2020-04-28 12:00:54 +02:00
Tom Jack
94c35e15dd
Don't dip for vars after the second
2020-04-28 12:00:08 +02:00
Tom Jack
b05e7ef613
Less dippy fold
2020-04-28 11:59:32 +02:00
Tom Jack
710f1699a6
Less dippy constants
2020-04-28 11:58:47 +02:00
Tom Jack
0895467f74
Less dippy application
2020-04-28 11:57:47 +02:00
Pierre-Emmanuel Wulfman
1cbadbc7cf
add expression_eq in ast_typed
2020-04-22 11:42:52 -05:00
Pierre-Emmanuel Wulfman
3cb72f8ec2
add test
2020-04-22 15:05:33 +02:00
Tom Jack
f67bd010c4
Treat transaction environment operators as impure
2020-04-22 10:30:57 +02:00
Pierre-Emmanuel Wulfman
54dadc33d6
move Var.reset_counter () to run_ligo
2020-04-21 18:06:19 +02:00
Pierre-Emmanuel Wulfman
0bf6d09e85
reset Var counter at the begening of cli run
2020-04-21 18:06:17 +02:00
Tom Jack
8066e4df26
Allow to failwith an int (or nat)
2020-04-21 15:35:41 +00:00
Tom Jack
5df005f4b7
Add print-mini-c --optimize=entrypoint
to print optimized mini_c
2020-04-21 13:28:39 +00:00
Lesenechal Remi
5323475097
empty string singleton is not annotated anymore
2020-04-20 20:21:49 +02:00
Lesenechal Remi
5622b52a36
updating tests
2020-04-19 15:20:02 +02:00
Tom Jack
f2a23029bd
Always inline variable-for-variable lets in Self_mini_c
2020-04-16 14:18:35 -05:00
Tom Jack
6acf91a3f2
Perform basic eta contraction in Self_mini_c
2020-04-16 14:17:30 -05:00
Suzanne Dupéron
8848226b85
Merge branch 'bugfix-url-errors' into 'dev'
...
Fix link to docs in error message, closes LIGO-547
Closes LIGO-547
See merge request ligolang/ligo!573
2020-04-15 17:22:32 +00:00
Pierre-Emmanuel Wulfman
7a18cbd8fc
Merge branch 'srcloc_for_types' into 'dev'
...
Add srcloc for Types
See merge request ligolang/ligo!562
2020-04-15 16:41:27 +00:00
Suzanne Dupéron
f547caa80f
Fix link to docs in error message, closes LIGO-547
2020-04-15 18:04:43 +02:00
Pierre-Emmanuel Wulfman
7c29b075bb
add srcloc for types
2020-04-15 17:38:42 +02:00
Pierre-Emmanuel Wulfman
9796cd2e8f
for loop have a optional step parameter
2020-04-15 17:25:31 +02:00
Sander Spies
3e447c40b7
Merge
2020-04-14 13:11:44 +02:00
Sander Spies
2b82a74d93
Merge
2020-04-14 10:32:12 +02:00
Suzanne Dupéron
22fce03844
Improve a typer print
2020-04-13 23:10:01 +02:00
Christian Rinderknecht
1ccf6f247d
Fixed format of syntax error messages.
2020-04-13 16:31:56 +02:00
Sander Spies
d9148699cc
Fix contract tests
2020-04-13 13:58:58 +02:00
Sander Spies
6a6c8468a6
Remove annotations from michelson or.
2020-04-13 10:59:36 +02:00
Sander Spies
42b05c0437
Test tuples without annotations.
2020-04-13 10:31:09 +02:00
Christian Rinderknecht
b23b2d1dbb
Plugged the preprocessor into the compiler's CLI.
2020-04-12 15:26:47 +02:00
Christian Rinderknecht
3ed303f60d
In EvalOpt modules, the CLI input ["-"] is becomes now [None],
...
like the absence of an input filename. (This simplifies all the
clients codes.) Fixed the dune file for the preprocessor. Fixed
the build of PreprocMain.exe and PreprocMain.byte. Restricted
preprocessing errors [Preproc.Newline_in_string] and
[Preproc.Open_string] to the argument of the #include
directive (instead of general strings: this is for the LIGO lexer
to report the error). I removed the error [Preproc.Open_comment]
as this is for the LIGO lexer to report. The preprocessor scanner
[Preproc.lex] does not take a parameter [is_file:bool] now: the
source file (if any) is determined from the lexing
buffer. Accordingly, the field [is_file] of the state of the
preprocessing lexer has been removed: the lexing buffer becomes
now the reference for the input source (bug fix and interface
improvement). Fixed the comments of the test contract
pledge.religo. I removed the data constructor [Lexer.Stdin], as
redundant with [Lexer.Channel].
2020-04-09 16:18:26 +02:00
Christian Rinderknecht
46eecb4027
Marked the errors that should be skipped (because catched by the
...
LIGO lexer later). Added field [is_file] to the state of the
lexer to know if the input is a file or not (insert or not a
first line directive). Fixed ReasonLIGO comments in
entrypoints-contracts.md and website2.religo. WIP on the LIGO
lexer to properly handle comments for all the syntaxes.
2020-04-08 20:24:34 +02:00
Lesenechal Remi
f9d1928d8e
michelson_or tests and changelog
2020-04-07 21:38:12 +02:00
Pierre-Emmanuel Wulfman
79540f9a40
ediv implemented and tested; parser gives error
2020-04-06 18:23:26 +02:00
Tom Jack
6fed8998bb
Somewhat better PP for ast_core and mini_c
2020-04-01 14:32:52 -05:00
Pierre-Emmanuel Wulfman
aac7dd3462
review 1
2020-03-30 17:56:17 +02:00
Pierre-Emmanuel Wulfman
6a9547e910
add type map_or_big_map to solve issue of typing big_map_empty from map_add
2020-03-30 17:55:02 +02:00
Pierre-Emmanuel Wulfman
a39c900b72
remove set and list
2020-03-30 17:55:00 +02:00
Pierre-Emmanuel Wulfman
d91753e493
remove case e_sequance (e_assing, expr)
2020-03-30 14:40:28 +02:00
Pierre-Emmanuel Wulfman
4003aa4e06
add for, for_each, while construct in ast_imperatve;\n Move the treatment of loops and handling of the assignment in imperative_to_sugar
2020-03-27 16:52:44 +01:00
Sander
91a6affdad
Merge branch 'enfore_not_allowing_big_maps' into 'dev'
...
Give an error when nesting a big_map inside another big_map
See merge request ligolang/ligo!518
2020-03-26 10:39:18 +00:00
Pierre-Emmanuel Wulfman
9b192d8ba2
done
2020-03-25 16:23:56 +01:00
Sander Spies
d059cf991b
Give an error when nesting a big_map inside another big_map
2020-03-24 13:58:18 +01:00
Pierre-Emmanuel Wulfman
6cafb4026b
adding E_sequence in sugar
2020-03-18 18:13:02 +01:00
Pierre-Emmanuel Wulfman
5a4c0b32fb
rewrite test suite to compare value from ast_imperative instead of ast_core; includes uncompiler fo stage 4 and 6
2020-03-18 16:00:34 +01:00
Pierre-Emmanuel Wulfman
6dd7afbeb1
change passes name concrete_to_imperative, imperative_to_sugar, sugar_to_core
2020-03-18 16:00:34 +01:00
Pierre-Emmanuel Wulfman
8b3877a92c
rename AST to imperative, sugar and core. Factor code in compile
2020-03-18 16:00:34 +01:00
Pierre-Emmanuel Wulfman
2abd737ed3
compiling
2020-03-18 16:00:34 +01:00
Lesenechal Remi
97a85766d3
add a flag to disable michelson typechecking in compile-contract
2020-03-16 12:19:23 +01:00
Pierre-Emmanuel Wulfman
8a0e1dfea4
dune promote
2020-03-12 18:50:42 +01:00
Lesenechal Remi
3a80fadcc8
rewrite interpreter recursion within the initial formalism.
2020-03-12 18:16:56 +01:00
Pierre-Emmanuel Wulfman
660dcbb79f
review 3
2020-03-12 16:05:17 +01:00
Pierre-Emmanuel Wulfman
a5f44d3e88
clean-up junk
2020-03-12 16:05:17 +01:00
Pierre-Emmanuel Wulfman
27f583266e
test for tail recursion
2020-03-12 16:05:17 +01:00
Pierre-Emmanuel Wulfman
c46002b160
modifying doc and test for loops (Cameligo and pascaligo)
2020-03-12 16:05:17 +01:00
Pierre-Emmanuel Wulfman
b15d9a5123
compiling Pascaligo
2020-03-12 16:05:17 +01:00
Lesenechal Remi
66aca916bf
mapping over type_operator types is useless
2020-03-09 18:29:07 +01:00
Lesenechal Remi
503d8f771e
add tests for sum type names limit length
2020-03-09 18:29:07 +01:00
Lesenechal Remi
25f004844a
self: now reject capitalized entrypoint annotation
2020-03-09 11:23:08 +01:00
Lesenechal Remi
b7c08b78d5
self operator now takes an entrypoint annotation as parameter
2020-03-09 11:23:08 +01:00
Lesenechal Remi
e2776e9849
New checks in the self_ast_typed pass:
...
* Ast_typed stage is now aware of the main function name
* main function type is checked against expected contract types
* Tezos.self (returning contract type) is checked against main function type
* In general, Ast_typed.compile signature has been changed to enable/disable contract-related checks
2020-03-09 11:23:08 +01:00
Lesenechal Remi
9de04123d3
--balance option and updated tests
2020-03-05 20:52:47 +01:00
Christian Rinderknecht
8b2a182c6a
Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@contracts
2020-03-04 15:59:47 +01:00
Christian Rinderknecht
bd48a56a24
Forgot to add to the previous commit.
2020-03-04 15:36:33 +01:00
Christian Rinderknecht
d43209f1a1
Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@contracts
2020-03-04 15:26:43 +01:00
Pierre-Emmanuel Wulfman
b7e65764dd
dune promote
2020-03-04 10:35:34 +01:00
Pierre-Emmanuel Wulfman
c23827e8de
new negative test
2020-03-04 10:35:34 +01:00
Pierre-Emmanuel Wulfman
dfb1e1ebef
add negative test
2020-03-04 10:35:34 +01:00
Pierre-Emmanuel Wulfman
a19e2ceb3b
adding negative test
2020-03-04 10:35:34 +01:00
Lesenechal Remi
cf383fe327
more tests
2020-03-03 13:46:11 +01:00
Lesenechal Remi
9a30eb67c1
create_contract: add some tests
2020-03-03 13:46:11 +01:00
Christian Rinderknecht
00e6959503
Refactoring of the test contracts.
2020-03-02 18:01:56 +01:00
Christian Rinderknecht
a9214f864d
Reviewing again the PascaLIGO contracts.
2020-02-27 19:09:14 +01:00
Lesenechal Remi
a08adbd085
typer: checks for constructor redundancy
2020-02-26 18:54:16 +01:00
Tom Jack
4b9e175063
Examples: don't use SOURCE
2020-02-20 12:18:57 -06:00
Rémi Lesenechal
e8129c5be3
Merge branch 'feature/variable-in-dry-run' into 'dev'
...
Allow using top level variables defined in source code in dry-run PARAMETER and STORAGE
See merge request ligolang/ligo!436
2020-02-19 20:41:37 +00:00
Lesenechal Remi
44ff5d580d
Allow using top level variables defined in source code in dry-run PARAMETER and STORAGE
2020-02-19 16:10:50 +01:00
Pierre-Emmanuel Wulfman
eee6dbaeb2
make while_loop, for_int and for_collect more similar
2020-02-19 14:41:16 +01:00
Lesenechal Remi
38c99eca53
carthage: add tests for comparable pairs
2020-02-18 12:31:19 +01:00
Lesenechal Remi
39fc076c2b
fix regression of comparison of key_hash and add a test for it
2020-02-13 16:44:21 +01:00
Suzanne Dupéron
0113a448de
Merge branch 'dev' into 'feature/doc-pascaligo-loop'
...
# Conflicts:
# src/passes/operators/operators.ml
2020-02-10 20:51:41 +00:00
Christian Rinderknecht
9b5d63de1f
Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@contracts
2020-02-10 19:33:04 +01:00
Christian Rinderknecht
61832354d9
Merge branch 'dev' of gitlab.com:ligolang/ligo into feature/doc-pascaligo-loop
2020-02-10 19:22:52 +01:00
Lesenechal Remi
8c38352290
ligo interpreter : adding more tests
2020-02-10 12:02:36 +01:00
Lesenechal Remi
69ddce1860
add temporary CLI comand for ligo interpreter tests
2020-02-09 18:22:33 +01:00
Suzanne Dupéron
995ca7e807
Print numeric records as tuples, better typer error messages for records & tuples
2020-02-09 00:31:30 +01:00
Pierre-Emmanuel Wulfman
199e0a3bb2
Print records and variants in lexicographic order
2020-02-09 00:31:30 +01:00
Pierre-Emmanuel Wulfman
ae82144418
removing assign, tuples, sequences,
2020-02-09 00:31:30 +01:00
Christian Rinderknecht
e6dc4371ee
Merge branch 'dev' of gitlab.com:ligolang/ligo into feature/doc-pascaligo-loop
2020-02-08 10:16:34 +01:00
Lesenechal Remi
5ef61d3520
add assert primitive for pascaligo
2020-02-07 15:28:46 +01:00
Lesenechal Remi
784c2da81b
Remove useless constants:
...
* C_HASH (removed)
* C_MAP_GET --replaced--> C_MAP_FIND_OPT
* C_MAP_GET_FORCE --replaced--> C_MAP_FIND
2020-02-06 18:08:51 +01:00
Christian Rinderknecht
7a484cb45c
Merge branch 'dev' of gitlab.com:ligolang/ligo into feature/doc-pascaligo-loop
2020-02-05 16:29:37 +01:00
Christian Rinderknecht
410bbb0723
Complete rewrite of the documentation.
2020-02-05 16:28:40 +01:00
Sander Spies
0f9b92b83f
Oops.
2020-02-04 14:02:57 +01:00
Sander Spies
795f0d4056
ReasonLIGO: missing ')' error message.
2020-02-04 13:31:41 +01:00
Sander Spies
e92d16fd79
Simplify error case.
2020-02-03 14:03:47 +01:00
Sander Spies
bbe80bcbfb
Merge.
2020-02-03 14:01:01 +01:00
Sander Spies
98dab8d491
Extra line.
2020-02-03 11:57:37 +01:00
Sander Spies
1146292a76
Argh
2020-02-03 11:26:23 +01:00
Sander Spies
bf985797fb
- Don't allow to chain let bindings like: let a = let b = 2
.
...
- Give a proper warning when creating an incorrect let binding.
2020-02-03 10:53:44 +01:00