トップ 最新 追記

じじぃの日記、ツッコミ可

Twitter: @jijixi_org
Xbox Live: jijixi

初心者が書いた OCaml 入門
Spotlight tips サイト内リンク集
1970|01|02|
2003|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|11|
2011|05|
2012|01|

2004-07-01 ボーナスって何?うまいの? [長年日記]

% Re: 俺さんとこのは全然そげな動きしてねぇ

つーか、それは適度に再起動してるせいで気付かないだけでわ?そんな見る見るうちにもりもりと増えていく…ってわけじゃないから。わしの場合はたしか 2 ヶ月かそこらは再起動せずに(スリープだけで)過ごしてた状態だったんだが。

このスワップの問題(問題と呼ぶべきか否かは微妙だけど)自体は、どっかの雑誌だったか WEB サイトだったかでも見掛けたことあるから、わしんとこだけのことじゃないはずだ。

で、前にも書いたが、わしが文句を言いたいのはそこのところじゃなくて、disk full の状態で再起動したら(リセットボタンを押したわけじゃなくて、ちゃんと通常の手順で再起動したのに)、なぜか次から起動しなくなった…ってところなわけですよ。

今、冷静に当時の状況を考えると……

1. (ソフトウェアアップデートが) 10.3.4 (だったかなあ) update をダウンロードしてインストールを開始(この時点では必要容量がかろうじて残っていた)。

2. インストール作業でスワップが発生し、いつものように(必要もないくせに)スワップファイル増量。

3. そしたらインストールに必要な容量に足りなくなった。

4. 中途半端にアップデートされた状態で、インストーラがディスクフルエラーでストップ。

5. 結果、システムが変な状態のまま再起動され、うまく起動できない。

という感じなのかなと。・・・なんかすごくしっくりくる推論になってしまったが、ほんとにこうだったとすると、すんげぇムカツクんですけど(苦笑

% Re: 飯行くぞ

もうわしはボーナスなんて言葉は忘れてしまいました(笑

つーか、これっておごってくれるってこってすね?しゃーないなあ、おごられてあげようじゃないですか(偉そう)。てなわけで、昼すぎにでも電話してくらさい。もしくはその前にわしが起きれば、こっちからかけましょう。


2004-07-08 電話嫌い [長年日記]

% オチャメカンいまだ届かず

先週の土曜日に発送しましたメールが来てたのに…

運送会社の WEB ページで検索すると、『最寄りの営業所にお尋ねください』とかって言われるんで、そこまでは届いてるんだと思うんだが、とりあえず、ただでさえ電話嫌いな上に、(苦情に近い)問い合わせの電話なんぞしたくもないので、いまだに放置してます。次の土曜日になっても届かなかったら、さすがに電話するしかねえかなあ。

…ところで、今見てみたらいつの間にかセラニのページがリニューアルされてますな。それも blog に……


2004-07-10 だら〜っと [長年日記]

% やっとオチャメカン届く

つーか結局運送会社に電話したら、速攻で持ってきやがったぞ。なんだかなあ、まったく・・・まあ、、迅速な対応だったってことで許そう。いちいち怒ってたら疲れてかなわん。

とりあえず『修羅場を見ると血が騒ぐの』でのけぞりつつ、『最後ぐらい本当のことを言って欲しかったな』(ここまでは普通に聴いてた)に続く『君の頭がいちごでできてるってこと』で思わず右後方 30°に存在する仮想相方(中身は空気…外側も空気)に対して、溜めツッコミ(溜め時間 3 秒)を炸裂させてしまいました。どんなやねん!!

・・・それはともかく、とうとう今回セラニの名前では初めてトモコサンが歌ってますな。つーかむしろ今までやってなかったのが不思議なくらいなんだが、そもそもトモコサンのボーカルはセラニ向きですからして、まったく違和感ありません。ちなみにトモコサンの過去の歌を聴きたい向きは、クリスマスナイツとかバーニングレンジャーとかを狙ってみてください。残念ながらどっちもセガコンには入ってない気がしますが。どしたらいんでしょね、わしは適当に段ボールを漁るとセガサターンソフトがぼこぼこ出てくるんでオッケーなんですが(笑

% PV

あーそうそう、おまけの DVD も見ましたが・・・ひたすらシュール。つーかいちごちゃんやミンミはシュールを通り越して、ちょっと狂的とでも言うか…微妙に恐かったっす(苦笑

ミニドラマの方は、生け垣を飛び越えるシーンの演出がアホっぽくて素敵でした(変にピンポイントな感想だな)。


2004-07-13 オチャメカン日記 [長年日記]

% 『どこにでもいる女の子』は修羅場を見て血が騒いだりしない…

…と思うのは、わしの幻想なんでしょうか(笑

今回は、曲調のせいなのか全体的に manamoon の頃の雰囲気に近い気がしますね。トモコサンが歌ってるのもでかいかもしれんが。

それにしても『さよならいちごちゃん』のイントロがたまりませんね。ゲームの音を表す擬音が『ピコピコ』だった時代を生きてきた人間にとってはノスタルジックすぎます。って言うか例の映像を見てしまったせいで、この曲を聴くとアノ微妙に怖い人形が脳裏を駆け巡るんですが、なんとかしてください(苦笑

イントロと言えば、『Gの世界』のイントロはなんだがダライアスを思い出しませんか。わしは思い出します。あと、『クレームブリュレ』を聴くとなぜか『佐野元春』を無性に思い出すのが謎です。なんか端々のフレーズが元春節を想起させるようなんだが、とりあえず三枚しか持ってない上にそのうち一枚が行方不明なアルバムを聴いてみたが、何が通じてるのかよくわかりませんでした。たぶん特定の曲に似ているとかじゃなくて、いろんな曲の一部分がちょっとずつ似てるんだろうと思うが…うーん。特定のフレーズが何かの曲に似てると感じることはよくあるんだが、全体的に似てると思うのは滅多にないので、よっぽど似てるんだと思ったんだけど、はっきりこれだと判る要因が無いんだよなぁ。謎……


2004-07-20 腰が痛くてだらけてますが… [長年日記]

% OCaml 3.08.0 リリース記念

某所でも言われてましたが、『.0』って一体何なんでしょう(苦笑

まあ、それはともかく、ちょっと仕事が谷間なんで、ほにゃっと思い立って FreeBSD で動作確認しただけで放ってある OCaml の WideStudio 用モジュールを Windows で動くようにしてみようとがんばってみました。・・・挫折しました(爆

つーか DLL ってものの仕組みがようわかりまへん。DLL が作れないと話にならんのだが(つーかそれさえできれば、とりあえず終わりなんだが)、なんだかうまく作れませんです、はい。仕方ないので、ぼちぼち調べながらゆっくりやります。しくしく。


2004-07-21 (たぶん)違った意味で DLL 地獄 [長年日記]

% dll なんてキライだい

つーかね、コンパイルのときに -fPIC オプション付けると『cc1plus: warning: -fPIC ignored for target (all code is position independent)』なんて警告が出るわけですよ。これって要するに『このターゲット(mingw32 のことと思われ)の場合、-fPIC は無視しましたよ。だってどっちみち全部のコードが位置独立だからねん』ってことでしょ?なのに、どうして extern 宣言されてる識別子を使ってても undefined reference になりますか?それはほんとに position independent なんですかい?

んで、しかたなくその参照解決のためにリンク時に ocamlrun.dll も一緒に指定してやると一応は dll ができあがるんだが、ocaml.exe はこの dll をうまく読み込めない罠(メモリアロケーションがどうのこうのとのたまう)。つーか UN*X 系の ocaml にも libcamlrun.a なんてのがあるけど、これは『C 側から ocaml のインタプリタを動かす』ときにリンクするものだと思うのよね。だから ocamlrun.dll もそうなんじゃないかと思ったんだが……

…とここまで書いてちょっと思い付いて、デフォでインストールされるライブラリの dll(dllunix.dll とか) を見てみたら、ocamlrun.dll をリンクしてるみたいだから、とりあえずそのこと自体は正しいのか……じゃあ、どうしてうまく読み込んでくれんのだ。

はあ……ソース見て、dllunix.dll 辺りをどうやって作ってるか見た方が早いかなあ。


2004-07-22 ぐはっ [長年日記]

% 続 DLL なんかキライ・ストールだい(謎

OCaml のソース(というか Makefile)を見た。吐血(精神的に)。どうやら DLL ファイルと対になってるインポートライブラリ(?)とかいうものがある様子。名前は ocamlrun.dll に対して ocamlrun.a らしい。で、リンクするのはこっちじゃないといかん…ようだ?(つーか WideStudio でもそうなってるみたいだが)

.a って拡張子が付いてたら、てっきり静的リンクに使うものだと思うじゃないか、ブツブツ。

で、探してみたら $OCAMLLIB にあるのを発見。で、これをリンクするようにして、あとは Makefile を見ながらマネマネ処理をしてみたら、とりあえず読み込めるようにはなった。・・・が、今度は C++ 側の関数が呼べなくてまったく意味無し。憤死(精神的に)。

難しいわ…DLL。

% うっかりミス

やっと動いた〜ん。C++ 側の関数が呼べない問題は、ちょっとした凡ミスがあっただけで、あの時点でほぼ使えるようになっていた模様。無駄な時間かけちまいました。とほほ。つーか、一つダメだと全部ダメだなんて、いけずぅ。

あとは Mingw 用だと OcamlMakefile が事実上役に立たんので(ocamlc -where の出力を使うせいでへなへな)、使うのやめて自前で書き直したりとか、試行錯誤のせいでぐちゃぐちゃの Makefile を直したりとかせねばならんが、一応やっとこ次のステップに移る段階にまでこぎつけましたわい。なんか無駄な疲れかたしたけど・・・

% 久々に OCaml

てなわけで、やっとこ Windows でも以前の状態にまでは追い付いたんで、今度は OCaml 側でのテストをするべくちょろちょろと(意味の無い)コードを書いてみてます。でもやっぱおもろいわ、この言語。特に型推論なんて、たまらんものがあるよね。まあ OCaml 独自ってわけでもなくて Haskell なんかにもあるみたいだけど、それはともかく、

1. 静的な型付け
2. 暗黙のキャストをしない
3. 演算子は型によって厳密に区分されている

% な〜んて言われると、やたらと型指定子をごちゃごちゃ書かなくちゃならないように思うわけだけど、これが型推論のおかげで実際にはほとんど書く必要が無い。例えば x という引数を取る f[12] という関数を定義するとすると…

let f1 x = x * x;;
let f2 x = x *. x;;
(* ちなみにこれは、下記のようなののシンタックスシュガーだそうな *)
let f1 = function x -> x * x;;
let f2 = function x -> x *. x;;
(* こっちの方が "関数" だとはっきりわかりやすい気はする *)

% こんな感じ。ここで f1 や f2 ってのはいわゆる "変数" で、その変数に "関数へのポインタ" が入ってるようなイメージをするとわかりやすいかも。下二段の例なんて、もろにそういう感じっしょ?

で、それはいいとして、各定義を見てくださいな。ここで f1 に入ってるものの型は『int -> int = <fun>』(要するに int を引数として、int を返す関数ですよってこと)で、f2 に入ってるものの型は『float -> float = <fun>』(同じく float を取って float を返す関数ってこと)なんだけど、引数の型も返値(最後に評価された式の値)の型も明示されてないよね。なのになんでそんなにはっきり型が決まってしまうかというと、使っている演算子から型が推論されているからなんですな。

『*』は int の値同士をかけるもので、『*.』は float 同士をかけるものなんで、『*』を使って演算してるってことは(型は静的で暗黙のキャストもしないんだから) int に決まってるし、『*.』を使って演算してるってことは float に決まってるでしょう……ってことなんですわい。

ちなみに、どうしても心配なら下記のように書くこともできます(それこそナンセンスだけど)。

let f1 x : int = x * x;;
       ^^^^^^^
       ↑ここで仮引数 x の型を指定している

% わしは C 言語の『暗黙のキャスト』ってやつが大っ嫌いで(バグの元でしかないだろ、あんなの)、Ruby やその他のスクリプト言語の『動的な型付け』ってのが不安でたまらない(で、ほんとにちゃんと意図した型の値が入ってるのかわからないから、その判定用のコードをもりもりと追加してしまう)人なので、そういう意味ではこれほど自分に向いてる言語は無いんじゃないかとか思ったりもする。

とは言え……WideStudio なんかの場合は char* を要求する関数に、平気で WSCstring をキャスト演算子無しで渡したりしてるんですが(苦笑)。つーか WideStudio 使うなら文字列に char* とか使っちゃいけません(極論だけど、ある意味正しいと思います)。

あと、Perl や Python だと、ちとウザいことになるんだけど、とりあえず Ruby の場合なら、型の判定云々は『文字列が欲しいときは、とにかく to_s』とかって方針でなんとかなる場合が多い(特に使い捨てのコードなんか)んで、ことさら面倒に思うことは無かったりするわけでして。そこら辺は慣れだよね。そもそも動的型付けの言語でいちいち型を気にするのがナンセンスで、そういう言語ってのはつまるところ『手っ取り早さ』が重視されてるんで、そーゆー方向に解決するための方法がちゃんと用意されてます。Ruby で言えば、(ほぼ)全てのクラスで to_s, to_i, to_f, to_a が使えるとか、そーゆーの。型が正しいか確かめる…なんてことはしないで、とにかく必要な型に変換するってアプローチだね。

それと、いつぞや VB.NET のネタで書いたことある気がするけど、例外を使うと手っ取り早いエラー処理ができますね。複雑なプログラムで例外を使いすぎると、goto スパゲッティのごとき破滅が待ってるっぽいけど、使い捨ての単純なやつでは気にせずがんがん使って良いと思うね。


2004-07-23 おきゃむる日記 [長年日記]

% [OCaml] 移動しました

新しい場所はこちら

本日のツッコミ(全1件) [ツッコミを入れる]

% Zapper [まずは最初に「長げぇよ馬鹿!w」とツッコんでおくか メンテもすんなら別ページにしやがりなさい えびせんやるから]


2004-07-24 暑い [長年日記]

% 当面の間…

OCaml 入門のページとして 2004 / 07 / 23 については思い付くまま気の向くままに追加なり修正なりしていきますんで、興味のある人(いるんか?そんなん)は、たまにチェックしてみてくださいな。ほんとはある程度まとめてきれいにして、別のページにすりゃ良いんだろうけどね。ま、そこまでの気力はないんで。

% ぷよぷよフィーバー

結局、今日発売の GBA 版を買ったのでした。やっぱ、こういうちょこちょことやるようなゲームは、携帯機の方があってる。他機種版は店頭デモくらいしか見たことないんだが、かなり再現度は高いような気はします。『ぷよぷよ』じゃなくて『ぷよんぷよん』に改名したほうが良いんじゃ?って感じのぷよんぷよん感は健在です。ちなみに Vodafone 版ではそこら辺がイマイチでちとさみしかったりした。ともあれ、ちまちまやり続けそうな予感。

あと、なぜかおまけでソニックの絵が入ったヨーヨーがついてきたんで、懐かしさを感じつつやってみたら……ひも長すぎ!!180cm 以上あるわしが肩の高さから落としても、ひもが伸びきる前に地面に付きます。ひもの長さを一生懸命調節してまでやるようなもんでもないんで速攻でやめました。とりあえず飾っときます。

% コンビニに寄ったら…

コアな方面で話題の『魔少年ビーティー対バオー来訪者』があったんで保護。まあ、なんつーか、単にビーティーとバオーがいっぺんに読めますってだけなんだけどもな(苦笑

% 今月のおお振り

悪いやつがいない世界なんだなあと思いました。もちろん様々な人間関係の中で、敵味方に分かれることはたくさんあるけど、本当の意味での悪意が存在しない。好きだなあ、こういうの。できればこのままのポリシーで行ってもらいたいものだ。

現実の世界には、まあなんつーかいろいろとあるでしょ、こう…いや〜な部分ってのが。個人的にはそういう部分をリアルに描こう…とかいう作品にはあんまり心惹かれないわけで、要するになんでフィクションの世界でまでいや〜なものを見せられなきゃいかんのかと、もっと夢を見させてくれよと、そう思う人なんですのよアタクシは。

ともあれ、今月はかなり深く読ませる内容でしたな。かなり好きな部類です。作り手側としてのツボをくすぐられた気がします。

% けろけろ?

いや、別にどーでも良いっちゃぁどーでも良いんだが、タイトル画面で主人公とかが「ぷよぷよっフィーバー」って叫ぶんだが、そんな中でたまに「けろけろっけ〜ろ〜」(同じ節回しで)ってのがあるのがちょっとシュール。当然ツッコみました(笑

% アバンギャルド〜

おしゃれコウベのセリフおもしろすぎ。

% やっとクリア…

しました、グラ5。レベルを VERY EASY にして、初期機数を 5 にして、EXTEND を一番よく増えるようにして、クレジット数が 5 に増えた(最初は 3 でプレイ時間で増えるっぽい)状態で、やっとこさっとこ…って感じだけど(苦笑

クリアすると噂のエディットモードが使えるようになります。各ゲージに割り当てる武器を選べるようになるんだが、スプレッドボムとかフォトントーピドーとか、懐かしげなミサイルなんかもあってステキ。しかしレーザーの欄にある火炎放射器は一体何なんだ?見たことないけど、グラ4(実はやったことない)にあったとか?でも使いづらいぞこれ。短いから…威力もそれほど強いようには見えない。変なの……


2004-07-26 暑さも一段落らしい [長年日記]

% Re: 長げぇ

馬鹿とわヒドイにゃあ。ちゅうか、こーゆー中身の無いツッコミは、別の日に付けてほしかったぞ(苦笑

あと、『メンテもするから』このページなんすよ。追加も修正も間違いなくここでやった方が楽だ。まあ、Azito に何か Wiki 系のツール入れてくれて、お膳立てもしてくれるならそこでやってもいいけど。あ、自分でやれってのはとりあえず却下の方向で。だってめんどいから(爆

いやなら読まなきゃ良いのに、文句良いながらも読んだんなら、せっかくだから使ってみましょうね。ダウンロードはこちらから。あと、OCaml の何が一番困るかって、日本人的には素の状態だと実質 ASCII な文字列しか扱えないのが困るんだけど、それに関しては Camomile(カモミール?)っつーライブラリを使うとそれなりに何とかなりそう(まだ使ったことないけど)。

あ、それと、あのページに関しては、中身のあるツッコミが入った場合、通常と違ってわしもツッコミで返します。一覧できる情報として残すために。もしあとで別ページにするにしても、その方が作業が楽そうだしね。そんなとこで。

% 沈静作用があります(謎

思い立ったら吉日でさっそく portinstall devel/ocaml-camomile してみる。…が途中で失敗する。該当する辺りのソースをにょろにょろ眺めてみるも、さっぱりわけがわからんので、オフィシャルサイトで ChangeLog を見ていると、0.5.3 で『Able to compile under OCaml 3.08』などと書いてあるワナ。3.08 ではコンパイルできませんか!!(ports のバージョンは 0.4.2)

あー……どうすっかなぁ。別に手で入れても良いんだけど、少し待ってれば ports の方が対応してくれるんじゃないかな〜とかって希望的観測もあるんだよねぇ。つーか、PORTVERSION を 0.5.3 に書き換えるだけで解決って気がしないでもないんだが……

% Re: 上京

冗談みたいな暑さ(なんだ? 40 度って)を思うさま堪能してきてくれたまい。

わしはなんだか忙しいです。つか、自分でやること増やしてるんだけど(苦笑)。iMac は来週にでもぼちぼち。今週は校正しなきゃなきゃなのでねぇ。やっと先が見えてきた感あり。

本日のツッコミ(全1件) [ツッコミを入れる]

% Zapper [ミーが使ってない環境に中身のあるツッコミも何も無いヨ(ピーターソン風 この糞熱いのに上京せにゃならんくて、やる気減退..]


2004-07-28 ね、ねむ、ねむいよぅ・・・ [長年日記]

% OCaml で WideStudio

暇をみながらちまちまやってるんですが…今日はやっと ocamlopt を使ったネイティブバイナリで WideStudio を動かすのに成功しましたよ@窓二千。他の OS でも大丈夫か試さないといかんが、今までうまくいってたのはバイトコードの方だけだったんで、C の次に速いと言われるバイナリ版が使えるようになるのは素直に嬉しいでしょう。ともあれ……分割コンパイルで現状の WideStudio のスタイルに合わせるのも、だいたいいけそうな感じだし、いよいよ筋道が見えてきた感触。

あとは Makefile その他を整理して、wsbuilder で扱えるように組み込んだら完成……なんだけど、その前にサンプルアプリでも書こうかなあ。C++ のコード書くのがタルい……暑いし(関係ない)。

% OCaml 日記日記

基本型の項にいくつか追記しましたよ。match 文については知識の整理も何も、全然さっぱりわからなかったんで、書くに書けないでいたんだが、今回の件のおかげで少し意味がわかってきました。ふむ、次の新項目は match 文についてかな…


2004-07-29 陰口はみっともないとは思うんですが… [長年日記]

% 最近の FreeBSD-users-jp は…

随分紳士的になったもんですな。てゆーか、どうせ聞きやしないんだから、もう放置してあげてよ。正直、本気でフィルタリングではじこうかと思うほどウザいんですが。でもスレッドが切れるのがなんとなく嫌で、消すに消せなかったりするし、ある意味 SPAM よりタチがよろしくない。奥山さんとか、しらいさんとかの一刀両断が通用しない相手には放置しかないでしょ?

…わしの普段使ってるメーラは mutt なんですが、フィルタを漏れてきた SPAM を見付けると、ほぼ自動的に d (今見てるメールを削除するキー)を押すクセがついてます。やつのメールもわしビジョンで言うと SPAM に等しいので、無意識に d を押しちゃうことがあるんですが、その後断腸の思いで u を押して削除を取り消す気弱なわしを誰か叱って。つーか、別のメーリングリストの(字が違うけど)同じ名前の人のメールまで消しそうになっちゃうのは、ちょっと問題ありのような気がしないでもないわけで、あと三回くらい間違って削除しそうになったら、いよいよフィルタかけます。ジャンクフォルダ直行。ざまあみろ(むなしい)

ちなみに、わしはあの手の人物とは関わりあいたくないので、絶対にちょっかいかけたりはしません。こーやって、てめえのページに引きこもって陰口を叩くのみであります(それも人としてどうよ?)


2004-07-30 めんどくさがりな自分に喝。つーか暑いです。 [長年日記]

% tDiary

…の 2.0 が stable になったんだよなぁ。ここもアップグレードした方が良いかしら。でも、データ形式を変換しなきゃないって噂なんで、めんどくさがりスキルが発動してやる気がでないのよね(ダメ)

つーか、そもそも今時 1.4 系を使って運用してる日記なんて見たことないんだが(苦笑)、シェルアカウントが使えないから何かあっても責任取れないんで、枯れたバージョンを使うしかないのですわ。

% るびぃちゃん(iMac)復活へ

今までは 6GB のパーテーションにシステム、10GB にいろんなデータを入れてたんだが、幸いもう一つの 3GB の方に 10.2.8 が生きてたりするので、とにかく 6GB を一旦フォーマットして、10GB に入ってるものを少し整理してそっちに突っ込み、10GB に 10.3 Panther を新規インストールしましたよ。

とりあえず、10.3.4 統合アップデータはキープしてあったんで、速攻でそれをインストール後、今は絶賛残りのアップデート中です。あと、ドットファイル群と、~/Library 以下のファイルは書き戻したけど、アプリケーションの類とかは空っぽの状態なんで、これからちまちま復旧してかんといけませんな。どうせなら /Applications もバックアップしときゃ良かったか……

% OCaml でサンプルアプリ作成中

つーか、他の言語からの移植だけどね。でも単純な for ループで書かれてるところを(for で書けば 5 分で終わりそうなのに)数時間かけて頭をひねりひねり末尾再帰で書き直した酔狂なわしだったりします。しかもちゃんと末尾再帰になってるかがよくわからん(爆)。どうやって調べたら良いんでしょう。

末尾再帰にこだわらなければ for で書くのに限りなく近い書き方([0;1;2;3;...] みたいなリストを用意しておいて、それに List.iter を使うという大層邪道げな方法)でも行けるんだが、やっぱりこだわりたいよね(笑

ちなみに末尾再帰のコツは、再帰関数の引数にカウントダウン用のパラメータを用意して、指定回数分回ったら自動で抜けるようにするって辺りじゃないかと思ってるんだが、いかんせんまだまだ経験が足りなくて自信を持っては言えませんです。ともかく無駄な時間がかかったと言ってしまえばそれまでなんだが、考えるのは大変楽しかったですよ。今まで手続き型言語で培ってきた考え方を根本から崩す必要があるのは結構ショックだが(苦笑


2004-07-31 ショックでか子さん [長年日記]

% 丸一日かけてサンプルアプリを書いたのに…

ocamlrun (java で言えば JavaVM みたいなもの)が "ref_teble overflow" とかいうエラーで死ぬというワナ。イタ〜。

ちなみにこのエラーは、GC が出してるらしくて、ref_table とやらが足りなくなったときに realloc して、それが失敗すると出るようだ。んで、そもそもこの ref_table って何よ?と思ったんだが、ちゃんと調べたわけじゃないんだけど、多分、識別子を管理してるテーブルなんじゃないかと。だってね、WideStudio のモジュール(mpfc)だけで、1300 くらい識別子が登録されてるのよね。

でもなぁ… top で見るとそんな馬鹿みたいにメモリ食ってるわけじゃないし、なんで realloc に失敗すんのかねえ。はあ…これが、バイトコードだけの問題(制限?)だと良いけど。ネイティブコードでも同じように落ちるようだったら、はっきりいって役に立たんよなあ……

しくしく、今さらなんつー情けない問題が起きるものやら。泣けてくるよ……


トップ 最新 追記

日記ってのは本来、自分で読み返すためにあるもんだよなあ……
もしくは有名人になったら死後に本になったりとかか?

RSS はこちら

jijixi at azito.com