標高+1m

Don't be rational.

Functional Programming

燃え尽きプログラマと動的開発について

徳島の山奥でフロントエンドJSのための動的開発環境を作っている。関連して、会社の技術ブログでチラッと動的開発について触れた。こっちではもう少し突っ込んで書いてみる。 この記事の後半ではBirdについて触れるけれど、この記事の目的はBirdの宣伝ではな…

VOC.js作った。 視覚と見た目に基づいた非同期コミュニケーションができるよ

昨日の記事で書いたVOC (Vision Oriented Communication) の実装を支援するライブラリを作った。 https://github.com/ympbyc/VOC READMEを英語で書いたのでここに日本語版を書いとく。 VOCのコンセプト オブジェクト指向やアクターはpushベースだけど、実世…

宇宙API Part2

Part 1からずいぶんと時間を置いてしまった。みんな覚えてるかな。前回はごたまぜだったけど、今日はとくに時空についてに絞って書いてみる。前半は2013年の12月にSmalltalk忘年会で話した事の焼き直しだけど、文章にしたことがなかったからもう一度やってみ…

宇宙API Part1

僕は今頭がhyperactiveになってるからとっておきの考えを書く。これは僕が暇なときにいつも考えてることで、これからも何回か書くことになると思う。 宇宙というソフトウェアのコードを、なるべく簡潔に記述するとしたらどんな風になるのか考えてみる。この…

kakahiakaとは

この前作ったkakahiaka.jsを、たまに簡単なWebViewのアプリとかで使ってみてた。小回りが利いていい感じ。 コンセプトはPastaと全く一緒で、関数ベースのMVCをやるとしたらどうなるかっていうのがテーマなんだけど、Pastaは今となってはAPIがださいのでもう…

クラスの使い時

TL;DR だいたいみんな知ってることだと思います。On Lispの「いつオブジェクトを使うのか」に言いたいことだいたい書いてあります。 背景 前にサーバーサイドMVCって記事で、クラスはせっかくモジュラーな関数をそうじゃなくするから基本的に悪だってちろっ…

Smalltalkビアバッシュで現実世界の物体のデジタル表現について発表してきました

あとでもうちょい詳しく書きます。

サーバーサイドMVC

まずクラスは使わない。なぜなら必要ないから。せっかくモジュラーな関数をわざわざそうじゃなくする意味がない。クラスはレアケースを除いて基本的には悪。モデルはRead系のAPIとWrite系のAPIで名前空間を分ける。

ミスを減らす

毎日書く普通のコードでなるべくミスを減らし、デバッグを簡単にして、より多くの時間を楽しい事(キーボード叩いたり汎用関数作ったりリファクタしたり)に費やしたくて最近実践していることをメモします。一つ前の燃えてるエントリの補足(不変指向の利点の説…

普通のアプリケーションのコードに関数定義と関数適用とリテラル以外を書いてはいけない

underscore-fix とか Pastaとかを仕事で使ってみていたら、前から薄々感じていた事に確信を持った。 ライブラリが十分に強力なら、プログラム中に関数定義、関数適用とリテラル以外は出てこない。そして逆に、forやifやswitchやnewが必要になったら、その関…

LLerのための関数指向入門

書きました。https://gist.github.com/ympbyc/5278140

なるべく副作用を隠してGUIを作りたい

モデル(State)を持ち回るMVC作りかけ.例があまりよくない https://gist.github.com/4345466Stateが変わるとUIが勝手にアップデートされるようにセットアップして、イベントに応じてStateを変更していく。 同じStateで呼ばれたときは必ず同じUIになるという…