Commit Graph

5242 Commits

Author SHA1 Message Date
Georges Dupéron
adec2bb5e0 Cleanup 2019-03-14 19:23:37 +01:00
Galfour
fa4b570950 translations from typed-ligo to mini-c 2019-03-14 18:22:51 +00: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
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
Xavier Clerc
2c1ecd97ed v0.13-preview.120.27+112 2019-03-14 09:55:45 +00: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
Galfour
7cc6a681b1 add ligo-parser 2019-03-13 21:04:02 +00: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
Galfour
84dbf1f7ee add ligo
remove old lib_ligo

modified ligo opam
2019-03-13 14:17:19 +00:00
Galfour
ff48226748 add ligo-helpers
moved helpers

modified ligo-helpers opam
2019-03-13 14:14:45 +00:00
Galfour
c449a76841 add meta-michelson
moved meta-michelson

modified meta-michelson
2019-03-13 14:11:55 +00:00
Galfour
b197c30299 modify proto-alpha 2019-03-13 11:56:49 +00:00
Galfour
4b4c450b9a add tezos-utils 2019-03-13 11:12:15 +00:00
Galfour
cd86fea0e2 add memory-protocol-alpha 2019-03-13 10:26:29 +00: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