Add "Migrating from Ethereum" guide and example contracts
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).
Edited by Rémi