2007-02-01から1ヶ月間の記事一覧

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…