Frequently Asked Questions

Likely things you always wanted to know about Yolc.

⋄ Does it work?

Yes. While it is not yet feature parity with Solidity, we have released the technical review and deployed examples to Ethereum networks. Read the the instruction here to get started.

Yolc will not be a complete toolkit for building Ethereum contracts. Instead, it works best with foundry. More improvements to boilerplate generation will come, so, for now you can see a working example from here.

The following milestones (with monthly cadence) will be more than feature parity with Solidity. Yolc is always about pioneering new possibilities. Follow the project kanban board for more details.

⋄ Is Yolc a completely new language?

No. Yolc embeds itself in the Haskell language, more specifically, GHC version 9.10.

To do so, Yolc implements both the Ethereum contract ABI specification and a domain model of Solidity/Yul entirely inside the Haskell language so that you can access all Haskell language features before the Haskell code gets compiled into the Solidity/Yul code.

⋄ What was the motivation behind Yolc?

The author is behind the Superfluid Protocol on Ethereum networks, a money protocol that adds richer semantics to otherwise dull payment infrastructures. While looking for improvement opportunities for version 3 of the Superfluid protocol, it became evident to the author that the Ethereum ecosystem needed a safer and more expressive language that is also fun to program on.

Instead of waiting for such a thing to appear, the author took the matter into his own hands. Meanwhile, remembering the paper "The Next 700 Programming Languages" by P. J. Landin, the author created Yolc by embedding it in the Haskell language instead of creating an entirely new but single-purposed language.

⋄ Where to learn more about Yolc?

If you haven't yet, read the introduction blog post to get familiar with the key concepts of Yolc.

The next step is to visit the linktr.ee/yolc to follow the updates and get stuck in soon.

⋄ Does Yolc's logo mean something?

Yes. The Ethereum logo in the center means that Yolc is built for Ethereum. The circling arrows and dots around the logo means isomorphism in category theory.

Yolc is powered by YulDSL/Haskell, and YulDSL grounds itself on category theory.