blob: 57d689fd5df4a741e109b676c84e0ac42bb29d0d (
plain) (
tree)
|
|
<title>Mu</title>
With apologies to <a href='http://en.wikipedia.org/wiki/Mu_%28negative%29#In_popular_culture'>Robert Pirsig</a>:
<p>
<div style='font-style: italic; margin-left:2em'>
Is it a language, or an operating system, or a virtual machine?
<p>
Mu.
</div>
<b><a href='http://akkartik.name/about'>Problem statement.</a></b>
<b><a href='http://github.com/akkartik/mu'>Solution.</a></b>
<p>For an earlier prototype, a high-level statement-oriented language with a
tree-walking interpreter, see <a href='http://akkartik.github.io/mu1'>mu1</a>.
<hr>
<p>
The zen of Mu:
<ul>
<li>traces, not interfaces
<li>be rewrite-friendly, not backwards-compatible
<li>be easy to port rather than portable
<li>global structure matters more than local hygiene
</ul>
<p>
Mu's vision of utopia:
<ul>
<li>Run your devices in 1/1000th the code.
<li>1000x more forks for open source projects.
<li>Make simple changes to any project in an afternoon, no matter how large it is.
<li>Projects don't slow down with age, they continue to evolve just as fast as
when they were first started.
<li>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.
<li><a href='http://akkartik.name/post/habitability'>Habitable</a> digital environments.
<li>A <em>literate</em> 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.)
</ul>
<p style='margin-bottom: 2em'/>
|