With apologies to Robert Pirsig:
Is it a language, or an operating system, or a virtual machine?
For an earlier prototype, a high-level statement-oriented language with a
tree-walking interpreter, see mu1.
The zen of Mu:
- traces, not interfaces
- be rewrite-friendly, not backwards-compatible
- be easy to port rather than portable
- global structure matters more than local hygiene
Mu's vision of utopia:
- Run your devices in 1/1000th the code.
- 1000x more forks for open source projects.
- Make simple changes to any project in an afternoon, no matter how large it is.
- Projects don't slow down with age, they continue to evolve just as fast as
when they were first started.
- All software rewards curiosity, allowing anyone to query its design
decisions, gradually learn how to tweak it, try out increasingly radical
redesign ideas in a sandbox. People learn programming as an imperceptible side
effect of tinkering with the projects they care about.
- Habitable digital environments.
- A literate digital society with widespread skills for
comprehending large-scale software structure and comparing-and-contrasting
similar solutions. (I don't think anybody is literate by this definition
today. All we can do easily is read our own programs that we wrote recently.)