http://d.hatena.ne.jp/himazublog/20050905/1125934028。例の10段階はいまひとつピンと来なかったんですが、なぜかというと各段階が1項目しかなかったからのような気がしました。これはだいぶわかりやすいです。まあ自分の perl 知識がまったく古いまんまだということもあるでしょうが……。
どうでもいいけど「治療可能な状態であれば」って何のこっちゃと思ったけど、原文は hope it's a treatable condition なので「もっと扱いやすけりゃなあと思っている」くらいの感じではないかと思うんですがどうでしょう。意訳しすぎ?
というわけで他言語でもやってみようと思った。 Ruby ……はどうせ他の人がやるので、 OCaml でやってみようか。
初心者(novice)
- OCaml という名前を聞いたことがある
- OCaml を、雑音の乗ったモデムを通じて見たできの悪いC++のようだと思っている
- 束縛と代入の差があやふやである
- OCaml はもっと Java のようであるべきと思っている
- 関数型プログラミングについて聞いたことがあるが、それがもっと扱いやすければと思っている
- キーボード入力を読み込む方法がわからない
新参者(initiate)
- 末尾再帰について学び始めた。しかしちょっと気に入らない
- 型チェックを時間の無駄だと考えている
- OCaml はもっと SML のようであるべきだと思っている
- OCaml の List と Array にどういう差があるか理解しようとしている
- fun と function の違いをまだ理解していない
- 関数型言語といいつつ begin〜endが多くて困る。参照型が使いづらいような気がする
- OCaml の日本語メーリングリストの流量がぜんぜんないので悲しく思っている
- なぜ + と +. があるのか理解できず、文字列の連結が ^ なのも理解できない
利用者(user)
- OCaml を定理証明用の言語だと思っている
- ocamllex/ocamlyacc/ocamldebug などを使っている
- インストールされたパッケージを利用している。 ocamlfind も使っている
- オブジェクト指向と関数型の違いに思い悩むようになる
- 型安全と型推論のすばらしさに感動している。弱い静的型言語はもう使えない
- OCaml はまさに OCaml のようであるべきだと思っている
- caml-list を講読するようになる。なんとなくフランス語を勉強した方がいいような気がしてくる
- OCaml の構文はもうひとついけてないような気がしてくる
熟達者(expert)
- OCaml はもっと Haskell のようであるべきだと思っている
- オブジェクト指向と関数型プログラミングは対立する概念でないことに気付く
- 破壊的操作を必要悪とみなすようになる
- C言語で書いたプログラムとリンクできる
- camlp4 を学びはじめる
- 自分で OCaml のモジュールを書いたことがある。 OCAMLMakefile などを使うようになる
- caml-list も別にどうでもよくなる
- 多相バリアントを使って、バグメッセージのわけのわからなさに泣いている
ハッカー
- OCaml はやっぱり OCaml のようであるべきだと思っている
- 構文なんて camlp4 でいくらでも変えられるのでどうでも良くなる
- ストリームなどのデータ構造を駆使するようになる
- OCaml が関数型言語かどうかはあんまり気にならなくなる
- 便利なパッケージを開発し、公開するようになる
- GCaml や MetaCaml あたりを使っていて本家に取り入れられることを願っている
- 自分でプログラミング言語を開発して公開するようになる
導師(Guru)
- どんな OCaml の質問にも瞬時に答えられる
- ICFP のプログラミングコンテストにエントリーしていい成績を残す
- 仕事の言語として OCaml を使っている
魔術師(Wizard)
- INRIAに所属している
- 正規表現エンジンを書き直すことを考えている
途中でネタ切れ。というか想像できないねえ。オレは熟練者になりたてくらいかなあ……。