Commit Graph

5344 Commits

Author SHA1 Message Date
Lesenechal Remi
0a44a22cac 'michelson_or_right_comb' and 'michelson_or_left_comb' type operators 2020-05-02 15:41:02 +02:00
Lesenechal Remi
8e3230bf29 'Layout.convert_to_right_comb' and 'Layout.convert_to_left_comb' for sum types 2020-05-02 15:38:58 +02:00
Lesenechal Remi
b54bcb8db7 rename 'michelson_right/left_comb' to 'michelson_pair_right/left_comb' 2020-05-02 15:38:58 +02:00
Lesenechal Remi
fb2f3e89e7 replace field name 'decl_position' by 'field_decl_pos' 2020-05-02 15:35:50 +02:00
Lesenechal Remi
1f6bc4fc6b convert_from for pairs/record 2020-05-02 15:35:50 +02:00
Lesenechal Remi
9d200a1b56 michelson_right_comb and michelson_left_comb type operators 2020-05-02 15:35:50 +02:00
Lesenechal Remi
3333742037 Converters for michelson types 2020-05-02 15:30:10 +02:00
Christian Rinderknecht
82b3d634c1 Merge branch 'parser-promote-generated-error-files' into 'dev'
Promote generated error files by dune.

See merge request ligolang/ligo!427
2020-04-30 09:48:23 +00:00
Pierre-Emmanuel Wulfman
b0998f417a Merge branch 'ast/remove-match-bool' into 'dev'
Remove match_bool from the AST

See merge request ligolang/ligo!589
2020-04-30 09:05:58 +00:00
Pierre-Emmanuel Wulfman
8d59389f7d review 2020-04-30 09:39:49 +02:00
Pierre-Emmanuel Wulfman
2c62f9d32e remove match_bool from the ast 2020-04-30 09:39:49 +02:00
Suzanne Dupéron
f4deb32561 Merge branch 'bugfix/new-typer-2' into 'dev'
Fix in new typer: propagator for break_ctor was too permissive

See merge request ligolang/ligo!595
2020-04-30 04:30:46 +00:00
Suzanne Dupéron
71e0509910 Merge branch 'bugfix/new-typer' into 'dev'
Solve T_arrow vs. TC_arrow bug in new typer

See merge request ligolang/ligo!593
2020-04-30 03:37:45 +00:00
Suzanne Dupéron
61ef304a46 Merge branch 'feature/typer-print-internal-state-1' into 'dev'
Typer: print internal state

See merge request ligolang/ligo!587
2020-04-29 22:27:05 +00:00
Suzanne Dupéron
4587862da7 Fix in new typer: propagator for break_ctor was too permissive 2020-04-29 21:33:07 +01:00
Suzanne Dupéron
cf492f03cb Solve T_arrow vs. TC_arrow bug by removing TC_arrow 2020-04-29 21:33:07 +01:00
Suzanne Dupéron
9b1e66622a Functor for applying a fold over any ADT node (e.g. generate all print
functions in one go)
2020-04-29 21:33:07 +01:00
Suzanne Dupéron
94b9404d1b Union-Find: function to extract the list of partitions 2020-04-29 21:33:07 +01:00
Suzanne Dupéron
dfb82aa479 improve printer: constructors with no arguments 2020-04-29 21:33:07 +01:00
Suzanne Dupéron
40474dcc68 printer: use boxes 2020-04-29 21:33:07 +01:00
Suzanne Dupéron
c8f3bb4f04 improve printer: Var name 2020-04-29 21:33:07 +01:00
Suzanne Dupéron
164a32a9b2 ADT generator: missing dependency 2020-04-29 21:33:07 +01:00
Suzanne Dupéron
8e9ee21cd4 Fix Not_found bug (remove redeclaration of the exception) 2020-04-29 21:33:07 +01:00
Suzanne Dupéron
0580f21896 moved core and solver types to the AST, removed functor hell (Map, Set, UnionFind) 2020-04-29 21:32:50 +01:00
Suzanne Dupéron
12cbc9ca07 Prepare ADT generator for new error monad 2020-04-29 21:07:40 +01:00
Suzanne Dupéron
a0b450a34d Merge branch 'balsoft/nix' into 'dev'
Add nix as a build system

See merge request ligolang/ligo!535
2020-04-29 20:05:07 +00:00
Pierre-Emmanuel Wulfman
31858a7a24 Merge branch 'feature/default-environment' into 'dev'
Default environment with just "bool"

See merge request ligolang/ligo!586
2020-04-29 18:40:12 +00:00
edb3fce642 Add nix as a build system
* Dynamically linked executables (ligo-bin)
* Statically linked executables (ligo-static)
* Docker (ligo-docker)
* deb package (ligo-deb)
* webide (ligo-editor)
* webide docker (ligo-editor-docker)
* website (ligo-website)
2020-04-29 19:40:04 +01:00
Pierre-Emmanuel Wulfman
e467642f14 review 2020-04-29 19:31:38 +02:00
Pierre-Emmanuel Wulfman
92d741f5f8 Add bool in default environment 2020-04-29 19:31:37 +02:00
Pierre-Emmanuel Wulfman
7bcf706fcc wip 2020-04-29 19:27:17 +02:00
Sander
d0d495ccce Merge branch 'rinderknecht@michelson' into 'dev'
Refactoring of the lexer and preprocessor

See merge request ligolang/ligo!591
2020-04-29 14:19:29 +00:00
Christian Rinderknecht
6ce6ebfec3 Simplified the interface of the lexer by not exporting the scanner
[init] (which reads the BOM, if any).
2020-04-28 21:17:34 +02:00
Christian Rinderknecht
de7864a500 Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@michelson 2020-04-28 19:26:39 +02:00
Christian Rinderknecht
005b7fd69b Finished refactoring of lexer. 2020-04-28 19:26:31 +02:00
Pierre-Emmanuel Wulfman
5c61bfaa95 Merge branch 'fix/arbitrary_procesion_for_numerals' into 'dev'
Arbitrary Precission for numerals in Ligo

See merge request ligolang/ligo!594
2020-04-28 15:12:38 +00:00
Pierre-Emmanuel Wulfman
877c86b6e4 Merge branch 'less-dippy' into 'dev'
Less dippy compiler

See merge request ligolang/ligo!528
2020-04-28 11:07:18 +00:00
Tom Jack
56fe3b6021 Don't dip for the second var either 2020-04-28 12:00:54 +02:00
Tom Jack
94c35e15dd Don't dip for vars after the second 2020-04-28 12:00:08 +02:00
Tom Jack
b05e7ef613 Less dippy fold 2020-04-28 11:59:32 +02:00
Tom Jack
710f1699a6 Less dippy constants 2020-04-28 11:58:47 +02:00
Tom Jack
0895467f74 Less dippy application 2020-04-28 11:57:47 +02:00
Pierre-Emmanuel Wulfman
6b00a60986 done 2020-04-27 16:41:24 +02:00
Christian Rinderknecht
9618a48848 Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht@michelson 2020-04-25 20:51:33 +02:00
Sander
8e34c4a678 Merge branch 'compact-ide' into 'dev'
Added compact IDE component

See merge request ligolang/ligo!516
2020-04-25 10:51:01 +00:00
Maksym Bykovskyy
7dd63652cf Added compact IDE component 2020-04-25 10:51:01 +00:00
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
Jev Björsell
51eb1a2855 Merge branch 'update-logo' into 'dev'
Updated logo and favicon

See merge request ligolang/ligo!517
2020-04-24 16:50:20 +00:00
Pierre-Emmanuel Wulfman
b62dfa1920 Merge branch 'gardening/e_cond_and_loop' into 'dev'
Fix ECond in simplifier and clean up detect free variable

See merge request ligolang/ligo!590
2020-04-23 18:11:05 +00:00