2007-12-01から1ヶ月間の記事一覧
Javascriptで名前空間を汚染しないようにクロージャを使うイディオム、例えばA JavaScript Module Patternって、 SICP第3章のコレじゃん。 3.1.1 Local State Variables (define (make-account balance) (define (withdraw amount) (if (>= balance amount) …
クリスマスだけに、Wiiリモコンネタで、ろうそくで赤外線だして吹き消すとかやるといいかも。 数学ではこういうものも。講義, 講演等のビデオを公開するプロジェクト自分で15パズルとマインスイーパの動画を作ってみて、少しずつノウハウがたまってきた。 キ…
Youtube ニコニコ http://www.nicovideo.jp/watch/sm1781363 prototype.js 1.6.0 使用。Firefox,IE6で動作確認。 http://eva-lu-ator.net/~gemma/geocities/nikoniko/puzzle.html var puzzle; var zeropos; function swap_puzzle(x,flag) { var tmp = puzzle…
if文,while(for)ループ,変数,四則演算,三角関数,平方根,指数対数関数,日付,乱数...etc しかもこの言語は、手続き型言語じゃない!常にスクリプト全体がリピートしている。このスクリプト全体が、Windowsのイベントポーリングのループの内側で実行されている…
new Element('button',{onclick:"alert('hello world')"}) とやれば、 <button onclick="alert('hello world')"></button> になる。と思ったらダメだった。 Firefoxは大丈夫ですが、IEで動きません。 内部でsetAttributeが使われていて、setAttribute(onclick,"alert('hello world')")となるからです。 IEでは…
Wii RemoteをPCにつないで、Kaosspadみたいに使えないかということで、 Wii Remote -> Processing(ProMIDI) -> DTMソフト を検討したが、ProMIDIのMIDI出力でエラーがでてちょっとつまづいてる。 P5ならVJもできるし、Win,Mac,Linuxに対応するしフロントエン…
これは素晴らしい。 ただ、自分はAjaxでツリー型の掲示板を作ったことがないせいか、内容をよく理解できない。 現時点でどこが理解できないのかメモ。 1. これまでの例ではgetArticleの中で同期通信を利用していると暗黙に仮定して話を進めてきました 暗黙な…
Schemeのコルーチンでやってみました。 (use util.queue) (use util.stream) ;; coroutine (define process-queue (make-queue)) (define (coroutine thunk) (enqueue! process-queue thunk)) (define (start) ((dequeue! process-queue))) (define (pause) …