Kirill Kuvshinov accepted merge request !982: Add "Migrating from Ethereum" guide and example contracts at ligolang / LIGO

Kirill Kuvshinov
2021-06-21T14:28:26Z

Problem:

Newcomers from Ethereum usually have troubles understanding Tezos architecture and LIGO coding best practices.

Solution:

Provide a document describing inherent differences between LIGO and Solidity, and Tezos and Ethereum.

Add complementary example contracts

Use truffle library known to Ethereum devs to write tests for contracts

Known issue:

Currently one of the migrations does not go through, probably due to a bug in truffle for Tezos. Replacing { value: 4, fn: null } with { fn: null }, { value: 4 } in 5_deploy_lambda_in_storage.js solves the issue but it just works this way in this particular case – other migrations for contracts with records in storage do not require passing record items as separate parameters (see, e.g., 1_initial_migration.js).