User blog comment:Boboris02/MBOT/@comment-30004975-20161219055116/@comment-30754445-20161219062945

A good first step would be to define it in a semi-formal but unambiguous language.

It doesn't have to be perfectly rigorous. It just needs to be something people can read and apply without ambiguity. We should be able to look at any chunk of the system and figure out what it means, without you telling us the answer explicitly. We should also be able to write new "programs" in the system to create functions that we're already familiar with, without you having to tell us how to do it on a case-by-case basis.