gtestとgmockが1.6.0からmake installできなくなってしまいました。今回は開発者からしたら不本意でしょうが、make installを有効化する方法を説明します。 その前に とりあえず背景から。先日リリースされたgmockの1.6.0をインストールしようとしたところ、…
テスト用のフレームワークを使ってユニットテストより粒度の荒いテスト(コンポーネントテストなど)を書こうとすると、1つのテストケースが複数のパラメタに依存してきます。例えばDecoratorパターンで、DecoratorAとDecoratorBをつなげてテストすることを考…
スローペースで開発してます。サーセン。今週は折角の休暇だったので仕事コードにはあえて一切触れず趣味プロに走りました。あんまりプログラミングの時間をとれませんでしたが、癒されました。 MessagePack for Lua (mplua) 0.2.0 http://github.com/nobu-k…
前回のValue Parameterized Testsに続き、今回はType Parameterized Testsというのを紹介したいと思います。コードがコンパイルできなかったらタイポしてるので本家の方を見てね。 Type Parameterized Testsとは Type Parameterized Tests(勝手にTPTと略しま…
google-gtestにいつの間にかValue-Parameterized Tests(VPTと勝手に略します)という機能が追加されていました。以前のgtestでは、実行される度に特定の値を変更しながらテストすることが面倒でした。例えば、boolのフラグを持っており、それがtrueかfalseか…
最近Ubuntuをアップグレードするたびにこの手のエントリを書き続けている気がする・・・!Ubuntu 10.04 で Xinerama 周りにバグが入ったようです。症状としては、画面をまたいでマウスを移動するといきなりピクピク分身し出して、その後もしつこくマウスを動…
BandObjects とは IE のツールバーを簡単に開発するためのなにかです。ぐぐるといろいろと情報が出てきますが、古い情報が多すぎます。しかし、これは古い情報が悪いんじゃなくて、MS製品の仕様変更が激しすぎるのが原因なので、情報を提供してくれている人…
先週から少しずつ書いていた MessagePack for Lua が動くようになったので一旦公開しようと思います。 MessagePack とは MessagePack とは 古橋くん(id:viver, @frsyuki)が開発した、高速なバイナリシリアライズ形式です。「速くてコンパクトなJSON」と言わ…
id:awakia に教えて貰いました。Twitter Streaming API の sample を使うと、正確に確認したわけではありませんが、全発言の1/20を取得できます。やってみると分かりますが、この1/20というのは結構シビアで、全然自分の発言が拾われません。秘宝伝の高確で…
wxLua を使うと Lua から wxWidgets を簡単に使うことができる。もちろん、フレームから何から全部 Lua で書けてしまうので、そうしても構わないのだけど、コアはやっぱり C++ で書きたい! GUI も大枠は C++ で書いて、局所的に Lua で拡張したい!! そし…
クラウドAMAZON EC2/S3のすべて (ITpro BOOKs)作者: 並河祐貴,安達輝雄,ITpro/日経SYSTEMS出版社/メーカー: 日経BP社発売日: 2009/11/05メディア: 単行本購入: 4人 クリック: 372回この商品を含むブログ (18件) を見るこの本を参考にアカウントを作成してみ…
CPU使用率が100%を越えなくて悩んでたら id:kzk が発見してくれました!やたー! import "runtime" func main() { runtime.GOMAXPROCS(コア数); }という感じにすると本気を出してくれます!が、下のソートはコア数1のときが一番速かった・・・。まあチャンネ…
-1がEOF的な用途で使われている感じ。Core i7でCPU100%までしか食わないんだけど、書き方が悪いのかそういうものなのか。チュートリアルのsieveで興奮して適当に書いただけなので、明日もう少しドキュメント読んでみよー。 package main import "fmt" import…
include $(GOROOT)/src/Make.$(GOARCH) TARG=コマンド名 GOFILES=\ file1.go\ file2.go\ ... include $(GOROOT)/src/Make.cmdこんな感じのを用意するだけでいいらしい。最後の Make.cmd を Make.pkg にすると .a を作ってくれる。らくちん!
apt-get remove python したらいろんなものが消えてしまって大変なことになったのでOSを再インストール。そしたらまた画面設定でハマったのでメモ・・・。基本的にはこの間のエントリの加筆。今回は参考文献なしなので間違ってるかもしれない。注意。ちなみ…
相当はまったのでメモ。 手順 念のため xorg.conf をバックアップ nvidia-settings で雛形となる xorg.conf を生成 生成された xorg.conf をちょこっと書き替えて完成 xorg.conf をバックアップ /etc/X11/xorg.confをどこか適当なところにバックアップする。…
疲れて全然日記を書く気力が起こらない。そんな自分を癒してくれるTwitterのせいで更に日記を書く気力が減ったり。しかし久々に何もすることがなくぼーっとしている日が出来たので、休みがてらWaseda.L参加報告でも書こうかと思います。 発表内容 研究用途の…
Waseda.Lに参加する前に言っておくッ! おれは今Waseda.Lをほんのちょっぴりだが体験した い…いや…体験したというよりはまったく理解を超えていたのだが…… ,. -‐'''''""¨¨¨ヽ (.___,,,... -ァァフ| あ…ありのまま 今 起こった事を話すぜ! |i i| }! }} //| …
3027.6412 Purely Functional Infrastructure 13 2595.2057 jabber.ru 12 2551.7364 Side Effects May Include... 12 2544.5674 Intercaml 12 2539.3044 Error 404 12きたー!俺、なんもしてないけどね!!id:tanakh 神!!
hdfsOpenはディレクトリも書き込みモードで開けます。というか、ファイルを消して、そこに新たにファイルを作ります。なのでcp的なものを作ろうとして、誤ってディレクトリに対してhdfsWriteしてしまうと…/(^o^)\ 追記 他の関数も調べてみました。 hdfsCop…
libhdfsのAPIは$(HADOOP_HOME)/libhdfs/docs/apiに詳しいドキュメントがあるので、そこを見ながらやると簡単です。サンプルが必要ないくらいに色々書いてあります。ただちょっと良く分からなかった点があったので、いくつかメモを残しておきます。 Connect, …
コンパイルから実行までに1時間くらいかかったわけですが、95%はCLASSPATHの効率的な指定方法を調査していた時間ですw 以下、pathは適当に自分の環境に合うように置き換えて読んでください。libhdfsを使ったソースファイルは以下のようにコンパイルします。…
libhdfsはC言語からHDFSへアクセスするためのライブラリです。が、ちょっとコンパイルでハマったのでメモしておきます。32bit環境だと問題なくビルドできるかも知れませんが、実験はしていません。また、これは0.18.3(現時点でのstable release)での話で、最…
google-glogは便利なロギングライブラリです。便利なんですが、困った事に、ドキュメントを見る限りだとコマンドライン引数からしか挙動を制御する事ができません。例えばログの出力先を指定したい場合は、-log_dirというオプションを渡して起動する必要があ…
先週は全然読めなかった。。3章が長めで、3.7はちょっと重そうなので、前半をまとめてみる。3章はPage model(read/write model)のトランザクションに対して、トランザクションを並列実行したときの「正しさ」を定義することを目標にしている。トランザクショ…
Nikeの例の奴を使って初めてiTunesに接続したときにnikeplusのアカウントを登録するようなダイアログがでる「はず」だったらしいんだけど、出なかった。iTunesでは、iPod nanoの(nikeplus使用後の?)初回接続時にしかnikeplusのアカウント情報を登録できない…
http://groups.google.co.jp/group/gnu.g++.bug/browse_thread/thread/09f52263bb8562a6 これと同じ。 #include <iostream> #include <map> using namespace std; void f(const map<int, int>& m = map<int, int>()) { } class A { public: A(const map<int, int>& m = map<int, int>()) {} void f(const map<int, int>& m = map</int,></int,></int,></int,></int,></map></iostream>…
現在読んでるところ。6月末に読み終わるのを目標に頑張ってます。2章はこれからの議論の基本となる2つのモデル、page modelとobject modelの説明。Page modelではそれ以上分割できないreadとwriteのシーケンスを考える。この時、トランザクションはそれ以上…
gtestではテストケース毎に、テストケース全体で共有するリソースを初期化(確保)・解放する仕組みを提供している*1。これは、SetUpTestCaseとTearDownTestCaseを使用することで実現できる。 サンプルコード class TestCase : public testing::Test { protect…
void f(bool b) { ... } vector<bool>* v; // 諸事情でポインタ ... for (...) f(v); // (*v)[i]書き忘れ/(^o^)\テストのおかげですぐ気付けたから良かった…。TDDは偉大。</bool>