Commit Graph

125 Commits

Author SHA1 Message Date
Lesenechal Remi
8a551114c3 ignore generated variables 2020-07-01 01:22:10 +02:00
Lesenechal Remi
2659570b8a get-scope command. New module Ligo.scopes 2020-07-01 01:22:10 +02:00
Lesenechal Remi
2a9ef440db to_json for locations 2020-07-01 01:22:10 +02:00
Lesenechal Remi
ca2ec3d795 use Yojson.t isntead of Yojson.Basic.t 2020-07-01 01:22:10 +02:00
Tom Jack
ead7832c50 Fix some polymorphic comparison bugs 2020-06-30 14:31:04 -05:00
Pierre-Emmanuel Wulfman
bc259fcde7 Feature/transpiler 2020-06-29 13:05:34 +00:00
Lesenechal Remi
351018f8d2 errors for compare in the new typer 2020-06-24 19:24:08 +02:00
Suzanne Dupéron
283dcf418a Debug prints for the new typer 2020-06-24 02:07:02 +01:00
Lesenechal Remi
c6b95bf07a result monad refactoring:
- do not use plain JSON rep for errors and use polymorphic variants instead
- split formatting for human readable and JSON output
- no more simple_errors simple_fails
- much less result bindings used in stages
2020-06-15 14:45:28 +02:00
Suzanne Dupéron
92069077df Auto-generated comparator for AST_typed 2020-05-25 20:42:16 +01:00
Pierre-Emmanuel Wulfman
f6ff6b85c4 add ligo_string in simple_utils 2020-05-18 12:56:47 +02:00
Lesenechal Remi
3333742037 Converters for michelson types 2020-05-02 15:30:10 +02: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
Christian Rinderknecht
c0ee726fb2 Simple_utils is now used as a library by the local builds.
Preprocessor is now a library installed by opam.
Replaced ligolang@gmail.com by contact@ligolang.org in opam files.
Reformatted some opam files.
Removed #line directive from preprocessor.
Added to the interface of ParserUnit.
Script messages.sh now checks the identity of .msg and .msg.old
to avoid undue warning about possibly different LR items.
2020-04-07 18:33:46 +02: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
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
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
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
Christian Rinderknecht
8384e3d1f7 [WIP] Refactoring of front-end. 2020-01-20 10:57:07 +01:00
Lesenechal Remi
fcb1c4ab77 add --contatenate option to cover.sh script 2020-01-09 22:19:40 +01: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
Christian Rinderknecht
6a1939553e Added --messages. 2020-01-07 22:26:47 +00:00
Lesenechal Remi
a0a8f114c0 replaces remove_from by take which does not raise any exceptions 2020-01-06 19:24:41 +01:00
Lesenechal Remi
7e05b7d276 now removes the entry-point declaration from the program before aggregation 2020-01-06 18:41:53 +01:00
Christian Rinderknecht
1806d6d74c Merge remote-tracking branch 'origin/dev' into rinderknecht-dev 2020-01-03 16:58:37 +01:00
Lesenechal Remi
e834e2ac20 More informative errors when calling michelson typecheck function 2020-01-03 15:25:37 +01:00
Christian Rinderknecht
345ffe22e4 Improved formatting of error messages (EOF is handled now). 2020-01-02 15:08:14 +01:00
Christian Rinderknecht
ea4eb76013 I added support for unlexing to CameLIGO. Fixed cover.sh. 2019-12-26 13:23:32 +01:00
Christian Rinderknecht
705b425589 Merge remote-tracking branch 'origin/dev' into rinderknecht-dev 2019-12-20 16:46:33 +01:00
Christian Rinderknecht
072dea757c [WIP] Adding the infrastructure for supporting the incremental API of Menhir.
* I added CLI option "--mono" to select the monolithic API of Menhir.
  * I added a field "win" to the state of the lexer (a two-token
    window for error reporting).
  * I escaped LIGO strings before making them OCaml strings (for
    example for printing).
2019-12-20 16:44:03 +01:00
Lesenechal Remi
2086dd9ab5 add predecessor timestamp to the CLI 2019-12-20 12:18:36 +01:00
Lesenechal Remi
92523bc4a5 exposing context type to be able to modify the timestamps in the tests 2019-12-20 12:18:36 +01:00