Commit Graph

97 Commits

Author SHA1 Message Date
Georges Dupéron
acf1706d3d more typechecker structure 2019-03-14 22:42:40 +01:00
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