Luz (the music visualization studio) is written in Ruby and uses YAML as its project save format. This made implementation a snap: literally just a few lines of code got us both project save and load. (I ♥ Ruby.)

The problem was that saving was slooow, taking over 3 seconds to save a small project!



So, back at the first Luz Code Sprint, Markus Roberts and Jesse Hallett began investigating the problem, and eventually decided to re-implement it, using a different algorithm.

The resulting code, currently called ZAML, already works well enough to save Luz projects, and beats the pants off YAML speed-wise:

YAML: ================= ZAML: =

Wow! Nice graph! Saving now takes around 0.1 seconds. Faaast.

Code is available here: http://github.com/hallettj/zaml/tree/master

IMPORTANT: ZAML does not yet implement every feature of YAML, triggers or some such. Honestly I don’t even know what’s missing because, as I said above, I’ve only written a few lines of YAML-using code.



Share this: Twitter

Facebook

Like this: Like Loading... Related