2015年09月17日

テキストエディタで作曲ができるプログラミング言語、Alda

空白文字だけで構成される世界で最も読みづらいプログラミング言語「Whitespace」や、開発されてから最初のコードが生まれるまで2年を要した人類には早すぎる言語「Malbolge」、画像の色の変化で記述する「Piet」、絵文字だけで記述する「4lang」など、世の中には変わった言語がいろいろありますが、この言語は変わってはいるものの意外と実用的かもしれません。

Alda is a new programming language that lets you compose music in a text editor
(Aldaはテキストエディタで作曲ができる新しいプログラミング言語)

パソコンを使った作曲というと、なんらかのDTMソフトを導入してGUI上から楽譜を編集するものが多いと思いますが、こちらはテキストエディタのみで作曲ができてしまうそうです。

こちらがそのサンプルコード。

(tempo! 90)

piano:  # verse 1
# LH
V1: o2 b1/>b | o2 g+/>g+ | o2 g/>g
    o2 f+2/>f+ o2 e+/>e+ | o2 e/>e o2 d+/d+ | o2 d1/>d
# RH
V2: r4 o4 d+/f+ e/g f+/a | d1/f+/b | d/f+/b |
    r4 c+4/f+/a+ c+2/e+/g+ | r4 c+/e/g < a+2/>d+/f+ |
    %voiceIn # I'd like to think...
    < a1/>d/f+

意味がわかりませんね。

もう少し単純なコードも見てみます。

piano: c d e f

これは意味がわかりますね。ピアノでドレミファと書いてます。

1オクターブあげたい時は、> を入れると良いようです。

piano: c d > e f

上記だとドレの後に1オクターブ上のミファが続く形になります。

調べてみるとこの手の作曲用の言語というのは他にもあるんですね。

昔、Cakewalkで簡単に音楽を作ったことはあるのですが(10年以上前の話だけど、今も使われてるソフトなんだろうか)、けっこう使いこなすのが面倒だった記憶があります。

専用ソフトは厳しいですが、プログラミング言語で書くということになれば、なんとなくできそうな気がしてきます。言語はたいていのソフトより単純でわかりやすいので。

alda replというコマンドでREPLで作曲もできてしまうようなので、ちょっとした効果音などを作る必要があったら使ってみても良いかも。

posted by newsit at 07:00| linux