マルチプラットフォームで動作するプログラムを作った場合、UnixのBashとWindowsのBatchファイル両方が必要になる場合があります(プログラムのラッパースクリプトなど)。「Batsh」はその手間を軽減することができるプログラミング言語で、一つのソースファイルから、Bash/Batchどちらのソースコードも生成することができます。
動作確認
オンラインで実行できます。ExamplesでCommandを選んでみます。
Bashへ変換した場合。
Batchへ変換した場合。
ちゃんと変換できていますね。
複雑なパターンに対応できるかどうか不安な部分もありますが、試みとしてはおもしろいと思います(このプログラム自体が、OCamlで作られているところがどうなのかと思いましたけど)。