Georges Dupéron
5628e370b5
Indentation to match Typecheck2.mli
2019-03-14 18:26:25 +01:00
Georges Dupéron
cbb08f4405
Humour.
2019-03-14 18:19:51 +01:00
Christian Rinderknecht
ea02e4cffe
Added keyword "storage" as parameter kind (with "var" and "const") for
...
entrypoints.
2019-03-14 18:17:19 +01:00
Georges Dupéron
9db37fbdc4
operations_decl is now disallowed
2019-03-14 18:05:57 +01:00
Georges Dupéron
03671802eb
DropUnit is now ProcedureCall
2019-03-14 18:05:24 +01:00
Georges Dupéron
fbf6e5d89f
Cleanup
2019-03-14 18:05:07 +01:00
Georges Dupéron
e1ad18cd3e
Merged tuples and records so that x.4 is valid in principle
2019-03-14 17:58:14 +01:00
Georges Dupéron
9c5d31eca1
Merged tuples and records so that x.4 is valid in principle
2019-03-14 16:46:18 +01:00
Georges Dupéron
332f18bb80
Single argument for lambdas
2019-03-14 16:15:42 +01:00
Christian Rinderknecht
36e43a807e
Added library option -I.
2019-03-14 14:27:00 +01:00
Christian Rinderknecht
5f129d924a
Removed storage and operations declarations: entry-points now take the
...
former and return the latter.
2019-03-14 14:04:20 +01:00
Christian Rinderknecht
8e294a013c
Added assignment of a value to a map binding: m.[i] := v.
2019-03-14 13:19:52 +01:00
Georges Dupéron
8a11fc71eb
Removed non-applied type_constructor, single parameter for lambda expression.
2019-03-14 12:30:51 +01:00
Georges Dupéron
1db0f7c1fe
Wrong nesting of key and expr in records
2019-03-14 11:59:14 +01:00
Georges Dupéron
97db2a431c
type_expr vs. type_expr_case (put the regions and names in more places) in Typecheck2.mli
2019-03-14 11:50:18 +01:00
Georges Dupéron
87386c2500
type_constructor in AST2.ml
2019-03-14 11:49:42 +01:00
Georges Dupéron
2c0b6b518c
Simplified Prod → Record in types, added region to field names.
2019-03-14 11:19:15 +01:00
Georges Dupéron
96fb7c7ea2
Updated the typed AST interface after discussion with gabriel.alfour
2019-03-14 10:58:15 +01:00
Christian Rinderknecht
41f664f197
Removed AST2 and Typecheck2 before the merge back to master.
2019-03-14 10:07:11 +01:00
Christian Rinderknecht
c0e6843240
I added record creation (injection), field selection (projection)
...
and functional update (copy).
The only creative piece of concrete syntax is that of the
expression for functional updates:
copy foo with record field = value end
where "copy", "with", "record" and "end" are keywords.
2019-03-14 09:59:26 +01:00
Georges Dupéron
df4f49111b
Added regions to type_expr. The regions picked are fairly imprecise.
2019-03-14 09:37:10 +01:00
Georges Dupéron
6f1142d8f8
WIP on adding orig
2019-03-13 23:42:34 +01:00
Georges Dupéron
cf80ccd9a2
Small tweak on the typed AST
2019-03-13 23:42:16 +01:00
Georges Dupéron
650206ec14
AST2: tiny clean up
2019-03-13 21:52:59 +01:00
Georges Dupéron
5ca94d13ba
AST2: simplified some of the pattern-matching nodes
2019-03-13 21:46:56 +01:00
Georges Dupéron
cd3eed8c2e
WIP on some cases
2019-03-13 21:43:24 +01:00
Georges Dupéron
a469d1237b
Removed list expressions and patterns (now nested cons), merged record and tuple
2019-03-13 21:43:24 +01:00
Christian Rinderknecht
1f4f541a5b
Refactoring of the AST (more records, more structure).
2019-03-13 16:29:25 +01:00
Christian Rinderknecht
50f3127c32
Merge branch 'master' of gitlab.com:gabriel.alfour/ligo-parser
2019-03-12 18:49:06 +01:00
Christian Rinderknecht
269fd475ad
Enabled the preprocessing by CPP of #include directives in Ligo.
...
Now it is possible to write anywhere in a Ligo source file
and have error messages refer to the correct file and line. This
is done by extending the lexer to recognise #line
directives (generated by CPP).
I added the stage "cpp" for the --verbose command-line option: if
given, the preprocessed source file is created in the current
directory with the name <input>.pp.li, where <input>.li is the
original input file. Also the CPP command actually run is
printed.
I added setter to modules [Pos] and [Region].
2019-03-12 18:33:29 +01:00
Christian Rinderknecht
29df2ff9aa
Declarations can now be written in any order. Removed top-level block.
...
The parser exports now an entry rule for parsing Ligo expressions.
2019-03-11 12:51:50 +01:00
Georges Dupéron
ec706906f1
Added interface for the result of the type annotator.
2019-03-11 03:26:21 +01:00
Georges Dupéron
0fc4903ac2
Simplified the last expressions
2019-03-11 02:50:44 +01:00
Georges Dupéron
0028923f7d
Simplified more expressions
2019-03-11 02:36:25 +01:00
Georges Dupéron
2621d84c1c
Simplified more expressions
2019-03-11 02:30:26 +01:00
Georges Dupéron
56ede7c8a7
Simplified more
2019-03-11 02:22:25 +01:00
Georges Dupéron
74518a1768
AST2: Declarations can now be written in any order. Removed top-level block.
2019-03-11 01:57:07 +01:00
Georges Dupéron
97b576b564
Removed global parameter declaration and added entrypoint in AST2
2019-03-11 00:52:10 +01:00
Georges Dupéron
31309562d9
Simplified some expressions
2019-03-11 00:52:10 +01:00
Georges Dupéron
d547616caa
Temporarily reverted cleanup which prevented GIT from properly merging.
2019-03-11 00:52:10 +01:00
Christian Rinderknecht
8746802571
Storage and operations are now explicitly named.
...
Refactoring of AST to enable the detection of incomplete pattern
matchings by the OCaml compiler. Some record fields renamed for
better readability.
2019-03-10 19:41:27 +01:00
Christian Rinderknecht
7dcad4779e
I added entrypoints (and removed the parameter declaration).
...
I fixed the pretty-printing of strings.
2019-03-10 13:55:24 +01:00
Christian Rinderknecht
0b5932f986
Removed the looping visitor.
2019-03-10 13:37:03 +01:00
Christian Rinderknecht
b3a283d8b8
Merge branch 'master' of gitlab.com:gabriel.alfour/ligo-parser
2019-03-10 12:53:52 +01:00
Your Name
25356c5695
Configured GitLab CI
2019-03-09 01:45:57 +01:00
Your Name
c439786440
gitlab-ci fix…
2019-03-09 01:07:35 +01:00
Your Name
31c6a33c49
gitlab-ci fix…
2019-03-09 00:48:33 +01:00
Your Name
a7e06efddb
gitlab-ci fix…
2019-03-08 23:40:36 +01:00
Your Name
178224c734
gitlab-ci fix…
2019-03-08 23:32:06 +01:00
Christian Rinderknecht
ad2b3cb1f9
Merge branch 'master' of gitlab.com:gabriel.alfour/ligo-parser
2019-03-08 22:05:41 +01:00