Commit Graph

5268 Commits

Author SHA1 Message Date
Christian Rinderknecht
f3777b4af8 The preprocessor library depends now on the kinds of comments
instead of a closed set of languages. I also removed the offsets:
I simply use the current region to determine whether the
preprocessing directie starts at the beginning of a line. I also
removed scanning line indicators, to make the lexer simpler.

LexToken.mll: Moved the function [check_right_context] that
checks stylistic constraints from Lexer.mll to
LexToken.mll. While this triplicates code (as CameLIGO, PascaLIGO
and ReasonLIGO share the same constraints), the benefit is that
Lexer.mll becomes more generic and the signature for the TOKEN
module is simpler (no more exporting predicates, except for
EOF). In accordance with the change of the preprocessor, the
lexers and parsers for LIGO now depend on the kind of comments,
not a fixed set of syntaxes. This gives more versatility when
adding a new language: only the kinds of its comments are needed,
although Lexer.mll and Preproc.mll may have to be modified if
they do not already know the comment delimiters, for example line
comments starting with #.

****************************************************************
BUG: The exceptions coming from LexToken.mll when a stylistic
constraint is broken in [LexToken.check_right_context] are not
caught yet.
****************************************************************

Lexer.mll: I moved out as much as I could from the header into a
new module LexerLib. The aim is to make it easy to reuse as much
as possible of the lexer machinerie, when it cannot be used as
is.
2020-04-24 21:06:18 +02:00
Christian Rinderknecht
ce5464f9af The preprocessor library depends now on the kinds of comments
instead of a closed set of languages. I also removed the offsets:
I simply use the current region to determine whether the
preprocessing directie starts at the beginning of a line. I also
removed scanning line indicators, to make the lexer simpler.
2020-04-24 20:54:13 +02:00
Gabriel Alfour
c302a1a9d5 Merge branch '181-cannot-declare-michelson_or-michelson_pair-element-w-o-annotation' into 'dev'
Resolve "Cannot declare michelson_or/michelson_pair element w/o annotation"

Closes #181

See merge request ligolang/ligo!583
2020-04-20 21:15:08 +00:00
Lesenechal Remi
5323475097 empty string singleton is not annotated anymore 2020-04-20 20:21:49 +02:00
Christian Rinderknecht
40f2d41b13 Merge branch 'fix/code_smell_in_operators' into 'dev'
Gardening/Fix code smell in operators.ml

See merge request ligolang/ligo!581
2020-04-20 17:36:56 +00:00
Pierre-Emmanuel Wulfman
173a0c4031 Replace function that returns result by function that returns option 2020-04-20 17:39:36 +02:00
Rémi Lesenechal
85222c1d65 Merge branch 'feature/michelson_type_layout' into 'dev'
Feature/michelson type layout

See merge request ligolang/ligo!577
2020-04-19 20:56:25 +00:00
Gabriel Alfour
c892c469f4 Merge branch 'ubuntu-eoan' into 'dev'
Build Ubuntu 19.10 instead of 19.04

See merge request ligolang/ligo!578
2020-04-19 13:46:07 +00:00
Lesenechal Remi
5622b52a36 updating tests 2020-04-19 15:20:02 +02:00
Lesenechal Remi
5bed9dadef WIP: michelson_pair 2020-04-19 15:18:46 +02:00
Lesenechal Remi
e94f445a51 michelson_or custom layout and annotations 2020-04-19 15:18:46 +02:00
Lesenechal Remi
5d35aaec58 add fold for ast_core 2020-04-19 15:18:46 +02:00
Tom Jack
2d7e177ba7 Build Ubuntu 19.10 instead of 19.04
19.04 reached End of Life in January and it appears the package repos
have now dropped it. 19.10 is not LTS but EOL is in July. Soon there
will be 20.04 LTS.
2020-04-16 18:04:42 -05:00
Tom Jack
53cf214f80 Merge branch 'eta' into 'dev'
Perform eta contraction for pairs in Self_mini_c

See merge request ligolang/ligo!564
2020-04-16 20:27:09 +00: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
Sander
11f4e6e3a6 Merge branch 'rinderknecht@preproc' into 'dev'
Bug fix: the environment has to be threaded through #include

See merge request ligolang/ligo!576
2020-04-16 16:07:25 +00:00
Christian Rinderknecht
f27bbb317e Bug fix: the environment has to be threaded through #include 2020-04-16 16:56:11 +02: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
Pierre-Emmanuel Wulfman
c5c1e4d657 Merge branch 'feature/add_step_to_for_loop' into 'dev'
Optional step parameter for `For loop`

See merge request ligolang/ligo!563
2020-04-15 16:29:14 +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
7b5acbcef0 Merge branch 'rinderknecht@gcc' into 'dev'
Forgot to remove gcc as a dependency so the docker image is smaller.

See merge request ligolang/ligo!567
2020-04-15 15:56:45 +00:00
Pierre-Emmanuel Wulfman
7c29b075bb add srcloc for types 2020-04-15 17:38:42 +02:00
Sander Spies
2a24290ed0 Fix error messages. 2020-04-15 17:25:32 +02:00
Pierre-Emmanuel Wulfman
9796cd2e8f for loop have a optional step parameter 2020-04-15 17:25:31 +02:00
Sander
23912411e1 Merge branch 'attempt-to-fix-search' into 'dev'
Attempt to fix search.

See merge request ligolang/ligo!572
2020-04-15 11:23:24 +00:00
Sander
4e9ee0bcb2 Merge branch 'rinderknecht@doc' into 'dev'
Removed redundant constant named origin.

See merge request ligolang/ligo!571
2020-04-15 11:06:43 +00:00
Sander Spies
0680633806 Attempt to fix search. 2020-04-15 12:19:12 +02:00
Christian Rinderknecht
a2c03ad848 Removed redundant constant named origin. 2020-04-15 12:00:54 +02:00
Pierre-Emmanuel Wulfman
fb7abe045f Merge branch 'bugfix/adt-generator-whitespace-eol' into 'dev'
Remove trailing whitespace while parsing in ADT generator

See merge request ligolang/ligo!568
2020-04-14 16:22:32 +00:00
Suzanne Dupéron
b7c3e77c82 Remove trailing whitespace while parsing in ADT generator 2020-04-14 17:11:50 +02:00
Sander
1f0491e367 Merge branch 'less-annotations' into 'dev'
Less annotations

See merge request ligolang/ligo!566
2020-04-14 12:19:16 +00:00
Sander
313afab565 Merge branch 'tuple-destructuring' into 'dev'
Tuple destructuring description

See merge request ligolang/ligo!545
2020-04-14 11:49:18 +00:00
Sander Spies
422623ce1e Fix build. 2020-04-14 13:13:07 +02:00
Sander Spies
3e447c40b7 Merge 2020-04-14 13:11:44 +02:00
Suzanne Dupéron
741bfcf9b4 Merge branch 'feature/new-typer-rough-cleanup' into 'dev'
Rough cleanup of the new typer

See merge request ligolang/ligo!561
2020-04-14 11:10:26 +00:00
Christian Rinderknecht
f8c16e5764 Merge branch 'reasonligo-record-improvement' into 'dev'
Add support for record expressions of only one field.

See merge request ligolang/ligo!553
2020-04-14 11:01:11 +00:00
Christian Rinderknecht
5f4c5299d8 Merge branch 'more-api' into 'dev'
More api documentation improvements

See merge request ligolang/ligo!548
2020-04-14 10:53:11 +00:00
Christian Rinderknecht
d49e856ece Forgot to remove gcc as a dependency so the docker image is smaller. 2020-04-14 11:51:24 +02:00
Sander Spies
2b82a74d93 Merge 2020-04-14 10:32:12 +02:00
Suzanne Dupéron
b9310023ad Merge branch 'feature-poly-maps-and-set-and-unionfind' into 'dev'
Polymorfic maps, sets and Union-Find

See merge request ligolang/ligo!560
2020-04-13 22:14:46 +00:00
Suzanne Dupéron
0d77cbe1c4 Gitignore ….install in vendors/Preprocessor 2020-04-13 23:16:17 +02:00
Suzanne Dupéron
3171001395 Added a polymorphic version of one of the UnionFind implementations 2020-04-13 23:10:01 +02:00
Suzanne Dupéron
9e21123de0 Generic PP: use PPF, split test for parentheses to separate fold 2020-04-13 23:10:01 +02:00
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