clojure

http.async.client のコールバックAPIを使って非同期 HTTP Request

http.async.client が v0.4.4 で event callback API が整備された ので、これを使って http.async.client で非同期 HTTP Request - hyoneの日記 のコードを書き直した。

Inverse FizzBuzz

部分列検索するだけか、簡単だぜひゃっほー、とか調子に乗ってたら、そもそも問題の意味からして完全に間違えてましたorz 修正版を追加。Inverse Fizzbuzz - just another scala quant を Clojure で書いてみた。 修正版

aleph を使って非同期 HTTP Request

前回、http.async.client を使って非同期 HTTP Request したコードを aleph を使って書いてみる。

http.async.client で非同期 HTTP Request

v0.4.4 で追加されたコールバックAPIを使ったコードはこちら http.async.client のコールバックAPIを使って非同期 HTTP Request - hyoneの日記http.async.client を使って、複数の HTTP Request を非同期で実行してみる。ドキュメントでは http.async.client…

slime repl (clojure) で paredit が [] や {} を括弧として取り扱ってくれるようにする

S式を移動したり、入力したりする上で paredit は欠かせないが、 slime repl (clojure) 上では、なぜか や {} を括弧として取り扱ってくれなくて ( clojure-mode では問題ないのに! )、 pareedit-forward-up などですっ飛ばされてしまいイライラの元になって…

画像まとめページをスクレイピングして画像を並列ダウンロード

ScalaでWebスクレイピングして画像収集する - tototoshiの日記 を写経したついでに Clojure でも書いてみた。せっかくなので、並列でダウンロードするように。http://satlog.blog119.fc2.com/blog-entry-2943.html から、jpgファイルのURLを抜き出して並列ダ…

Clojure 1.2.0 で再帰的呼び出しを dotrace で補足できない件

dotrace マクロを使うと、指定した関数の呼び出しの引数、返り値をトレースできる。 user> (use 'clojure.contrib.trace) nil user> (defn f [n] (* n n)) #'user/f user> (dotrace [f] (doseq [i [1 2 3]] (f i))) TRACE t7412: (f 1) TRACE t7412: => 1 TR…

datatype 型で Readable な文字列を得るには

defrecord した datatype 型を REPL で表示すると Readable な文字列が表示されるのに str 関数で文字列を得ようとすると、いやんな感じになってしまう。 user> (defrecord message [sender text]) user.message user> (def s (message. "Tom" "Hello")) #'u…

ニュートン・ラプソン法で平方根

clojure でエラトステネスのふるい