Suzanne Dupéron
22fce03844
Improve a typer print
2020-04-13 23:10:01 +02:00
Suzanne Dupéron
1f0ab67baa
Moved new typer's wrap module to a separate file
2020-04-13 23:10:01 +02:00
Suzanne Dupéron
93063d8c70
More cleanup new of the typer
2020-04-13 23:10:01 +02:00
Suzanne Dupéron
1b710bd952
Very rough cleanup new of the typer
2020-04-13 23:10:01 +02:00
Suzanne Dupéron
0e699702ad
Merge branch 'feature/adt-generator-8-run-dev' into 'dev'
...
Started using the ADT generator, and small improvements to it
See merge request ligolang/ligo!559
2020-04-13 20:54:19 +00:00
Suzanne Dupéron
ed3343cd76
Merge branch 'feature/adt-generator-7-run-dev' into 'dev'
...
ADT generator: auto-generate folds over ADTs
See merge request ligolang/ligo!480
2020-04-13 19:32:14 +00:00
Suzanne Dupéron
4a7edafcb7
Dunification of the Red-Black_Trees library
2020-04-13 19:23:12 +02:00
Suzanne Dupéron
e001154714
with_xxx shorthands for fold configurations
2020-04-13 19:23:12 +02:00
Suzanne Dupéron
08aefa4580
Use unique field names in generic.ml and re-enable warning 30 there
2020-04-13 19:23:12 +02:00
Suzanne Dupéron
0704676724
Imported Christian Rinderknecht's polymorphic Red-Black_Trees library from commit 98b1131281
2020-04-13 19:23:12 +02:00
Suzanne Dupéron
b536d3f591
Remove early Perl 5 and Python versions of the ADT generator
2020-04-13 19:23:12 +02:00
Suzanne Dupéron
12aec6edd0
Generic fold example: OCaml printer for an arbitrary ADT
2020-04-13 19:23:12 +02:00
Suzanne Dupéron
ded76b41d6
Adt generator: split structure into smaller structures; use the monad; reordered function, state and value arguments to match the order of List.fold_left.
2020-04-13 19:23:12 +02:00
Suzanne Dupéron
a49f0806c0
ADT generator: produce info for metaprogramming
2020-04-13 19:23:12 +02:00
Suzanne Dupéron
1e1728e5dd
[WIP, does not build] Remove some polymorphism : customized visitors must be specific to their accumulator type
2020-04-13 19:23:12 +02:00
Suzanne Dupéron
be38b5269c
ADT generator: Stop promoting the generated file, because it breaks the build on the CI (why?)
2020-04-13 19:23:12 +02:00
Suzanne Dupéron
642c947ee4
[WIP, does not build] adt_generator move polymorphism into the fields, start getting rid of the large let rec
2020-04-13 19:23:12 +02:00
Suzanne Dupéron
ab8274eae2
Install perl6 instead of the painful-to-install python3+fstrings
2020-04-13 19:23:12 +02:00
Suzanne Dupéron
253da1e9f5
Break down the large fold_config structure into smaller structures
2020-04-13 19:23:12 +02:00
Suzanne Dupéron
20a51381bc
ADT generator: Parser for OCaml ADTs, WIP on adding info
2020-04-13 19:23:12 +02:00
Suzanne Dupéron
2991e48ce6
Implemented folds for the collections (lists and maps)
2020-04-13 19:23:12 +02:00
Suzanne Dupéron
e92ba202cf
Added Perl 5 and Raku (A.K.A. Perl 6) translations of the ADT generator. Their outputs are identical.
2020-04-13 19:23:12 +02:00
Suzanne Dupéron
9639c2f775
WIP on making the AST compatibile with the ADT generator
2020-04-13 19:23:12 +02:00
Suzanne Dupéron
6585ce3a09
Install future-fstrings to get f-strings in Python 3.5 and earlier.
2020-04-13 19:23:12 +02:00
Suzanne Dupéron
ba9441a134
moved adt_generator tests to a separate folder
2020-04-13 19:23:12 +02:00
Suzanne Dupéron
2cbc8bbf0c
Revert "Revert "Merge branch 'feature/adt-generator-poly-3' into 'dev'""
...
This reverts commit 8b83e375bd
.
2020-04-13 19:23:12 +02:00
Suzanne Dupéron
9d25773d61
Records in ast_typed for match_variant and declaration_constant
2020-04-13 19:23:12 +02:00
Suzanne Dupéron
fcbcea9382
Turned some of the mathcing_content tuples into records
2020-04-13 19:23:12 +02:00
Suzanne Dupéron
79593e6f3e
Turned some of the tuples into records
2020-04-13 19:23:12 +02:00
Suzanne Dupéron
58fc08b6a7
ADT generator: add support for open and include
2020-04-13 19:23:12 +02:00
Suzanne Dupéron
516a3a85ff
Inlined stage common in ast_typed (fix OCaml type errors)
2020-04-13 19:23:12 +02:00
Suzanne Dupéron
b3b8fab26d
[does not build] Inlined stage common in ast_typed
2020-04-13 19:23:12 +02:00
Christian Rinderknecht
f524692370
Merge branch 'rinderknecht@preproc' into 'dev'
...
Replacing CPP
See merge request ligolang/ligo!512
2020-04-13 16:07:09 +00:00
Christian Rinderknecht
bdb8c5a612
Removed cpp as a dependency in the dockerfile.
2020-04-13 17:08:39 +02:00
Christian Rinderknecht
1ccf6f247d
Fixed format of syntax error messages.
2020-04-13 16:31:56 +02:00
Christian Rinderknecht
ffb3d05864
Changed a bit how syntax error messages are formulated.
...
Resolved a warning.
2020-04-13 14:19:56 +02:00
Christian Rinderknecht
af48efe195
Fix by Sander.
2020-04-13 14:03:30 +02:00
Christian Rinderknecht
f7b0c4fe6b
Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@preproc
2020-04-13 14:01:41 +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
Sander Spies
a4a8e9d2bc
Remove tuple annotation.
2020-04-13 10:24:40 +02:00
Sander
ce1b55e548
Merge branch 'fix-wrong-wild-call' into 'dev'
...
Ensure that the right error is called when using the wild pattern incorrectly.
See merge request ligolang/ligo!565
2020-04-12 13:54:18 +00:00
Christian Rinderknecht
b23b2d1dbb
Plugged the preprocessor into the compiler's CLI.
2020-04-12 15:26:47 +02:00
Sander Spies
6f0fb02bf6
Ensure that the right error is called when using the wild pattern incorrectly.
2020-04-12 14:57:39 +02:00
Christian Rinderknecht
6c02482bf9
Fixed the #include directive.
2020-04-09 18:41:55 +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
Christian Rinderknecht
79967be726
Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@preproc
2020-04-08 17:40:13 +02:00
Sander
3359848565
Merge branch 'ediv-doc' into 'dev'
...
Add ediv description
See merge request ligolang/ligo!557
2020-04-08 09:55:03 +00:00