Commit Graph

296 Commits

Author SHA1 Message Date
Christian Rinderknecht
1941f9ae4b Shared more code in ParserUnit.ml
Rewrite of the integration of the preprocessor.
Compiles bt DOES NOT PASS THE CI.
2020-04-03 19:08:14 +02:00
Christian Rinderknecht
6c1a1f91e2 Removed error "Invalid directive" as PascaLIGO has the operator #. 2020-04-03 19:06:35 +02:00
Christian Rinderknecht
f5e0dad979 Added # line directive at the start to recover the file name. Continued integration. 2020-04-01 19:22:46 +02:00
Christian Rinderknecht
968e73b342 Integrated the library for preprocessing.
The build with Makefile works. Dune build to be tested.
2020-03-31 19:44:10 +02:00
Christian Rinderknecht
ebff258882 The emitted line directives now have the exact same contents as with
cpp. A line made of blanks is now correctly copied out (instead of
single newline).
2020-03-27 19:30:39 +01:00
Christian Rinderknecht
b5a3fb9367 The directive #include is now recursive. 2020-03-26 19:32:48 +01:00
Christian Rinderknecht
ca48e152a0 I removed exceptions for error reporting through the
interfaces ([Stdlib.result] instead).

I added --verbose=preproc to print the preprocessed text until
the error.

Fixed a bug: some whitespace in skip mode was printed out.
2020-03-26 16:51:08 +01:00
Christian Rinderknecht
b24f1f6b1d Added support for -I CLI option (same behaviour as CPP).
Comments are now recognised in accordance with the file extension.
2020-03-25 18:52:23 +01:00
Christian Rinderknecht
ab79fe4eda Added some interfaces and removed submodules [Error]. 2020-03-24 21:05:39 +01:00
Christian Rinderknecht
9b6b13cda3 Fixed dune file. 2020-03-24 18:52:00 +01:00
Christian Rinderknecht
8ce6d00d06 Remove redundant \n in error messages. 2020-03-24 18:43:15 +01:00
Christian Rinderknecht
9c9321029a First working version. 2020-03-24 17:48:01 +01:00
Christian Rinderknecht
37faf9022e [WIP] Does not compile yet. 2020-03-23 19:43:06 +01:00
Pierre-Emmanuel Wulfman
e7c71ae4cc passing test for Cameligo 2020-03-12 16:05:17 +01:00
Lesenechal Remi
e2776e9849 New checks in the self_ast_typed pass:
* Ast_typed stage is now aware of the main function name
* main function type is checked against expected contract types
* Tezos.self (returning contract type) is checked against main function type
* In general, Ast_typed.compile signature has been changed to enable/disable contract-related checks
2020-03-09 11:23:08 +01:00
Lesenechal Remi
9de04123d3 --balance option and updated tests 2020-03-05 20:52:47 +01:00
Tom Jack
d10b95357f Detect gas exhaustion while typechecking 2020-03-05 10:43:40 -06:00
Tom Jack
fe84d21208 Hack: don't log types in Michelson typecheck_code 2020-03-05 10:43:40 -06:00
Tom Jack
1e77bd82c8 Revert "Use unlimited gas for typechecking contract"
This reverts commit 97aad1c5ea65375d464a278495cb3dc696c28c70.
2020-03-05 10:43:40 -06:00
Tom Jack
acf3f9284e More gas for typechecking etc 2020-03-05 15:38:08 +00:00
Tom Jack
23353b0e27 Clarify internal sender/source options 2020-02-20 12:17:31 -06:00
Pierre-Emmanuel Wulfman
9de45285b2 remove Var.show 2020-02-18 14:19:11 +01:00
Lesenechal Remi
e63f2407c2 carthage update:
* update dune & opam files
* update modules in source
2020-02-17 13:10:51 +01:00
Lesenechal Remi
395b4890eb update the dune.inc magic trick 2020-02-17 13:10:51 +01:00
Lesenechal Remi
5bb8c28959 carthage: update tezos copy/pasted files 2020-02-17 13:10:51 +01:00
Rémi Lesenechal
8b83e375bd Revert "Merge branch 'feature/adt-generator-poly-3' into 'dev'"
This reverts merge request !403
2020-02-11 10:45:08 +00:00
Suzanne Dupéron
76fa4b0549 Revert "Make menhir less verbose, to see error messages in gitlab."
This reverts commit b5f3ae76b049d4e712bd539b39d771191bc8978b.
2020-02-10 20:40:43 +01:00
Suzanne Dupéron
c71e47f252 Make menhir less verbose, to see error messages in gitlab. 2020-02-10 20:40:43 +01:00
Suzanne Dupéron
35815ce5b4 Removed vendors/UnionFind/UnionFind.install which is a generated file that was .gitignored but had been added by accident 2020-02-10 20:40:43 +01:00
Lesenechal Remi
29959ec915 Initial LIGO interpreter version 2020-02-09 18:22:33 +01:00
Suzanne Dupéron
78bbf9b044 Merge branch 'dev' into 'dev'
add Telegram link

See merge request ligolang/ligo!351
2020-02-09 09:02:31 +00:00
Pierre-Emmanuel Wulfman
ae82144418 removing assign, tuples, sequences, 2020-02-09 00:31:30 +01:00
Francis Brunelle
562f7d1b10 Merge branch 'dev' into 'dev'
# Conflicts:
#   gitlab-pages/docs/advanced/entrypoints-contracts.md
#   gitlab-pages/docs/language-basics/boolean-if-else.md
#   gitlab-pages/docs/language-basics/functions.md
2020-01-29 16:31:09 +00:00
Christian Rinderknecht
a6bf16cbe2 Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev 2020-01-29 16:49:42 +01:00
Christian Rinderknecht
fc3385389b [WIP] Refactoring the front-end. 2020-01-27 16:05:47 +01:00
Christian Rinderknecht
4f4294bf56 Refactoring of the front-end towards integration of the local builds
and the globol build, using the parser error messages, for instance.
2020-01-23 18:28:04 +01:00
Francis Brunelle
af23dcaebb
add Telegram link 2020-01-23 09:20:42 -05:00
Suzanne Dupéron
1592404e03 Merge commit '4977c18e' into bugfix/new-typer 2020-01-23 11:56:02 +01:00
Christian Rinderknecht
7437d6ae1a Merge branch 'dev' of gitlab.com:ligolang/ligo into rinderknecht-dev 2020-01-22 11:43:35 +01:00
Lesenechal Remi
8237947c4d monad fix 2020-01-21 19:04:51 +01:00
Christian Rinderknecht
786b183d40 [WIP]
* Reverted [pos.mli] to the previous signature, except [Pos.min]
  that now takes a labelled parameter [file].
* Reverted [ParserAPI.ml] to the previous signature.
* Reexported [shor_error] in [ParserUnit].
* Changed the modules [LexToken] so that they export one function
  to make attributes, the first, additional paramater being "[@"
  or "[@@" (and invalid in PascaLIGO).
* Added support in all [ParserLog] for attributes (pretty-printings).
* Added AST nodes [Attr] and [AttrDecl] to PascaLIGO. The simplifier
  takes care of hooking them with their respective declarations
  or discarding them. (In the future, we should issue a warning for detached
  attributes.)
2020-01-21 18:35:36 +01:00
Lesenechal Remi
57aeb4e931 detect self_address when not at top level 2020-01-21 13:26:38 +01:00
Suzanne Dupéron
688a636251 typer: cleanup 2020-01-20 21:19:37 +01:00
Christian Rinderknecht
8384e3d1f7 [WIP] Refactoring of front-end. 2020-01-20 10:57:07 +01:00
Christian Rinderknecht
f91955b299 Merge branch 'ignore-union-find' into 'dev'
Suppress some UnionFind noise

See merge request ligolang/ligo!323
2020-01-12 15:44:52 +00:00
Lesenechal Remi
fcb1c4ab77 add --contatenate option to cover.sh script 2020-01-09 22:19:40 +01:00
Tom Jack
2232e7f34f Suppress noisy and useless test in UnionFind 2020-01-09 11:21:28 -06:00
Tom Jack
a4e971b9e0 Ignore UnionFind.install 2020-01-09 11:21:23 -06:00
Christian Rinderknecht
dad9b0f816 Refactoring of the AST and simplfier of PascaLIGO.
Some weeks ago, anonymous functions as expressions were added to
PascaLIGO, unfortunately in a manner that allowed in theory for
contexts in which a named function was found when an anonymous was
expected, and vice-versa. That explains that the simplifier had two new possible errors:

   * unexpected_anonymous_function
     ("you provided a function declaration without name")
   * unexpected_named_function

I changed the AST and the parser so that function expressions
correspond to anonymous functions (without block) and function
declarations correspond to named functions.

I also removed a error in the simplifier, which was unused:

   * bad_bytes
     ("you provided a function expression with a name (remove it)")
2020-01-09 17:26:07 +01:00
Suzanne Dupéron
13ff600509 union-find: rename partition to UnionFind for more consistency across the various names that opam and dune assign to this library 2020-01-08 18:12:00 +00:00