読者です 読者をやめる 読者になる 読者になる

標高+1m

Make, Hack, Think

目でラジオを聴く

最近バイトに明け暮れて頭を使っていなかったので頭の体操をしてた。全部適当に考えただけで支離滅裂だけど、今度もう少しちゃんとまとめたい。あらかじめ断っておくと僕の物理の基礎はボロボロです。 あと、いつものごとくこの記事ではセクションをまたいだ…

宇宙API Part2

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

宇宙API Part1

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

ソフトウェアのバグがなくならないならユーザを全員プログラマにすればいい

ソフトウェアのバグについて。バグをなくすかユーザをプログラマ*1にするか。 テストについて テストを手で書いて、全ての手続きについてソフトウェアが実行時に取り得る全ての状態のもと*2で正しい結果を返すことを保証するには時間もお金もかかりすぎる。 …

kakahiakaとは

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

地理と天文学とドイツ語とプロマネの授業を取った

おととい春セメスタが始まって、今週は授業を取ったりやめたりで忙しい。 今回は 地理: Geography 2 -- Cultural Geography 天文学: Astronomy 5 -- Stars, Galaxies & the Universe ドイツ語: German 1 -- Elementary German - Level I プロマネ: CIS 136 -…

昨日考えてたこと

fpsは逆か

カタ

今日Object-Oriented Programming Versus Abstract Data Typesってけっこう昔の論文読んで、最近もやもやしてたことが解決した。 クラスを型みたいに使う言語が多いから、そんなもんなんだろうと思ってたけど、クラスは型じゃなくて型のコンストラクタなんだ…

CLOSオブジェクトのシリアライズ

これ便利。 (define-class <serializable> () ()) (define-method write-object [(x <serializable>) out] (let* ([class (class-of x)] [serializable-slots (filter (^s (get-keyword :init-keyword (cdr s) #f)) (class-slots class))] [slot-names (map car serializable-slots)] [in</serializable></serializable>…

クラスの使い時

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

こんな言語が欲しい

Carrotに静的型付けを実装していくうちに、あれを表現するには代数データ型が必要だ、あれにはシノニム、あれには型クラスなりインターフェースなりが必要、そうするとimplementsだかinstanceだかみたいなのも必要になるし、って結局どんどんHaskellに近づい…

sweet.jsでshift/reset: 限定継続を使ってコールバック地獄から抜け出す

Stop Writing JavaScript Compilers! Make Macros Insteadを読んで、sweet.jsを使ってみた。 解決したい事 JavaScriptでは非同期処理が多いので、継続渡しスタイルのコードばっかりになるのだけど、みんなこれをcallback hellとかpyramid of doomとか呼んで…

Carrotに別名を導入した

昨日の記事で、 例えば、真偽値はa -> a -> aな関数にして、型はBoolにしたいけど、 そうしちゃうと=cを使っても分岐の左右が同じ型かのチェックができなくなっちゃう ということを書いたんだけど、とりあえずこのBoolについての問題はシノニムを導入する事…

Carrotの変な型システムについて

年末年始は結局だらだらと本を読んで過ごしてて全然Carrotを触ってなかった。昨日今日と頑張ったらとりあえず動く型チェッカができて、わりかし欲しいものに近付いた気がする。 今はCarrotを、クロージャといくつかの基本型しかない、型なしλ計算計算機みた…

作詞しました

歌っていいですよ

初夢

宇宙が舞台 楽屋でなにかの発表の出番を待っている 隣に中学で同級生だった子に似た子がいたから声をかけてみるも別人だった サンダーバードっぽい舞台セット ブラックユーモア 犯罪すれすれの商売(宇宙株の再利用) 巨大でひしゃげた望遠鏡を火星に取りにく…

2013年まとめ

色々あった。 前回のあらすじ 2011年 ニュージーランドのLynfield Collegeを卒業してた。 2012年 日本の大学を数個受験して全部落ちてた。 PILOTに雇ってもらってた。 LittleSmallscript作ってSmalltalk勉強会に行ってた。 本編 1月 散歩してた。 Carrotの前…

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

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

記憶で視覚を拡張する

neko良い

clojure-android/lein-droid · GitHub ClojureでAndroidアプリが作れるって触れ込みのnekoを使ってみてる。lein-droidってleiningenプラグインを使えばandroidアプリの雛形を作ってくれて、あとはJavaのクラスなりnekoのユーティリティ関数なりを使ってアプ…

ディアスポラを買った

久しぶりにSFを買った。グレッグ・イーガンのディアスポラとアーサー・C・クラークの幼年期の終わり。幼年期の終わりは読まなきゃっていう義務感から買ったけど、ディアスポラの方はイーガン大好きだからとても楽しみ。 イーガンといえば、ディアスポラも似…

化ける!S式

(この記事はLisp Advent Calendar 13日目のためのエントリです。) こんにちは!冬休みに日本に帰るときに経由しているロサンゼルスの空港で書いています。アメリカ時間ではまだ13日ということで遅刻していないと言い張らせてください。 Lispアドベントカレ…

wasを使ったら負け

このセメスターに取った英語(English 1A)の授業で教授が口酸っぱく言うのがbeの変化とかhaveとかを使うなってことで、使うと減点される。代わりにStrong action verbを使えって言われてて、これを徹底したら勢いがある文章になって良い。

日本行きます

冬休みに日本に帰ることにして昨日チケットを取った。こっち来た時はお盆シーズンでしかも1週間前にチケットを取ったから片道で20万ちょいかかっちゃったけど今回は往復で11万強で取れた。 帰って一番したいのはCitibankに口座開けてお給料の振込先をそっち…

撫子からにんじんへ

トイ言語Nadekoの名前をCarrotに変えた。Schemeの一番最初のコンパイラの名前がRabbitだったらしいので割とお洒落な気がする。うさぎはにんじんが好きっていうのだけじゃなくて、 Rabbit Carrot で同じ文字数な上に文字がダブる位置まで一緒だから超お洒落だ…

A Tree That Burns Itself

オースラトリアの中央に広がる砂漠地帯には、点々と小さな林がある。こういう林に生えているのは乾燥に強い木なんだけど、そういう木の一つに、現地の言葉でカラジョンと呼ばれる一風変わった木がある。なんとこの木は自殺をするのだ。 カラジョンは500種類…

Meteorすごい

みなさんこんにちは。 最近僕のfeedlyにMeteorの記事がいくつか流れてきたので、気になって使ってみました。 MeteorはJavaScriptのフルスタックWebフレームワークです。 詳しい説明はこちらの連載がわかりやすかったです。 体感!JavaScriptで超速アプリケー…

アメリカに来たら頭が空っぽになった

にゃんぱす〜〜 ニュージーランドで高校行ってた時も、日本でプログラマやってたときも、わりかし葛藤を抱えてて、朝も夜も常になにかしら考えてたんだけど、こっちに来たとたん頭がすっからかんになったよ。 みんなも頭がぶっ壊れそうになったらお金溜めて1…

アプリ全体の状態を持つこと

ClojureScriptをちょこちょこ使っています。最近はもっぱらcore.asyncとかFRPとかでアプリケーションを作っていたんですが、PastaやWebFUIでやっていた、"アプリ全体の状態を更新する関数と、状態からUIを作る手続き"という仕組みが恋しくなっています。この…

Nadekoの文法いじりました。

実験用に去年書いた、遅延評価でカリー化されたS式の言語をちょこっといじりました。9月25日以前: (:= (fact n) (= n 0 1 (* n (fact (- n 1))))) (show (integers -map (-> (x) (fact x)) -take 5)) ;;これはλを見せるための例.ほんとはλで囲わなくても一緒…

ニッキ

8/16(金) 飛行機で、成田->LA->Sacramentoと飛んだ。成田-LA間はオーバーブッキングのおかげでビジネスクラスに格上げしてもらった。サクラメント市街をふらふらして一晩明かす。シートポストが緩んだコスタリカ出身の人に六角レンチを貸して友達になった。8…

オーケー、僕はアメリカに行きます

たった今最後の不確定要素が消え去ったので報告します。今週の金曜日からアメリカは西海岸のSFからちょびっと内陸に引っ込んだサクラメントという街に留学します。Communityというテレビシリーズを見てから気になっていた、コミュニティーカレッジという教育…

タイトル

夜だけ開いている図書館 動画のシークバーは実時間を進める

善行が強制される世界

善行がポイント制になっていて、そのポイントがマイナスになるとなにかしらの社会的不利益を被る世界。労働が財産を発生させ、財産がマイナスになる(借金)となにかしらの社会的不利益を被る世界。

サーバーサイドMVC

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

最近のPHPが割と良くてびっくりした

PHP

Disるのに忙しくて最近のPHP(5.4以降)のこと全然知りませんでした。 今日触る機会があったんですが見直しちゃいました。変なフレームワークさえ使わなければjsとかrubyよりまともに書ける気がする。びっくりした点、良い点 タイプヒント。 型が合わなければ…

メモ

Blocky.io Light Table Opa Quipper

遅延評価世界

プレイヤーが一人なら地球全体を常に走らせておく必要はない 地域毎に分割 それぞれの地域に固有のシードを付与 システムは時間(ステップ数)をもつ ある地域が知覚される度にシードから時間ステップまで各ステップの変化が比較的ゆるやかなセルオートマトン…

プログラマが人間である必要はないか

人工知能について一瞬考えてたんですよ。一瞬の思いつきを書きながら考えただけなので大した話ではないです。 東雲ブラックボックス もし、機械(以下、東雲なの)が、人間がやっていることを置き換えられるなら、端から見れば東雲なのが人間か機械かなんてわ…

instaparseが気に入った話とメッセージ送信の記法が関数型と意外と相容れる話

EBNFでパーサを書けるinstaparseがとても気に入りました。パーサコンビネータとかをよく使っていたので最初は、文字列でパーサ書くなんて楽しくないじゃん!て思ってましたが、実際に使ってみたら楽ちんすぎて虜になりました。EBNFどころかBNFもうろ覚えだっ…

積ん読管理

USBで動かす電子工作 a universe from nothing 0と1から意識は生まれるか 量子コンピュータとはなにか 鳥類学者無謀にも恐竜を語る 買った

時間の矢、P≠NP予想、関数適用、エントロピー、過去、現在、未来

The Illusion of Time - Youtubeに触発されて、全然知らないんだけど妄想してみた。化学反応とかも関数だよね。

本買った

A Universe from Nothing ー YouTube が面白かったからこの人の同名の本買ってみた。 Amazonにある

プログラミング言語が言語であるという事は

去年からちょくちょく、今年はほぼ毎出勤日、帰りに2駅分歩いています。2駅もあるといろいろ考えられるので良いです。40分くらいしょうもない事を考えてはここに書いたりtwitterに書いたりブログに書いたりしています。 さて、 言語が言語であるということ …

渋谷.clj楽しかった

初参加しました。特に懇親会が楽しかったです。定期的に催されているようなのでClojureに興味ある方はZusaarをウォチしとくと良いんじゃないでしょうか。 こんなこと喋らせて頂きました。WebFUI楽しいですよ。

OOP is a Dead-end

まとめた。 Leave the Sinking Ship

知らない事を知らないという事

英語で書かれた、録音された情報の方が量、質ともに日本語で書かれた情報に勝るのはいまのところどうしようもないんだから、英語ができないとしたらそれは滅茶苦茶大きなディスアドバンテージですよ。 僕は数学が得意ではないです。数学ができる人はそうでな…

目がチカチカするS式

急に2時間くらい暇になったからwebfui使ってS式をScratch風*1に描画するの書いてみました。わりかし面白いでしょ。あとでうまいことまとめてgithubにプッシュします。 [追記]githubに置きました。ympbyc/s-exploration github pagesはここhttp://ympbyc.gith…

言葉整理

僕が以下の言葉を使うときの意味を整理しておきます。日本語でCSの授業を受けた事とかはないので、標準的な語彙と差異があるかもしれません。 情報 これはそこまで意識して使っていないです。プログラム中での表現によらず、プログラムが扱う対象を指すとき…

本のストック尽きたとき用のメモ

通勤時間電車の中でとりあえず見えるものの絵をかいてると一瞬で着くからいい。