2017年2月27日月曜日

レースの開始時刻通知

 毎週毎週、競馬をやっていると、無駄なことをやっているな、と思うことがある。馬券を買うことそのものだけじゃなくて——たとえば、前日にレースの開始時刻をiPhoneのアラームに登録しているのだけど、これって自動化できね?
 方法を探してみたのだけど、見当たらない。
 で、考えた。いっそのこと、競馬のサイトから開始時刻を取りこんで時間起動で五分前にiPhoneへメッセージ送信すれば、いいんじゃね? パソコンから。
 Emacsならrun-at-timeで所定の時刻に処理を動かすことは可能だ。
 メッセージ送信はtwittering-modeを使ってダイレクトメッセージを送ることができるだろう。競馬のサイトからレースの開始時刻を取りこむこと自体も、Emacsはhttpをしゃべれるからできるはずだ。だめならwgetを呼び出してもいい。
 だったらEIEIOでプログラミングしてみよう。
 というわけでこのところ、ずっとしこしことコードを書いていた。

 だいたい、できあがって。
 時間起動の部分のデバックは面倒だなぁ、と思っていたら案の定、エラーが起きた。競馬をやりながらコードを直していたら。変更をそのまま、反映できることに気づいてしまった。つまりこれは動いているプログラムをリアルタイムに修正できているってことじゃないか。
 すげー。
 これってすげー。

2017年2月17日金曜日

クロージャー

 閉包という言葉がある。
 クロージャーの日本語訳なんだけど、全然、ピンとこない。そもそも閉包ってなによ。さっぱりわからん。ずっと疑問だったのだけれど、ふと気づいた。
 もしかしたらclose + jarか?
 あっ!
 close(閉じる) + jar(ビン、壺)の直訳で閉包かよ!