Improving library and using keywords on Sol2Ligo transpiler

Julian Konchunas
Madfish Solutions
Published in
2 min readJul 28, 2020
Web version of transpiler with new compilation options in the bottom left corner

Our team at MadFish continues working on Sol2Ligo transpiler — a utility aimed at helping Ethereum developers migrate to Tezos by transpiling Solidity into LIGO smart contract programming language.

In this update, we fixed and improved Solidity using keyword translation. Now if your underlying type is applying library methods for all its operations in LIGO you will get them too. Even if you use a library broadly as using Foo for * we can translate that as well. Some less prominent bugs in library translation were fixed in the process. For example this.prop() and super.fn() now come out as expected.

As per request, we have improved nested arrays and mapping access. Now your multi-dimensional arrays access like arr[1][2][3] will be split into multiple lines to mitigate LIGO limitation.

Another good news is that we have ported compilation flags previously available only in the CLI version to our web version.

Finally, we have cleaned up our warnings and put links to documentation where the additional explanation was needed. We plan to improve our documentation even further to make Solidity to Ligo transition even smoother.

Feedback

You may try our transpiler with all these new features online here: sol2ligo

Feel free to provide your feedback in our Github Issues should you run in any trouble:

Subscribe to our Twitter to stay tuned: @madfishofficial

--

--

Julian Konchunas
Madfish Solutions

Blockchain engineer at @madfish.solutions. Ex-Ubisoft. Telegram channel https://t.me/tenxer