2008-03-01から1ヶ月間の記事一覧

文字数単位の処理はやってはいけない・実証編

グラフにしてみました。 緑 インデックス単位アクセス 赤 最初にWideStringに変換*1 青 文字単位アクセス 処理としては、ランダムに生成した文字列からアルファベットの'A'数えているだけです。あんまり複雑なことする気も無かったし手頃な例思いつかなかっ…

略語辞典

http://ryg.cc/ 素晴らしいと思うべきか、こんなもんが必要な世界になったと思うべきか。

全タイプ記録と言えば

Key

そうやってデータ取って弾き出された理想の配列evolvedのページが移動していました。消えたと思って焦った。日本語配列で同じことやるとしたら、データは、ミリ秒単位の打鍵間隔の他に、そのときのIMEの状態なんかも要るでしょうか。これも気が向いたらやり…

先週

色々裏切った。 懺悔を書こうとしたら、丁度プロバイダの料金未納で繋げなかったため、私は今もこうして生きている。

本当は語尾にイカやゲソを付けたかった

Cryoliteさんに先にやられた。いやその、ずっとサンデーを買っていたのですが、先々週あたりからついにチャンピオンに手を出してしまいました……。 今は、N極バリアは何ガウスぐらいあれば実現可能か気になって仕方ないです。 重力と振り下ろす力に対して、反…

面倒事に巻き込まれないための文字列処理指針

最初に言っておく。 面倒事に巻き込まれたくないので参考URLとかは一切出さないことにします。

G'Camlですよ

予想通りにMakefile.ntがまるでメンテされて無くて笑っていいのか泣いていいのかでしたが、とりあえず.ntのつかない方からコピーしてあれこれしてたらhttp://d.hatena.ne.jp/shinichiro_h/20060918#1158547913は動きました。 #load "gcamllib.cma";; type a …

G'CamlにはRTTIがある!

http://web.yl.is.s.u-tokyo.ac.jp/~furuse/gcaml/ 当然トップレベルと同じ出力が得られるGprintなるものもある。RTTIがあるということは、効率さえ気にしなければ型情報をMapに突っ込んでHaskellの型クラスモドキもできるわけですから、もうなんでもありで…

自分用メモ

caperのサンプルのemptyなんとかを-d付けて渡すと落ちる。-c++だと落ちない。誰だよDジェネレータ書いたの。 後で直す。 追記。C++Builder11ではreleaseで再現、debugビルドだと再現しない……。

懲りずにパーサジェネレーター

http://panathenaia.halfmoon.jp/alang/castling.html とりあえず当初の目的としては使える程度にはなったと思う……。 実はfirst-set作るところがバグってたりしたので、もっとテストケースが必要なのでしょうけれども。 コード自体もいくらOCamlと言ってもち…

deriving

http://code.google.com/p/deriving/ deriving (Show)サイコー。 他にも色々用意されてます。展開後のソースに対して警告出されるのが若干気になりますが、まあいいか。 あとは、専用のcompareが用意されている型についてはそれ使ってくれてそれ以外はPervas…

みょーん

何が言いたいかというと、OCamlは言語仕様そのものが凄いてきとーな為、てきとーにしか書きようが無いのが素晴らしい。その点「え」の付くなんとかは効率追求ができてしまう言語仕様の癖にランタイムがlibcの上に乗ってて無駄にg++とABI互換でコンパイラに足…

まあそれはともかく

C++

caperのソースを見るに、「真面目にSTLやなんかにインターフェース適合させて効率や可視性に気を遣って書いたC++」と「適当に書いたC++」の乖離は酷過ぎるのではないかと思うこの頃です。 で……caperのソースは物凄い真面目に書かれていると思うのですが、真…

みょーんみょーんみょーん(←念を送っているらしい)

ま〜,少なくとも move semantics なんて値 (のコピー,もしくは箱モデル) をベースとする C++ 独特の概念だよにぇ〜.だから面白いとは思うんだけれど.他の言語においては参照 (名札モデル) をベースとするのが主流で,この概念は恐らく存在意義すら無いは…

パーサジェネレータのそのまた続き

前回、 START ::= A * B D | A * C Dの状態でDが来たらBとCのどちらを補うかなんてのは迷いますが、どの道エラーリカバリですので適当にどっちか選ばれるようにしとけば問題ないと思います。recovery/recovery conflictなんてのは聞いた事が無いですし。 と…

パーサジェネレータの続き

かろうじて動くようになりました。http://panathenaia.halfmoon.jp/alang/castling.7zAST自動生成型のパーサジェネレータです。 奇跡的にLALR(1)のパーサを吐きます。 LR(0)項の集合そして状態遷移テーブルを作る超肝心の部分はcaperの丸写しです。従ってラ…

breakが欲しい

例えばこういう処理があるとします。 List.iter (fun i -> print i) a aには番兵xが含まれておりそこに来たら中断したいとします。 exception Break;; try List.iter (fun i -> if i = x then raise Break else print i) a with | Break -> () これは正気の…

Delphi2007のヘルプからいらないものを消した

やってみたら簡単でした。 h2reg -u h2reg.iniの中のなんだかそれっぽい行を適当にコメントアウト h2reg -r .NETのヘルプ外すだけでだいぶ軽くなります。量が凄かったからなあ。 [Reg_Plugin] ;<nsName_Parent>|<HxT_Parent>|<nsName_Child>|<HxT_Child>|<HxA_Child> ;MS.VSCC+|_DEFAULT|hw.h2reg|_DEFAULT|COL_Master.HxA ;b</hxa_child></hxt_child></nsname_child></hxt_parent></nsname_parent>…

4.3.0リリース

gcc

早速ビルドした。 http://panathenaia.halfmoon.jp/alang/gcc-private-build/ ちなみに、最初aaacafeでクロスコンパイラを作ってからずっとfreebsd4にしてたんですけど、さくらは実はfreebsd6だったため、6にしました……。 こうやって公開してると月に数件は…

Eclipse IDE for C/C++ Developers

http://www.eclipse.org/downloads/ すばらしそう。Java抜きEclipse。どうせならC/C++も抜いてください。 最近は何でもEclipseですからマイナー言語のプラグイン入れるの前提で空Eclipseの配布は無いでしょうか。

GNATbench

Ada

https://libre2.adacore.com/ すばらしそう。AonixのADTもありますのでEclipseのAda環境が2種類になりました。 最近は何でもEclipseですね。

OcaIDE

http://ocaml.eclipse.ortsa.com:8480/ocaide/ すばらしそう。まあどうせデバッガはWindowsでは(Cygwin以外)動かないのでしょうけど。 最近は何でもEclipseですね。

caperが吐いたコードを読む

LALR(1)はどうやって動作しているのでしょうか? 理解を完全にするために、caperの吐いたコードを追いかけてみたいと思います。 caperは、jonigataさんの作られたパーサジェネレーターです。パーサジェネレータの中では群を抜いてきれいなコードを吐いてくれ…

頭の悪いパーサジェネレータ

あんだけ進めといてアレなのですが、方針転換します。パーサジェネレータ作ります。 OCamlのコンパイラが吐くエラーメッセージは正気とは思えないため、最終的に使う言語自身で書いたほうがパーサジェネレータ用の間に合わせの構文よりも嬉しいというパーサ…

頭の悪いぱーさめも

LLとか言われても「再帰下降」、LALRとか言われても「表引くやつ」と言い直さないとぴんと来ないのでまとめる。あるごりずむ LL……トップダウン LL(1)……JavaCC他、手書きできる LL(k)……ANTLR他、手書きできる 再帰下降+バックトラック……Parsec*1他(たぶんREBO…

Help Update2というのが出たらしいが

http://dn.codegear.com/article/37542/ リリースノートはあるのに実体がRegistered Users Siteに無いです。 初めてCheck for Updatesを起動してみたら、ありました。 Feb08 Help IMPORTANT: Please view the following URL before installing this help upd…

OSC見てきた

OSASKの河合さんがおられました。OS本持って行くべきだった! ずけずけとテキストエディタ見せてと頼んだら、漢字変換からロケールの切り替えまでデモしてくださいました。ありがとうございますです。 その時配られたビラでtekという圧縮形式を知りました。 …