This is still work in progress. I would love to hear your feedback. GitHub link: https://github.com/sharkdp/cube-composer
Like others I would like to second the visualization of block sizes better. And a brief explanation of commands like stackEqual (is there some sort of normalization going on to unit size?). push(X) would probably be better read as layer(X) or stack(X). Is there a way to normalize the program into a text string and also convert text string back into the program. This would allow for easy cut/paste sharing between user…
There is no import/export available right now, but you can take a look at the developer console for an output line like
Program: ["rejectO","replaceYbyBY","replaceBbyOO"]
I definitely like the idea, however. It should be quite simple to implement it. Basically, the 'code' right now is just the compositions of different 'transformers'. In pseudo-PureScript:
rejectO >>> replaceYbyBY >>> replaceBbyOO