タグ

ブックマーク / mametter.hatenablog.com (2)

  • INTERCAL を調べてみた - まめめも

    INTERCAL は 1972 年に登場した難解言語 (esoteric language) の始祖とされる言語です。brainfuck や befunge のような難解言語に興味のある人なら、一度は聞いたことがあると思います。 しかし、INTERCAL について、「元祖難解言語であること」と Hello, world! 以上の詳しいことをわかりやすく説明する資料は見当たりません。マニュアルはなぜかやたら読みにくいので敬遠していたんですが、一念発起して、多少読み書きできる程度まで勉強してみました。元祖の名に恥じない、なかなか頭の悪い言語でした。 変数と定数 16 ビット整数、32 ビット整数、16 ビット整数の配列、32 ビット整数の配列、の 4 種類の型がある。それぞれ . (spot) 、: (twospot) 、, (tail) 、; (hybrid) の記号が与えられている (括弧

    INTERCAL を調べてみた - まめめも
  • /dev/dsp で音声を鳴らす方法 - まめめも

    超絶技巧 Ruby プログラミングの質疑で「どうやって音を鳴らしているのか」という質問があったので、自分のための記録を兼ねて簡単に紹介。 といっても Linux Sound programming with OSS API にある通り。Ruby で書くとこんな感じ。 # デフォルトでは 8bit 8000 Hz SampleSize = 256 SamplingRate = 8000 # ... 0:ラ 1:ラ# 2:シ 3:ド 4:ド# 5:レ 6:レ# 7:ミ 8:ファ 9:ファ# 10:ソ 11:ソ# 12:ラ ... tone = 3 # ボリューム: 0 〜 SampleSize/2 まで volume = 60 # 再生する長さ: 秒 length = 2 # 周波数: 基準のラは 440Hz 、1 オクターブ上がると倍になる freq = 440 * 2**(tone / 1

    /dev/dsp で音声を鳴らす方法 - まめめも
    grafi
    grafi 2011/01/24
  • 1