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

正規表現でTree Summing

http://www.kmonos.net/wlog/ k.inabaさんところで紹介されているコード。 あれは、C++のboostのspiritというライブラリを使っているらしい。C++は便利なライブラリを持っているな。 http://boost.cppll.jp/HEAD/ spiritは、パーサジェネレータライブラリと…

Tree Summing問題

[id:lethevert:20051213:p2] PCREはそれとして、この問題は、PerlのOne-Linerかつ1正規表現でやってみようかと思います。 とりあえず、今のところできている部分。(見やすいように展開) #!/usr/bin/perl $_=join '', <stdin>; while( s/\(\) |\(\s* (\d+) (\s*\|</stdin>…

DIFFソフト(ファイルの差分比較&マージ支援)

プロジェクト全体の差分チェックには、cygwin上でdiffを使ったスクリプトを組んで使っているのですが、個別ファイル同士の比較とマージ支援に使うツールは、これというものを見つけていません。 最近は、DFというソフトを使っていたのですが、これは、ファイ…

SFTPクライアント

SFTPクライアントに、これまでFileZillaを使っていたのですが、最近WinSCPを使ってみたら、こっちの方が使いやすいかも。 もともと、FileZillaを使う前に、WinSCPを使ったことがあって、そのときにはあまり使いやすくないと思ったのですが、バージョンアップ…

相互評価

jkondo:20051212:1134382615(← リンクされたくないんです) 私が働いてるところも、似たような制度を取ってますけど、この制度って、直感的には、会社の規模がある程度で限界があるんじゃないかという思うのですが。ある程度の規模になると、仕事が近い人…

Tree Summing問題

[id:lethevert:20051211:p4] 確かに、PCREを使えば、ネストした括弧に一度にマッチさせることはできるのですが、その場合、最後にマッチした部分文字列しかアクセスできないので、計算は難しそう。 やはり、下のような形に追い込むやり方でないと無理か? wh…

PCREを使ったCプログラミング(2)

[id:lethevert:20051212:p1] PCREを使う際の基本的な流れと、対応するPCRE関数は、以下。 正規表現をコンパイル : pcre_compile / pcre_compile2 コンパイルされた正規表現を解析 : pcre_study 正規表現の情報を取得 : pcre_fullinfo 正規表現を文字列に適用…

PCREドキュメント

pcreは、パッケージをインストールするときちんとmanがついてくるので、これを読むのがよかろう。 C言語用プログラミングインターフェースは、pcreapiとして用意されている。 manpage of pcreapi : http://manpage.willempen.org/3/pcreapi

PCREを使ったCプログラミング(1)

[id:lethevert:20051211:p4] 連載化! - まずは、シンプルなサンプルプログラム。(まだ、細かいところはよく分かっていない) #include <stdio.h> #include <assert.h> #include <pcre.h> int main(int argc, char** argv) { const char* regex = "aa"; const char* err_msg; int err_o</pcre.h></assert.h></stdio.h>…

Tree Summing

[id:lethevert:20051204:p4] [id:lethevert:20051210:p1] [id:lethevert:20051211:p3] さて、再帰的な正規表現のパターンマッチができる環境ができたので、Tree Summingの問題に戻ろうと思ったのですが、Perlの正規表現なら、正規表現の中にコードを埋め込ん…

PCRE

cygwinのpcreパッケージをインストールすると、pcretext.exeというコマンドが使えるようになる。これは、pcreの対話的環境で、起動すると、下のように使うことができる。

システムパーティションの移動

ノートPCのシステムパーティションを移した。 もともと、Windows MEが入っていたPCをLinuxとデュアルブートさせるために、パーティションを5つに分けていて、そこにWindows 2000を追加して、最大でトリプルブートになっていた(今はWindows 2000のみのシン…

北海道室蘭市教委、学校システムの一部をLinuxからWindowsへ変更

http://slashdot.jp/linux/05/12/03/1521211.shtml 管理者のスキルって、日本語入力の使いやすさみたいなユーザーインターフェースの問題ではなくって、突然キーボードの入力がおかしくなりました!とか、ネットワークにつながらなくなりました!とかみたい…

再帰的な正規表現

[id:lethevert:20051204:p4] [id:lethevert:20051208:p1] これが通らない。 q = pre.compile(r"(?P<pn>(?:\(\))|(?:\((?P=pn)\)))") text = q.sub('aa', text)こんなエラーが出る。 Traceback (most recent call last): File "./ts.py", line 34, in ? text = q.</pn>…

POBox

http://pitecan.com/OpenPOBox/ Palm用の予測変換(最近の携帯電話によくある奴)プログラムがここで配布されているのですが、手持ちのCLIE-S300にインストールしてみました。やはり、予測変換があると、日本語入力が楽だ。 そういえば、最新のKNOPPIXを使っ…

EclipseFP

http://eclipsefp.sourceforge.net/ eclipseでOCamlとHaskellを使えるようにするプラグインらしい。 誰か使ってみた人いるかな?

pythonの正規表現モジュール

pythonは、正規表現が組み込みではなく、モジュール化されているのですが、その関係がちょっとややこしい。 http://rakunet.org/TSNET/TSpython/14/427.html ちょっと調べただけで、regex, pcre, sre, reという4つのモジュールが出てきて、基本的にreを使う…

firefox : mozex

mozexというプラグインを最近見つけた。テキストエリアを編集するのに、任意のエディタを利用できるextensionsだ。firefox 1.5でも使えるらしい。 http://www.cas.cmc.osaka-u.ac.jp/~paoon/OriginalDoc/ あと、mozexのemacsをクライアントにすることもでき…

Tree Summing

例の、最近流行った奴です。コードを短くする方向で盛り上がってましたけど、それとは違う方向性で。 匠の技的な正規表現で書けないかと考えています。

再帰的正規表現

PCRE http://pcre.org/ には、再帰的なパターンマッチを行う記法があるようなのだけれど、PerlやRubyにはないみたい。

リストの内包表記とSQL

多分、既にいろんな人が気づいていると思うのですが・・・ リストの内包表記とSQL(SELECT)って似てるよね!!!

Commom Lisp : 型指定子

[id:lethevert:20050720:p1]で、関数の定義域や値域を、型そのものが持っているものよりも狭めてやることで、不要な範囲チェックや例外処理を書かなくてもよくなるのではないか、というような話を書きました。(これって、今考えると、証明(形式検証)の一…

quick sortの計算量

純粋関数的なquick sortの計算量はどうなっているんだろう?

アップルのiMac G5欲しい!

何が何でもクレ。 iMac G5が当たったら、Concurrent CleanのMac版も日本語化するぞ。

遅延ストリーム

Concurrent Cleanの無限リストは、遅延ストリームの一種なのか?

Binary 2.0 カンファレンス

行きたかった・・・

RESTアーキテクチャ

って何? どうも、Web関連の技術で、SOAPと関係がありそうという感じだが・・・ http://www.goodpic.com/mt/archives/000185.html http://sheepman.parfait.ne.jp/wiki/REST http://www.geocities.jp/yamamotoyohei/rest/mistakes.html Webの本来の機能を再…

Concurrent Clean : 一意型

まず、一意型の書き方はこんな感じ。 f :: *a -> *a一意型でも、非一意型でもよい場合は、こんな感じ。 f :: u:a -> v:aこれは、このように書いてもよい。 f :: .a -> .a片方が一意型なら、もう片方も一意型である必要がある場合は、こう。 f :: u:a -> u:a…

firefox 1.5

新しくしたら、はてなアンテナを再読み込みしないと、更新されなくなった。 常にキャッシュを見てしまうようだ。 何か、設定するといいのかな?

エディタを選ぶ

そういえば、会社で「達人プログラマ」という本が置いてあったので、なんとなく開いてみてみたら、エディタについて、自分のエディタを見つけて、とことん使いこなすべきみたいなことが書かれていた。 「1つのエディタでエディタでプログラミング,ドキュメン…