2006-09-01から1ヶ月間の記事一覧

Plaggerの利便性とオープンソース開発の動機

真面目な話として書くならばPlaggerでなければ出来ない事を心がけると良いんじゃないだろうか。 ある処理が、簡単にできるようになるのならそれだけで十分意味があると思うが*1。 まぁ、Plagger ってプラグインを組み合わせるためのプラットフォームに過ぎな…

どうでもいいC++コード断片

C++

簡易catコマンド streambuf_iterator と std::copy を組み合わせる。 #include <iostream> #include <fstream> #include <iterator> #include <algorithm> #include <cerrno> #include <cstring> int main(int argc, char** argv) { using namespace std; if (argc == 1) { copy(istreambuf_iterator<char>(cin), istreambuf_</char></cstring></cerrno></algorithm></iterator></fstream></iostream>…

boost::lambda で suffix sort

C++

先日 C++ の Duck Typing のサンプルコードを書いたら、「何この Syntax」みたいなことを言われたので、さらにきつそうなのハードディスクからサルベージしてさらしてみる。要 Boost。 STL の std::sort と boost::lambda をフル活用して suffix sort をして…

コレクションライブラリの使いかた

勝手に人のコードを添削。いや本当はコメントしようと思ったんだけど、はてなダイアリーだとコメントにソースコード入れると読みにくいかと思ったので、Entry 上げて Trackback。 とりあえず元コードは以下。 元エントリ:It’s no use, - TreeMap Iterator i…

Labor Day

U.S. では9月の第1月曜日は Labor Day といって祝日らしい。つまり今日は祝日でお休み。 ということを大学に出てきてから知った俺ガイル。いや、だって U.S. の祝日とか知らんし。

tDiaryの吐くRSSの改行コード

XML

Matzにっき(2006-08-25) well-formedでさえないXML well-formed でない RSS を生成しているサイトが結構あるという話。 コメントで tDiary の生成する RSS が valid かどうかのはなしがちらっと出ていて、まぁ valid なんだけど、何気にところどころ 改行コ…

Phinlodaさんの問題に答えてみる

とりあえず元のネタは以下 裏表(Phinloda のもう裏だか表だか分からないページ) | プログラミングの問題、というかネタ 自分が中級者かどうかは微妙なところではあるが、Java と Python でやってみた。両方ともテストコード付き。

Javaの仕様が腐っていると思う瞬間

new int[] {1, 2}.equals(new int[] {1, 2})が false で Arrays.asList(1, 2).equals(Arrays.asList(1, 2))が true になることを再確認したとき。JUnit4 も assertEquals で配列をサポートしたかと思えばプリミティブ型が入っていると駄目だし。 もう基本的…

はてなポイント

いつの間にやら投げ銭ではてなポイントを頂いていた。30ポイントだけどびっくりだ。

C++でDuck Typing

C++

>Duck Typing 調べてみたけどさっぱりだー クラスAとBがあって、それぞれに継承関係がなかったとしても、同じメソッドを持っていれば同じように扱うことができる…ってことかなぁ…むずかしぃ それで間違ってないです。難しいっていうのは理屈では理解できるけ…

仮想関数の意義

仮想関数の存在意義が良く分からない。ので使わないことにしよう。 ええと、Java を使える人がそういうこと言いますか。Javaのメソッドコールは全て動的束縛(仮想関数)だと思ったのだけども。まぁ、インスタンスの宣言型と実際の型を常に一致させている人は…

JavaScript で HTML を Parse する

function parseHTML(text) { var createHTMLDocument = function() { var xsl = (new DOMParser()).parseFromString( ['', '<stylesheet version="1.0" xmlns="http://www.w3.org/1999/XSL/Transform">', '<output method="html"/>', '</stylesheet>'].join("\n"), "text/xml"); var xsltp = new XSLT…

Emacs22 付属の python-mode

Emacs22 からは python.el が付いてきてて、pycomplete なしでも補完ができるのだけど、補完機能が中途半端なのが残念。使うなら結局 pycomplete と組み合わせることになるかな。まぁ、そもそも python-mode.el と何が違うのかも良くわからんけど。 とりあえ…

Meadow で python-mode + pymacs + pycomplete を使う

Meadow で pycomplete を使うメモ。 Pymacs のインストール http://pymacs.progiciels-bpi.ca/ から Pymacs-0.22.tar.gz をダウンロードしてきてインストールする。 % cd Pymacs-0.22 % python setup.py installpymacs-services を起動するためのバッチファ…

Emacs22 で pycomplete

なんか Emacs22 だと pycomplete が動かなかったので Hack。 プロパティ付きの文字列の入出力周りに変化でもあったのかな。 --- pycomplete.el.orig 2005-12-02 10:30:11.000000000 -0500 +++ pycomplete.el 2006-09-01 20:13:55.718750000 -0400 @@ -26,7 +…