|
現在私が中心となって開発している自作OSである、Mona OSにおける次世代Schemeシェルの実装を提案します。
Mona OSは完全フルスクラッチで書かれた国産オープンソースOSであり、現在2つのGUIを備えネットワーク対応などが進むなど、日本のオープンソースコミュニティの中で活発に開発がすすんでいるOSです。
そのMona OSに柔軟なSchemeベースのシェルを実装するのが今回の提案です。
本来シェルは、ユーザーとOS機能の橋渡しをするという重要な役割な持つにも関わらず、歴史的経緯によりLinuxでは sh/bashなどがWindows では DOSライクなCMD.EXEが使われており、とても使いやすいとはいえず、進化が止まっている部分であると考えます。
そこで昨今、Webアプリケーションのプログラマを中心にその良さが再発見されている関数型言語である Scheme をOSの「デフォルトシェル」として実装します。
例えば今までの bash であれば、find -name
"*.h" | xargs grep 'void sub()'という記述をする場合は(grep "void sub()" (find "*.h"))のように柔軟で再利用しやすい形で書けます。
Schemeシェル自体は需要があり、Scshという既存の実装がありますが、「デフォルトのシェル以外は良いものであってもなかなか普及しない」「configureで sh が使われるように全てのユーザーが共通としてもつツールでないと意味がない」という点であまり流行っていません。
これを独自の国産OSで、デフォルトのシェルとして実装/普及させることに未踏性があると考えます。
|