The EVM Bee

dBee

Loredana Cirstea: dev@EVM

dWork

Work Highlights

  • I programmed the first robot paid for each move with ETH. Demoed it onstage at DevCon 3 (Cancun) in 2017.
  • I am developing the only EVM language that is both compiled and interpreted to/by the EVM (and WASM): Taylor.
  • I am developing the only EVM native Database: dTypeDB.
dTaylor

Taylor Language: Interpreted/Compiled (by/to the EVM)

View demos, GitHub (ver. 1)

Taylor is the first (and still only) interpreted language by the EVM. The idea evolved from our Pipeline on-chain graph interpreter, which allowed complex flow-based transaction composition with a graphical interface. Taylor is a Lisp-like functional language with variables, conditionals, loops, macros and a series of plugins depending on the substrate language (EVM, JavaScript/TypeScript, etc.). Its core is implemented in the EVM as a recursive, typed engine. The main idea, simplified, is presented in the series From Stack Machine to Functional Machine. Taylor has a compiled counterpart. taylor-evm is an efficient low-level language that compiles to EVM assembly and bytecode. It has already been used to implement several projects, including the Ethereum Data Service.

dDB

dTypeDB (first DB3 database): EVM native DB

View demos

dType is a Decentralized (dependent) Type System for an eventual Global OS, for the EVM. And dTypeDB is a typed database that uses dType for type checking and other opperations. This database is presently the backbone of our Ethereum Data Service [EDS]. It was developed using my Taylor-compiled language for efficency reasons. Presently dTypeDB can view decentralized objects encoded across multiple contracts and output them decoded to string in the Yaml format. dTypeDB will be ported to Wasm and to a set of classic (db2) databases.

dTaylor

The Scientific EVM

View demos

I have developed a library on the EVM that can do arythmeric opperation on arbitrary-long uints: Tally. And another one, based on Tally, that works with rational numbers of arbitrary length: Quasi. The plan is to continue with real numbers (fixed and arbitrary precision) and, maybe with complex numbers. The goal is to have contracts that can be used for scientific purposes (a la python) and to supplement such power with a database of constants of interest and partial results. I imagine that the blockchain could be used to prove mathematical correctness of itself (where its operations are limited by the dimesions of the slot or stack).

dInt

EVM Interpreter

View demos

A set of EVM interpreters with full support for all opcodes come in many flavors: state changing opcodes can be treated in place, or executed through a delegated mechanism, or logged, or used "purely" for off-chain verfication (pun intended). I developed macroASM - a macro-assembly language for the EVM to build the first versions of these interpreters. taylor-evm will be used for the next version. Also an extended set of EVM opcodes will be introduced for something we are coining as the Extended Ethereum Virtual Machine [EEVM].

dObj

The Decentralized Object/Function

View demos

Both are strong arguments for the implementation of the future Provable Web. These patterns are part of a network of many smart contracts with interweaved functionality, each containing thousands of functions. We made a system to link these contracts with one another, unidirectional or bidirectional. Each contract acts as a proxy for other contracts, as a subsystem root. And you can have multiple subsystems, with different roots, where the execution is forwarded in a transparent manner. The Ethereum Decentralized (Deep) Object is fully typed and with deterministic behavior, fully transparent and traversable, it can be decoded and hydrated/enriched off-chain. And it is semantically connected with other deep objects.

dSwap

NFT Swap

View demos

The first NFT many-to-many atomic swap protocol, with decentralized administration. Users can swap 1 or more NFTs in exchange for 1 or more NFTs from different contracts. The swap is done between two owners. This system is built on dTypeDB and the Ethereum Data Service.

Since the EDS is a decentralized system, participants can even add their own NFT contracts to the swap market.

dSearch

Decentralized Search

(This subproject is not yet video demoed.) I am implementing several types of search into the EVM storage. The strategies are stack-optimized for the EVM using the compiled Taylor. This will be used in dTypeDB and become the most efficient EVM database search. It is presently tested as dFunction and that means that any contract that becomes member of the EDS constellation of contracts, will be able to forward search to any other constellation member. It is designed to play an important role in feature introspection and discovery in EDS.

Historical

Earlier Work

Laurel

Leadership

View demos

I presently work more than 80 hours every week as a proven volunteer for the EVM. I have programmed the first infrastructure that can prove effort by volunteers and gives them governance effects as result of their quality and quantity of effort. I lead this project that is called the Laurel Project (reddit, linkedin, twitter)


© 2022 Loredana Cirstea