「$=」:文字列比較の大文字小文字が無視できるように挙動を変えられる取り込んじゃって消すに消せない。歴史的に間違った判断がいくつかあった。Perlの間違った判断を間違ったまま真似してしまった。次:Lispの影響が大きすぎた。BignumIntegerだけあればよかった。数の大きさがある程度を超えたら勝手に内部構造を変えればよかった。Symbolの区別はLispから。ProcとLambdaとか、似たようなものだけど違うものをできるだけ減らしたほうがいい「使い分け」を避ける他の言語に比べてクラスが少ない。「JavaとかC++とかコンテナクラスいくつあるんだよ」アーキテクチャの変化:特にマルチコアスレッドセーフ性。スレッド使ってもクラッシュしないようにしてあげてるのに「GILのせいでマルチコアできねー」って言われる。スレッドセーフじゃないって言われるのはCライブラリのせいだったりする。グローバル変数あるとスレッドセーフじゃない。何年先やらどっちかっていうとRubyとは違う言語の話をしよう高レベル抽象(DSL)普段は楽にできるけど難しいこと記述するときはCとかJavaとかGoとか関数型言語の影響。普通のプログラマが関数型に手がとどくようになってきたJavaの登場によってGCが一般的になった。GCは1960年代頃に発明されてたけど一部の言語以外では遅い使えない言われてた。プログラムを高速化するにはなんでもする(コンパイル・アセンブリを書く)→それよりも人間の生産性が重要だ(LL・スクリプト言語)→みんながインターネット使うようになると毎秒n万アクセスさばきたいシェルスクリプトの再評価。マルチコアだとパイプの前と後ろが別のコアに割り当てられる可能性が高い。プログラミング言語としてのシェルってすごく残念。stdoutプログラムの役割はパイプラインを組み立てる。Programming)見た目で言語の区別がつくと嬉しい。RubyとCの区別が一目でつくStreem:見るからに言語モデルが違うのでbraceでいいやデータはimmutable。変数がいきなり変わったりするとまずい動きをする。lockとかunlockとか入れるのやだ。静的型によって明示的チェックを行おうStreemでは?→デフォルト無視。画面の表示を更新するだけ。限られた範囲の光の制御ができるにすぎない。WebAudioで空気を振動させられる!ヘッドホン端子から電気信号を直接出せる!Webから物理世界に直接干渉する新しい手段を得た!WebAudioの考え方AudioNodeが基本単位。他のノードとつないでストリームが送られる基底のメソッドは基本これしかつかわない。Deprecated。AudioWorkerNodeになります。実行コンテキストがworkerになるだけだと思う。オーディオはすごいスピードで来るのでコールバックだと重くてブラウザが死ぬ。別のJavaScriptコンテキストになるのでメインのスレッドは固まることはない。navigator.getUserMedia()マイク入力・ビデオ入力を得られる。今の所はベンダプリフィクス(webkitとか)が必要。使用時にユーザーの許可が必要。(HTTPでは使えなくなる)。