Georges Dupéron
63be1b9b7d
More of the type annotator structure
2019-03-14 22:11:27 +01:00
Georges Dupéron
bac4ce1024
More type annotator skeleton
2019-03-14 21:14:05 +01:00
Georges Dupéron
0943408463
SMap.t for records and sums
2019-03-14 20:42:41 +01:00
Georges Dupéron
8830f598df
skeleton for a_types
2019-03-14 20:09:06 +01:00
Georges Dupéron
fb97b056ca
Started structure for the type annotator
2019-03-14 20:00:01 +01:00
Georges Dupéron
7a84cf1c8b
Removed If (missing in previous commit)
2019-03-14 19:32:36 +01:00
Georges Dupéron
8fc1729f47
If simplified to match
2019-03-14 19:30:55 +01:00
Georges Dupéron
adec2bb5e0
Cleanup
2019-03-14 19:23:37 +01:00
Georges Dupéron
689673ccfa
Single variable for ForCollect, set k=>v aside for now.
2019-03-14 19:14:10 +01:00
Georges Dupéron
90e894f9f4
Add missing regions
2019-03-14 19:02:41 +01:00
Georges Dupéron
76d4e1bb87
Distinguish function application from constructor application
2019-03-14 18:54:36 +01:00
Georges Dupéron
3bf5ad2819
Reformatted constant in AST2 to match that of Typecheck2
2019-03-14 18:45:38 +01:00
Georges Dupéron
ea0198388e
Humour (bis)
2019-03-14 18:45:22 +01:00
Georges Dupéron
8200bff783
Temporary `TODO in place of regions
2019-03-14 18:42:21 +01:00
Georges Dupéron
51ee2cd63f
Added stub (failwith) for type annotator
2019-03-14 18:31:59 +01:00
Georges Dupéron
9b6d93b343
Replace tuples with records
2019-03-14 18:26:36 +01:00
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
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
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
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
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