2008-01-01から1年間の記事一覧

一般論として #2

不法滞在の状態で就活されても、困ります。

elisp を書く、というか書けない、というか書く体力がない

そういえばこの頃 Obj.magic を使ってないので well-typed Camler な私が emacs lisp に挑戦してみた。これは泣ける。

空売り禁止の弊害

Lehman破綻の代償?: http://wallstny.exblog.jp/8740729/ が参考になりました。 確かに空売り禁止してからのほうが落ちてるんですよね…

課外活動

TSAC(Tokyo Society for the Application of Currying, http://www.starling-software.com/en/tsac.html)というものがあるらしい。English speaking Haskellians のサロンなのかしらん。こういう課外活動をやってみるのもいろんな人に会えて面白いかも知れん…

Concurrency

Concurrent ML の ivar in OCaml, Concurrent Cell: http://d.hatena.ne.jp/osiire/20081011 ウチでも同じようなことをしております(が、クローズドなので)。なのでこれには注目していきたい!OCaml で multi thread なプログラムを書くと、初めのころは、大…

外資系金融でリストラの嵐

Job

というNHK9時のニュース。私も選択が違っていれば、こうなっていたと思うと怖い。仕事終わりにドンペリの一本二本とか、アホかと。

OCaml 3.11 リリース近し

3.11 のブランチ release311 が ocaml-cvs に出来ました。おそらくもうすぐリリースですね。3.11 の目玉 native判のモジュールの dynamic link private abbreviation type Printexc.print_backtrace 等、デバッグに役立ちそうな backtrace 系関数数種 ocamln…

(||) の罠

I間さんの舎弟になるらしい id:wpw が http://d.hatena.ne.jp/wpw/20081007/1223363005 なんていう落とし穴に引っかかっているのを鼻で笑っていたら、自分自身もやってしまった。注意 labeled argument 使ってます。適用に読み替えてね。 List.fold_left ~in…

caml-list より、イタい投稿

ごく適当に和訳。 (´・ω・`)オープンソースのcamlコードを C/C++, C#, VBScript, ASP, PHP とかに変換するツールを探してます。何で探してるかって言うと、 1. 新しい言語勉強する時間なんてねぇよ!2. C/C++, C#, Visual Basic と大学で使ってきたし、もうす…

ledit 終了(していた)のお知らせ

ledit というのは shell のコマンドラインで emacs 風のエディット機能を持たせる OCaml (と Camlp4) で書かれたラインエディタ。OCaml toplevel などと組み合わせて使うと良いと、OCaml 入門書に書かれていますね。自分は emacs の shell モードで生きてい…

ocamlc -pack について

OCamlでは同じパス名を持つモジュールを二つ以上リンクすると、名前が衝突しちゃうのでエラーになります。 名前の衝突とは、例えば、プログラム中に M というモジュールが二つあったとしたら、M.x と書いたときどっちを見りゃいいんじゃ、ということ。*1OCam…

OCamlSpotter が OCaml に取り込まれる方向へ

初めから狙っていたとはいえ、こういうの必要みたいだから、正式にコンパイラに取り込んでもいいよ、というお達しがあり、純粋に嬉しい。 もちろん、そのままって言うわけにはいかなくて、これから caml-list で議論していくわけだけれど、私が基本的に主張…

一般論として

内定先が潰れたり、いろいろ事情があるかと思いますが、会社を訪問する場合はまずアポ取ったほうが、お互いにとっていいと思います。

怖いもの見たさの「Practical OCaml」

レビューが笑える。同僚が買ってしまったので取り寄せて読むことにした。何やら聞くところによると: 8-tuple を使った例がある*1。多分、8次元超空間の物理か何かを計算する例に違いない。 コード例の tab が 10 chars らしい*2 英語を専攻したアメリカ人が…

感慨

とある投資銀行がやばいですね。かつて、この東京オフィスにコアチームを持つ素晴らしいHaskellプロジェクトがあって、転職も考えてコンタクトを取っていたのですが、、、半年程前に突然チームごと海外の別の銀行に移ってしまいました。当時は残念に思ったも…

Buzzword としての関数型言語

確かに、関数型言語で求人を掛ければ、(今現在は)応募者のレベルが高くなるとは思いますが、、、http://ameblo.jp/dfs-hr/entry-10137999720.html「おすすめポイント」がなんだかあまりに唐突で、かえって不自然なのは私の気のせいでしょうか。ほんとうに関…

OCamlSpotter beta1 リリース

caml-list に beta1 リリースを報告しました。(Download)

オブジェクトは OCaml の鬼子 #2

ちょと長いんで、コメントじゃなくて、トラックバックにします。

オブジェクトは OCaml の鬼子

前から言いたかったことでもあるので、釣られてみることにした。(長文)without objects!? より: 継承を使わないのは分かる。オブジェクト使わないってなんだよ!?多相レコード使いたい時にJSCの人々はどうやって書いてるんだ!?なんか、FP vs OOの構図でOO…

OCaml の type alias (type synonym) と non-parametric polymorphism

OCaml では普通のデータ型の定義 (type t = Foo | Bar や type t = { foo : int; bar : float }) とデータ型の別名宣言 (type alias もしくは type synonym: type int2 = int * int) の区別が希薄になっています。

GCaml 再び

GCamlと言うものを昔作っていたのですが、それから5年間、大学に身を置いていた(学生という訳ではない)のに、深く考え直す機会がありませんでした。 不思議なもので大学やめて会社員になったら、かえって考える余裕が生まれてきました。市場が閉まればボチボ…

OCamlSpotter alpha3: 変数の定義へと飛ぶコンパイラ拡張

alpha3 公開です。(Download) (Download p1) OCamlSpotter は OCaml の -annot オプションを拡張し、変数の定義場所を .spot ファイルに保存します。この .spot ファイルを利用すると、プログラム中の変数から、対応する定義コードを簡単に探し出すことがで…

OCamlSpotter alpha1 : 変数の定義へと飛ぶコンパイラ拡張

現時点では external な変数だと追跡できないとか、いろいろ問題もあるのだけれど、すでにかなり役にたつので、alpha1 として公開することにします。(Download)(新バージョン公開しました。詳しくは新しい日付の日記を)OCamlSpotter は OCaml の -annot オプ…

コンパイラ改造時の豆知識: core coreboot partialclean

コンパイラ自体を改造していると make world, make bootstrap にイライラする。いまや make world/bootstrap は、otherlibs, ocamldoc, camlp4, ocamlbuild など周辺ライブラリやアプリまでコンパイルするので、昔と比べてかなり実行に時間がかかるようにな…

OCaml プログラマーなら、Ocaml ではなく、OCaml と書いてほしい

"Ocaml" と書く人が多いですが、OCaml、もしくは O'Caml と書いてくださると、INRIAの連中は嬉しいはずだ。OCaml は Caml 言語にオブジェクトを足したもので、"OCaml" = "O(bject)" ^ "Caml" という命名。また、アイルランド人名で、子孫を意味する O' (wiki…

strstr、もしくは文字列内の文字列を探す関数

OCaml の標準ライブラリにはなぜ文字列内の文字列を探す関数がないのか? C にだって、char * strstr(const char *haystack, const char *needle) という関数があって、haystack(藁の山)から needle(針)を探し出してくれるのに、、、おかしいよ、変だよ。お…

ライブラリの質について

id:ytqwerty さんの OCamlのライブラリのビルドが通らない10の理由 を読んだ。どうやらWindowsで開発されているようなので、お気の毒としか言いようがない理由が多いが、、、OCaml のライブラリは昔から基本的に「この機能ないじゃん、じゃあ自分で書くか」…

外国語は細かい事言っても始まらない

こんどこそOCamlと関係ない話。どこぞのblogで、これからはToDoじゃなくてToCanだ、とか書いていた。いいこと書いてるなと思ったら、内容のことはほっといて、誰かがご丁寧に文法の間違いを指摘していた。ToCanでいいじゃないですか。ToDoという文脈の上でな…

Timezone と Uniqlock

ちょっと酔っている。仕事で扱っているOCamlコードのタイムゾーンの扱いがヌルい。誰か地球が平坦だと思っている奴がいるらしい。残念ながらOCamlは使ったからといって誰でもよいコードが書ける言語ではない。逆にそんな言語があっても困ってしまうが。ある…

デバッガは必要か

極論だが。OCamlではデバッガは特に必要ない。以下理由: Cでデバッガが必要になるようなメモリ回りのバグはそもそも発生しない。これまず重要。 ocamldebugは強力だが、実際使わないでも仕事が出来る。故Cristalでも使ってるのほとんど見たことない。 Uncau…