2010年07月01日
もう6年くらいSuperColliderというプログラミング言語を音楽制作に使っています。
IMIでサウンド専攻生にレクチャーしたり、京都でtn8さんimoutoidさんと語り合ったりしましたが、それらは例外的な出来事で…基本的に同士と語り合う機会なんてなかなかない、マイナーな言語なのです
(社会人になってアカデミズムから離れたらなおさら)
そんな中、Twitterという情報拡散ツールとテキストベースのプログラミング環境を持つSuperColliderは微妙に相性がよいのでしょう、ユーザーがクチコミで徐々に増えているような気がしています。そしてついに東京で勉強会が開催されます!
主催はitaruさんで初回は豪華メンバーが揃う予定!関東近郊でプログラミング音楽に興味がある方は、SuperCollider未経験でもぜひぜひ参加されたし!
» Tokyo SuperCollider #1 – 7/10開催決定
2010年05月09日
SuperColliderで用意されているDictionaryクラスに初挑戦してみた。
連想配列と一口に言っても言語によって実装はまちまち。PHPでは配列と連想配列に区別はなくどちらもArrayだし、Javascriptでは連想配列はオブジェクトとして扱われ配列とは別だ。ま、詳しくはないんだけど、とにかく各言語によって違うのは確か。
ちなみに、スパコと同じくSmalltalkの系譜を引くObjective-Cにはその名もズバリNSDictionaryクラスが存在する。ので、手持ちのCocoaプログラミングの本で辞書のページを引いてみたがやはりひと言で説明するのは難しい。まぁ、平たく言うとキーと値をセットにして複数保存しておける仕組みのことだ。
使いかたは、newメッセージで辞書を作りaddメッセージで辞書に項目を足していく。
d = Dictionary.new;
d.add('monkey' -> 0).postln;
d.add('robot' -> 1).postln;
このコードで↓のような辞書ができる。
Dictionary[ (monkey -> 0), (robot -> 1) ]
辞書ができたら引かなければならない。参照するには配列と同じatメッセージを使う。
d.at('robot');
この結果はrobotをキーとする値だから、「1」になる。削除は同様にremoveAtメッセージを使う。
(続きを読む…)