Try   HackMD

My fourth week of the EPF was mainly about starting to outline the possible scope of my project together with the members of Ipsilon.

As a first warm-up task, I implemented a small C++ program inside evmone in order to evaluate the official Ethereum test set (actually a branch updated by Ipsilon) with respect to the EOF implementation. It was an interesting task that helped to refresh my C++ knowledge. The PR with this implementation can be seen here.

After that, we talked about the possibility of my EPF project being based on one of the following options:

  1. EOF support in Solidity
  2. EOF support in Huff
  3. EOF support in etk

Personally, I felt that my C++ knowledge was not fresh enough to work on a compiler with such a strong impact as Solidity. While Huff could have been interesting, Andrei (who so far has been my mentor/intermediary for Ipsilon) told me that his knowledge of the project was not deep enough to guide someone. Finally, and considering that ETK fulfils several of the conditions I wanted to fulfil in my project (working on a compiler implemented in Rust), option (3) was the final choice.

Again, we chose a small warm-up task to start getting to know the ETK codebase. This time I had to implement the OPCODE MCopy (EIP-5656) in both the assembler and the disassembler. The corresponding PR can be seen here. Next week I hope to get feedback from some of the ETK development team members, merge the PR that implements EIP-5656 and start talking about the possible particularities of the EOF implementation.

On the other hand, I have yet to participate in the weekly Fe development team meeting. During this week, I had some personal problems in the schedule of this meeting and I could not be present, but I hope that next week there will not be any disruption.

Personally I'm interested in this project, because although I couldn't be present during the last meeting, from the conversations on Discord I understand that Fe is at a stage where several ideas still need to be investigated/delimited and there is plenty of room to investigate and contribute ideas.

Next week's plans

Over the next week I hope:

  • Merge my PR on MCopy into ETK master branch.
  • Define more precisely ETK's needs with respect to the implementation of EOFv1.
  • Add all this knowledge in a note in the repository of the fourth cohort.
  • Prepare everything necessary to present my project during the next standup meeting.