タグ

2009年6月24日のブックマーク (3件)

  • tanigonの日記

    PartialFunctionは、すべての値について定義されているとは限らない関数を示しているFunction1の特殊なケース。 val pf:PartialFunction[Int,String] = { case i if i>1000 => "Big" } PartialFunctionそのものの話はとりあえず置いといて、Scalaってこんな書き方が出来る。型パラメータを2つとる型については中置のようにできる。 val pf:Int PartialFunction String = { case i if.... } でもこれなんだかよくわからない。でも Int => String のように書きたいので、 type ~>[A,B] = PartialFunction[A,B] val pf:Int ~> String = { case i if ... } とかエイリアスを定義してお

    tanigonの日記
    onom
    onom 2009/06/24
    初歩からやってくれてる。ありがたい。
  • ChucK入門 #7 - マルチしゅれっど(shred, not thread) - tanigonの日記

    前回は発音部を関数に切り出しました。で、呼び出すと音がなりますが、音が鳴り始めて消えるまで呼び出し元はブロックされています(同期)。 和音はもとより、これでは複数のパートで演奏するとか不可能です。非同期で動作させるために、マルチスレッドです。いや、multi-shredです。 ChucKでは Threadという表現のかわりに Shred という呼び方をするようです。ダジャレではないと思います。 まず 前回のソースをそのまま引用します。 fun void buzz( float hz ) { SinOsc s => dac; hz => s.freq; SawOsc env; env => blackhole; 0.0 => env.width; 0.8 => env.freq; 1::samp => now; while (true) { env.last() => s.gain; if

    ChucK入門 #7 - マルチしゅれっど(shred, not thread) - tanigonの日記
    onom
    onom 2009/06/24
    和音をならす
  • 音階と周波数の対応表

    音階と周波数の対応表(JavaScript) MIDI Tuning Standard の計算式に基づいて、MIDI ノート番号から周波数を計算します。 オクターブNo. 音名 MIDI note No. 周波数 f[Hz] 角周波数 ω[rad/s] = 2πf 1/ω[μs/rad] 10進16進

    onom
    onom 2009/06/24
    音程と周波数