プログラム

 忙しいと言いながら

BrainFuckに挑戦。 >>+>+>+>+>+>+[++++++++>]-]> +++++++++.>++++++++++.>+++++++++++.> ++++.>++++++++.>+++++++++++++.> "JKLEIN"と表示する。BFに慣れてる人にはヌルいコードなのだろうな。追記。一応解説しておくと、メモリの1バイト目は0x00でデリミタ…

良い子は真似をしないで下さい。

何の理由もなく、目を閉じてコーディングしてみた。以下結果。 #include #include int main(int argc, char *argv[]) { char *name; if (argc == 1) { fprintf(stderr, "usage: %s name\n", argv[0]); return 0; } } printf("Hello, %s\n", name); return 1;…

 KeyGraph実装中

ちょっと興味があったのでWHAT*1は置いておいて、KeyGraphを実装してみることにした。GUIによるグラフの表示などは無しで、HighFreqのリストと結果としてのキーワードの一覧を表示するのみ。あとはグラフ周りの操作関数が出来れば、大体完成かな。 *1:WHAT:…

KeyGraph関連情報

GoogleでKeyGraphで検索してもヒット数少ないなぁ(日本語のページでは172件)。眠いから後で読むためにリンクだけ張っておく。 地震履歴データマイニングによる危険断層の発見地震の話とキーワード抽出に何の関連が? と思うかもしれませんが、面白そうなの…

キーワード抽出アルゴリズム - KeyGraph

KeyGraphというキーワード抽出アルゴリズムの説明を書いてみる。ただ自分の知識をまとめたいだけだけど。結構仕組みはシンプルなので、理解しやすいはず。概念まず、細かい用語などは置いておき、雰囲気だけを…。KeyGraphでは文章を『主題』と『土台』に分け…

 コーディングスタイル

id:KenjiAikoさんのところでちょっとgoto文についての話題があって、思い出したこと(gotoとは関係ないけど)。下のような書き方ってダメかな? if (hogehoge) { ... } else if (foobar) { ... } else switch (value) { case X: ... break; case Y: ... brea…

文字コードの判別

超めんどくさい。だれだよ、Shift_JISとか考えたヤツ。一応、総当たり的に文字コード判定出来るようにしたけど、絶対要領が悪い。今は手がつけられないけど、近いうちに文字コードを適切に、要領良く、判別するプログラムをライセンス放棄のうえで作ってやる…

ネットワーク系ツールの必須機能

ネットワーク系のツールだと、文字コード判別/変換は必須だ。とりあえず、変換はiconv(3)で行なうとしても、判別は自前で行なう必要がありそうだ。で、非常に参考になる(というよりも答えそのもの)サイトが有ったのでメモ日本語文字コードの判別:http:/…

情報処理学会

本気で、情報処理学会*1の学生会員に申し込もうかと思う今日このごろ。気になる論文を見かけると、いつも情報処理学会の論文で読めない。参考の為に学生会員の料金をメモ 種別 入会金 会費 論文誌 研究会登録 学生 - 4,800円 6,930円 有料 論文を読みたいの…

テキストの分割アルゴリズム

今、WHAT[?]*1の為に検索アルゴリズムを考えている。そのために避けて通れないのが、テキストの分割アルゴリズムだ。要するに速く検索するためにテキストを適切に分割しインデックスを作製するのだが、この分割の方法で検索の精度、速度、データサイズなどが…

 NULLPO 2

昨日解決出来なかくて泣きそうだったバグが今日、寝起き10分で解決。気持ち良く、出かけられるぜ。これが本当の朝飯前、と。お後がよろしいようで。

NULLPO

セグメンテーションエラーで落ちるが、原因不明。これ系のバグは泣けてくる。gdbでひたすらメモリを追うが、何度やっても0x804fb40であるべきところが0x804fb41になってる。笑えね。

今さらながら…

(小声で)MSのソースコード欲しいなぁ。と思うのはやはりダメ? ソースコード全体に対してビル・ゲーツをgrepしたい。

SourceForge参戦

ちょっと、意気込んでSourceForgeのアカウントを作成してみた。SourceForgeでプロジェクトを作ることに微妙に尻込みしていたのだが、実は結構気楽に使っても良いらしいので積極的に使用することにした。で、プロジェクトを作成しようしたのだが、UNIX名に悩…

ttyrep - TTY Executable Replay - 0.0.1

ttyrec/ttyplay*1に影響を受けて似たような(しかし、まったく違う)プログラムを書いた。試しに作ってみたら『"運よく"動いた』という状態なので、安定性は一切保証しないが…。【追記】専用ページ作ってみた。ダウンロードも説明もこちらが良いと思う。これ…

キー縛り

変な夢を見た。大きな体育館の中に多数のパソコンが並んでいて、垂れ幕が垂れ下がっている。垂れ幕には 『絶叫! キー縛りプログラミング大会』 と書かれている。審判によると次のようなルールのようだ。 指定されたものをその場でプログラミングする。 問題…

Screenコマンドのユティリティ

screenコマンド(以下screen)の保持する各ウィンドウで起動されているシェルのカレントディレクトリが知りたいのだが、良い方法が思いつかない。C-a C-wでウィンドウのリストが表示されるが、それぞれがどのディレクトリにいるかが分からない。これが分かる…

ネットワーク負荷監視

リアルタイムでネットワークの負荷をグラフにするプログラムを作ってみた。GTK+の練習がてら作ったものなので、実用性はまったくないが、デスクトップの端に放置しておくと、なんというか"出来る人"っぽい。ちなみに、上のグラフは"ping -s 1000 -f remote-h…

Matrix暗号コード

仕事が暇だったので、こんなものを作ってみた。http://members.jcom.home.ne.jp/j-klein/src-box/matrixcode.cMatrixの暗号コードをターミナル上で(凄い適当に)再現する。暗号コードっていうのは、映画で出て来た緑文字が縦に流れるヤツ。cursesが必要。ウ…

快感

今日、仕事で他人が書いたプログラムの手直しを頼まれた。そのプログラムはいわゆる便利ツールで、昔は処理すべきデータが少かったから十分な測度で動作したが、最近急激にデータ量が増えて、どうしようもなく遅くなったようだ。それを実用に耐えうる測度に…

親切過ぎる機能は時として邪魔になる。

私が良くやるミスがあります。それはHTMLフォームの一行入力用のフィールドに入力するときに、途中で送信したり、関係の無い文章を送信したりといったことです。特に、日本語を入力するときにミスります。ミスる原因は二つ。 Enterの押しすぎによる途中送信 …

mimeTeXをコマンドとして使用する。

mimeTeXを弄っているうちに楽しくなってきたので、ローカルでコマンドとして実行するためのラッパを作ってみました。おそらくもっと簡単に実現する方法があったのでしょうが、勢いで自作した次第です。mimetex-wrapper.pl : http://members.jcom.home.ne.jp/…

複合語抽出

複合語の抽出というのはid:kt-blackout:20040324でも書いたように、キーワード抽出において重要な意味を持ちます。複合語というのはわりと専門的な用語であったり、日常会話などで出にくい言葉であることが多いので、単純に複合語を抜きだすだけでも面白い結…

複合語抽出 2

↓に書いた『複合語抽出』で使用したプログラムが微妙にバグっていました。それによりすべての出現回数がちょうど2倍になってしまったようです(ですので、相対的な順位は変りません)。修正しました。この修正の際に少しアルゴリズムの調整したら、結果が少し…

続・続・茶筌遊び

いい加減、専用ページ作りました。http://members.jcom.home.ne.jp/j-klein/text/index.html昨日の日記ともかぶりますが、id:alpinixさんとid:shi_moさんからログを提供していただいたので、上記ページにて全て公開させていただきました。ありがとうございま…

 キーワード抽出

さて、「茶筅遊び」で書いているように茶筅で遊び回っているわけですが、いつまでも遊んでいるわけにもいきません。とりあえずの目標である「キーワードの抽出」を中心に考えてみました。以下、キーワード(重要語)を抜き出す上で漠然と思ったことメモして…

続・茶筌遊び

昨日も書いた、『Hatena::Diary解析器』に二つ機能を追加しました。解析結果:http://members.jcom.home.ne.jp/j-klein/text/index.html解析結果を見ていただけば分かると思いますが、『日記量グラフ』と『一行あたりの形態素数グラフ』を追加してあります。…

茶筌遊び

細々と茶筌で遊んでいます。で、面白くなりそうなものを作ってみました。まだ、プログラム自体は公開できる状態ではありませんが、その結果のみ公開してみます。解析結果:http://members.jcom.home.ne.jp/j-klein/text/index.htmlこれはHatena::Diaryのログ…

Suffix Array

・近似文字列照合による全文検索のための接尾辞配列の高速走査法(PDF)この論文を読んでSuffix Arrayのライブラリは無いかな? と検索したら*1見事に高林哲氏が作成していましたね。・Sary: Suffix Arrayのライブラリとツール試してみます。ちなみにSuffix …

ChaSen - 茶筌

茶筌 - ChaSen : http://chasen.aist-nara.ac.jp/思うところがあり、ChaSenをインストール。インストール自体は簡単で、ChaSenとipadicをconfigure->make->make installで大丈夫です。試しにいくつか形態素解析してみた。 元テキスト:私は変なおじさんです…