いろいろ

Smileys Triangle がやっと追い付いた(63B)。Statistics も同じ。 echo が 1 バイト届かない。おかしいなあ。 Evil C Compiler は厳しい。Ruby や Perl は入力を適当に置換して eval してるんだと思う。こっちも Toploop モジュールで eval みたいなことはで…

post-morterm

post-mortem は面白いシステム。 OCaml の easy regexp を見ると決め打ちばかりでずるい(笑)。後で決め打ちじゃないのを投稿する予定。

http://d.hatena.ne.jp/KeisukeNakano/20070314/1173846972 なるほど、参考になります。でも 2 番目の apply_3 で f を呼ぶときにはオプショナル引数を省略しているから,apply_3 f は int 型. apply_3 で f を呼んでも部分適用かもしれないので,apply_3 f…

交通事故

家の前で事故があった。三時半ごろ、凄い音がして家が揺れたので外に出てみると、車の窓ガラスは粉々に散らばっていて電灯も倒れている。ドライバーは重体のようだ。 普段交通事故のニュースなんて聞き流しているが、いざ自分の身の回りに起こると大騒ぎして…

Hash

Ruby の Hash で 文字列をキーとして与えると、文字列をコピーし、コピーを更新不可に設定(freeze)してキーとして使用します。 プログラミング言語 Ruby リファレンスマニュアル という仕様にひたすらハマる。むー。

オプション引数

$ocaml Objective Caml version 3.09.3 # let f x y = failwith (x^y);; val f : string -> string -> 'a = # (fun g -> g "foo" "bar") f;; Exception: Failure "foobar". OK。 # let f ?(a=0) x y = x ^ y;; val f : ?a:int -> string -> string -> string…

るびま 18 号

Rubyist のための他言語探訪 【第 11 回】 C++ 静的型言語は型が適合しなければポリモルフィズムを発揮できませんから、ある機能を呼び出すためにはかならず共通のスーパークラスを持つ必要があります。 ううむ。これはちょっと。

infix to postfix

真面目にパースしたら 336B で絶望したので、あんまり真面目じゃないので参加。それでも 318B とさほど変わらず。もうちょっと縮むような気もするが…。 あと echo の 29B は謎すぎです。

m.ukai さんの技は気付きませんでした。例外で再帰を抜けるのは考えていたんですが…。 これを使ったら Hamming Numbers が 120B になりました。いやーゴルフは深い。

!

ksk さんが even lines の記録を縮めてるのを見て、えー!と思ったが、昨日書いたように演算子を使えばいいんですね。定義できるのは二項演算子だけだと思っていたので盲点でした。 というわけでネタバレ。 let rec(!)r=r();print_endline(r());!r;;!read_lin…

Tips

2 引数の関数を定義するとき普通は let f x y=... とするが let(%)x y=... と記号を使って二項演算子にすると、適用時にスペースや括弧が要らなくなって嬉しいことがある。

文字列中のバックスラッシュ

OCaml では print_endline "\(^_^)/" を実行すると「illegal backslash escape in string」という警告が出るがエラーにはならず、「\(^_^)/」と表示される。 一方 Ruby の puts "\(^_^)/" は警告は出ずに「(^_^)/」と表示される。しかし、 puts '\(^_^)/' は…

Card Sharp

Card Sharp で一位ゲット(237B)。それにしてもひどいコードだ。

あなごるに挑戦

なんか流行ってるみたいなのでやってみた。even lines はこれが限界っぽいなあ。他のも見てみたけど追い付ける気がしない…。

ラムダ計算インタプリタを作ってみた

JavaScriptで学ぶ・プログラマのためのラムダ計算 - 檜山正幸のキマイラ飼育記 (はてなBlog) を見てたらラムダ計算のインタプリタを作りたくなってしまった。JavaScript で適当に作成。 http://v.takeuchi.googlepages.com/lambda.html 例えば 問題集編 にあ…

おもしろおかしい

一度目に「くだらない揚げ足取りだなぁ」と思って読んだコメントでも、 「おもしろおかしい」モデがついてからもう一度見ると本当におもしろおかしく見えてしまうから不思議。 #世の発言のすべてに「おもしろおかしい」モデを付ければ、争いなんてなくなる…

「言葉狩り」?

柳沢さんへの批判を「言葉狩り」と言う人がいるが、俺の感覚ではこういう時に「言葉狩り」というのは違和感を感じるなあ。 「言葉狩り」というのは特定の用語(特に差別用語)の使用を禁じることであって、今回のケースでは「言葉尻を捕らえる」とか「揚げ足を…

オブジェクトと連想配列

JavaScript の配列と連想配列の違い - IT戦記 連想配列で for in を使う時でも Object.prototype.hoge = "Foo"; とかしてたらまずいような気がしますがどうでしょう。 じゃあどうしたらいいんだろう。ループ内で hasOwnProperty とかでチェック?オブジェクト…

JavaScript のオブジェクト

Ruby の object_id を JavaScript でも使えないかなと思って書いてみた。let が無いのがもどかしい。 Object.prototype.getObjectId = function(){ var object_id = 1; return function(){ if (this.hasOwnProperty('__object_id')){ return this.__object_i…

未納

給食費未納とNHK受信料未納。 問題の構造は似てるのに、給食費を払わない親のほうが圧倒的に自分勝手だと思ってしまう(そしてそう思っている人が多い)のはなぜだろう。

リスニング

センター試験のリスニング問題が mp3 で聞けるのか。素晴らしい。

センターリスニングを解いてみた

50 点中 46 点。これくらいのレベルなら満点取りたい。というか取ってしかるべきだと思う。 自分の英語力の無さを感じずにはおれない。

Camlp4 の改訂構文

Camlp4 の改訂構文がややこしい。後で見直しやすいようにThe Revised syntax を適当に訳しておく。翻訳ってレベルじゃないけど。 in の無い let は value を使う。 OCaml Revised let x = 23;; value x = 23; let x = 23 in x + 7;; let x = 23 in x + 7; シ…

はてなダイアリーキーワードのページと Wikipedia を楽に移動

そんな bookmarklet が欲しかったのだが、なかなか見付からない。 そこで簡単に作ってみたのだが、これもうまくいかない。文字コードの問題があって単純な方法では無理みたいだ。 しかし JavaScript で文字コード変換を行うライブラリなる素晴らしいものがあ…

ヘッドバンキング 頭を銀行に預けてどうする。 冷静なツッコミに噴いた

チーバくん

この名前を聞いてアクダイカーンが頭に浮かんだ。

語呂

セサミストリートとまなびストレートは名前が似てる。

Flash Player 9

Linux 用の Flash Player 9 が出てる。ベータ版から正式版になったか。早速使ってみる。 …うーむ Flash 使ってるページに行くと落ちるな。結局 7 に戻すことに。

シュール

デイリーポータルZのクラブ活動が地味に面白い。 特に気に入ってるのがすきま部。 このシュールなノリが実に好きだ。

Slashvertisement

Slashdot + advertisement ってこと? http://slashdot.org/article.pl?sid=02%2F04%2F01%2F1452256