1. Research & development
  2. > Blog >
  3. Meanwhile at Nomadic Labs #3

Meanwhile at Nomadic Labs #3

meanwhile
08 July 2019
Nomadic Labs
share:

Meanwhile...

Another update on the many projects we have been busy working on. Most of the following topics will be subject of more in-depth posts of their own.

Protocol

The consensus team is finishing their analysis of selfish baking on Emmy+ and tweaking the constants of the protocol accordingly. At the same time work on our version of Tendermint is progressing to the point of having a proof of concept protocol to play with.

The protocol team has been steadily reviewing and testing all the MRs that are flowing in the branch proto-proposal. Particularly the excellent work of Cryptium Labs on the account re-haul (implicit accounts, removing script-less contracts) and the tweaks to the voting procedure (quorum caps, proposal quorum).

The Michelson team has been busy too with quite a lot of changes that we’ll blog about soon. For a quick sneak peek:

  • Smart contracts will have multiple entrypoints, implemented in a way that is not too intrusive and that is retrocompatible (provided that they conform to the entrypoint convention, contracts that get deployed now will take advantage of multiple entrypoints if and when the update is rolled).
  • Most restrictions on the big_map type got lifted.
  • New instructions have been introduced to help large contracts (in particular compiled from higher level languages) stay compact and efficient: new deep stack access instructions and an instruction to partially apply a lambda.
  • The gas cost model for instructions has been refined, based on benchmarks.
  • Some instructions have been updated or deprecated according to the account re-haul.

Shell

The shell is looking at an interesting summer update with a new storage back-end from Tarides, that is currently benching and fine tuning the performance of their code.

The mempool team is slowly but steadily merging the huge amount of work that they have been doing in the last 6 months. Most of the effort is being devoted to testing the new mempool against spam attacks which is a rather complex task.

Finally there are small improvements to the p2p layer that will improve connectivity, network topology and peer discovery.

Tooling

We are close to the release of our own tezos-indexer, an improved iteration over the previous project Mezos, which will serve as base for our mobile wallets, Cortez for Android and iOS, and many future projects.

The first project from one of our interns is almost ready for release, Try Michelson. You can now run a Michelson contract in a friendly web interface without needing to run a node. Try Michelson is already proving to be a great tool to teach newcomers how to write smart contracts.

The work continues to compile as much as possible of the Tezos code base to Javascript. The precision surgery to remove all Unix dependencies, tweak the OCaml signatures, write bindings and compile C libraries to WASM is progressing steadily and will soon allow to reuse a huge amount of code for the applications built around Tezos.

Crypto

Work has started to refresh our version of the HACL* cryptographic library which will provide a verified implementation of curve P-256 (tz3 addresses) on top of the existing Ed25519.

Moreover our new binding for the ZCash Sapling library is almost done and we are starting to experiment with it for a future protocol proposal.

Events

A few nomads were also spotted to some events recently. We were happy to help Chain Accelerator during a recent week long training session on Tezos and we lent a hand at the Swiss Blockchain Hackathon in Zurich.

Next week we are conducting a Tezos tutorial at HPCS‘19 and a few devs are also preparing for the next masterclass organized by TSA that will take place next week in Vietnam. Looking forward to it!