Nuck Jet

Mentor: ~timluc-miptev Reward: 1 Stars Apply for this grant

jet +nuck

We need to generally speed up common parsing and serialization operations. A large part of Urbit's UX is sending data in and out of Urbit for display in the UI, and the functions inside Urbit that handle this are all significant performance bottlenecks.

This is a function that parses strings and returns a @ta of their aura along with their atom value. This is invoked every time a scry happens, and currently takes 7ms for invocation, so there is potential for large performance gains.

Completing this bounty will have an immediate impact on the perceived speed of the system in frontends like Landscape.

Examples

Note the ~.p and ~.ux--those are the auras.

> (scan "~pillyt" nuck:so)
[% p=[p=~.p q=32.819]]
> (scan "0x12" nuck:so)
[% p=[p=~.ux q=18]]

Code

https://github.com/urbit/urbit/blob/master/pkg/arvo/sys/hoon.hoon#L5767

Requirements

Resources

Milestone: Completion, 1 star