Erlang

はてブのダウンロードをErlangでやってみた

参考にさせていただいたところ はてなブックマークをダウンロードするスクリプト - 趣味的にっきRubyによるWSSE認証の実装 - 近況はてなフォトライフAtomAPIとは - はてなキーワードConverting Between struct:time and ISO8601 Format - ErlangCentral Wiki…

どう書くにまた投げた:コード中の文字の頻度分析

http://ja.doukaku.org/comment/6822/ 入出力のバッファリングが必要なサイズの処理に行き当たったのは、いい経験だった。 binary_to_listを実行すると、いきなりすごい量のheap領域を確保しようとしてメモリ不足で死んだりもした。そこで、40KBぐらいをバイ…

またどう書くに投稿してみた

http://ja.doukaku.org/comment/6809/ かなりこれも恥ずかしい。本に書いてある通りのアルゴリズムではない(というか、本なんか読んでない)ので、テストはしてみたけど、証明済みではない。

I'm bugging-in my code. lib_chan does now work as I thoght

here is my test-code, and results. I'm reading プログラミングErlang p. 333 この本についているコードって、結構更新されてるんでしょうかね。現在はR12B3が出たということで、確かにR11B5で動くコードそのままってわけにはいかないかも。 結局、あらか…

ETS instance erased when owner process died

Erlangの組み込みストレージ機能として、オンメモリのETSと、ディスク上にデータを格納するDETSというのがあるが、その機能のテストをコマンドラインから実行していてハマッタというのが↓の話。 This happens frequently while testing Erlang comand-line i…

適応型webサーバ

レスポンスが遅いか、忙しいモジュールは、インスタンスが増えるかキャッシュされる。 アクセスのツリー単位でキャッシュする。 データは要らないけどFYI、というリクエストの拡張。 <追記:2008/6/27> acceptする場合、リクエストだけを受け付けてmemcache…

ErlangのMLをsubscribeすべきか悩む

別の場所にも書いたけど、mixiのErlangコミュを覗いて、Erlangの最新リリース(R12B-3)でhttp://www.erlang.org/doc/man/re.html ってのが出てたことに気づく。要するにPerl互換の正規表現ライブラリ(PCRE)らしい。まだexperimental であり、will be subject …

パターンマッチング:illegal patternですか

うーん、++という演算子が、配列に対するものだという理解を深めていけば、理由はわかるようになるんだろうか。 14> Aho = fun("abc" ++ TT) -> TT end . #Fun 15> Aho("abcE"). "E" 16> Kue = fun("abc" ++ YY ++ "k") -> YY end. ** 1: illegal pattern **…

練習用コード。1つのプロセスで1件の予定を記憶する、すげーシンプルなリマインダ。

最初のバージョン(もちろん間違っている) -module(sched). -compile(export_all). start() -> spawn(fun() -> calender(self()) end). rpc(Pid, Request) -> Pid ! {self(), Request}, receive {Pid, Response} -> Response after 10000 -> response_wait_…

読んでいて補足したくなったところ

p.137の9.7モニタの項目 モニタを作る詳細はerlangのマニュアルページにある、としか書いてない。これは、http://www.erlang.org/doc/reference_manual/processes.html#10.8かな?以下、日本語にしてみるテスト。 linkに替わるものとしてmonitorがある。 プ…

"Programming Erlang" 1st path finished

Now, symbol-table has been made. Semantics is bypassed :-(

Erlang本、やっとp.125まできた

練習問題、30分だけ、やってみよう。 とかいって、嘘。ぜんぜんできなかった。statisticsの挙動が把握できてないし。(追記:Young risk taker.: [Erlang] 実行時間計測を読もう→俺)とりあえず(2)のほうのコードのメモ。 -module(bead). -compile(export_all…

やっぱりagent作ってmarketシミュレータのほうが面白いな

純粋に「面白い」ってだけだけど。こういう仕事はずっと昔にやられてるからね。 今、やって面白いのは、シミュレータの挙動に名前をつけることかもしれない。そこには、現実世界ではまだ示現してない現象もあるかもしれないから。 一方、より役に立つのは、…

で1プロセス1記事のWiki、とかどうか?何がうれしいか?

その1プロセスが、ダイナミックに他の記事と通信したり、indexerと通信したりして、semanticネットワークを形成したらおもしろいかな。

O-OのErlangを先のツリーに応用してみたい

ツリーのノードをObject指向Erlangで実装して、サーバでサービスするってのはどうだろう? いや、それははてブです、っていうか、それをブラウザのツールバーに乗っけてしまいたいわけだ。 そして、ツリーに見せる、というところをサーバサイドで、というか…

IPCの多次元的展開

Tim BrayのErlang記事についてのフォローなのだが、シンプルなプロセスを組み合わせてアプリケーションを構築する手法は、今の自分にとってあらためてアピールするものがある。 Unixに初めて触れたとき、そのpipeとコマンドの組み合わせの理念(しかし1次元的…

それが本来の使い方なのかもしれないが

ちょっと前に流行ったIPV4アドレス枯渇の話で、でもなー、gateway routerは32bitアドレスよりrouting table増えたらどーにもならねーんじゃとか考えていて、実際にどんな動きするんかなー、Erlangとかだと自然にgatedのsimulator/emulatorみたいなものが書け…

手持ちのマシンにインストールしてみた

FedoraCore5の古いPentium3マシンでメモリ256MBでmakeしたら30分以上かかった