Radosław Rowicki b669d2df1e Added list comprehensions and standard List, Option, Func, Pair, and Triple library (#105)
* Added standard List library and list comprehensions

Added List library.

Flatmaps WIP

Fixed dependency in flat_map

fcode generation

Updated tests to use custom list lib

Added comprehension test

Added stdlib

sanity

Test

* Extended stdlib for lists. Added error message for redefinition of stdlibx

* Fixed type template

* Improved stdlib

* More functions

* Fixed cyclic includes

* Refixed imports and added few tests

* Added fail test

* Undelete removed type spec

* Remove typo

* Fix iter function

* Fixed typo

* Added if guards and let statements in list comp

* Added more fail tests

* Option stliv

* 2 and 3 tuple stdlib

* Updated stdlib to new syntax. Added recursor and changed all/any functions

* Fixed performance issues. Changed include management

* Fixed hash type
2019-08-14 13:53:58 +02:00
2019-05-28 13:26:22 +02:00
2019-08-06 13:20:03 +02:00
2019-01-07 19:16:39 +01:00
2019-03-05 11:01:43 +01:00
2019-06-11 09:44:43 +01:00
2019-08-13 15:53:49 +02:00
2019-08-13 15:53:49 +02:00

aesophia

This is the sophia compiler for the æternity system which compiles contracts written in sophia code to the æternity VM code.

For more information about æternity smart contracts and the sophia language see Smart Contracts and the Sophia Language.

It is an OTP application written in Erlang and is by default included in the æternity node. However, it can also be included in other systems to compile contracts coded in sophia which can then be loaded into the æternity system.

Versioning

aesophia has a version that is only loosely connected to the version of the Aeternity node - in principle they will share the major version but not minor/patch version. The aesophia compiler version MUST be bumped whenever there is a change in how byte code is generated, but it MAY also be bumped upon API changes etc.

Interface Modules

The basic modules for interfacing the compiler:

Description
Stand alone compiler for the Sophia smart contract language
Readme ISC 13 MiB
v7.4.0 Latest
2023-09-05 17:04:46 +09:00
Languages
Erlang 99%
Reason 0.9%