...ing logging 4.0

はてなブログに移行しました。D言語の話とかいろいろ。

2009-07-01から1ヶ月間の記事一覧

構造体クイズ

shared_ptrを作ってみようと頑張っていたのですが・・・. import std.stdio; struct X { this(int i){writeln("X.this(int)");} this(this){writeln("X.postblit");} static X opCall(X){writeln("X.opCall(X)");X x;return x;} static X opCall(Y){writeln…

これはこわい

import std.stdio; struct X { int a; } struct Y { string b; } void main() { Y v = X(10000); writeln(v.b); } ぴーーーーーーーーーーーーーーーーーーーーーーーー. 回避方法 import std.conv; struct Y //replace { string b; static Y opCall(T)(T x…

dcharの世界へ

const(char*) toMBSz(in wchar[] t) { return toMBSz(to!string(t)); } const(char*) toMBSz(in dchar[] t) { return toMBSz(to!string(t)); } alias std.windows.charset.toMBSz toMBSz; void p(T)(T t) { printf("%s\n", toMBSz(to!string(t))); } しかしW…

わたし「まだあなたのことよくわかってないの・・・ごめんなさい」shared_ptr「・・・」

import std.stdio; struct shared_ptr(T) if (is(T == class)) { uint n; T p; alias p this; this(T p) { n++; this.p = p; writeln("construct, ", n); } this(this) { n++; writeln("reference copy, ", n); } ~this() { n--; if (n==0) { delete p; writ…

In A Module Far, Far Away Part 2 - Walter Bright

英語の勉強を目的として訳してみました. まずタイトルが訳せないんですけどw 英和交互に書いているので読みにくいかもしれない. Dr. Dobb's | Good stuff for serious developers: Programming Tools, Code, C++, Java, HTML5, Cloud, Mobile, Testing

VirtualBox上のWindows XPのポートを開放してVistaでネットゲームをする

VirtualBox上のWindows XPのポートを開放してVistaでネットゲームをしたかった. 例によってAOCだけど. まず,普通にVirtualBoxにXPをインストールする. DirectXサポートモードにする方法はネットで適当に探してきてその通りにする. それからVirtualBoxの…

AOCに向かない体

コスモス普通に一向に勝てないのでTRを練習しているんだけど一向にTRが成功しない. 3〜4本建てても騎士が来てTR崩壊してしまう・・・. 槍作っておいても数が足りないのかやられてしまう.そもそも食料と木がない. いつも家とか市場とか鉄工所とか神殿とか…

京都祇園祭 - 宵々々山

もうとっくに終わっていて今更ですがせっかく撮影したのでup. 音量調節しなかったので音がでかい.音量注意です. 初めてニコニコ動画に投稿したぞ.

これはひどい

はてなプラスへの導線が足りない

例えばはてなブックマークの個人のトップページである http://b.hatena.ne.jp/haru-s/ にアクセスしてみたところで,はてなブックマークプラスに申し込むボタンは見あたらない. 何で申し込みボタンをこういう大事なところに置いておかないかな.

スラッシュで終わるURLと終わらないURL

はてなブックマークのブックマークURLは最後にスラッシュがあるかどうかで別のアドレスとして認識されてしまうらしい. 最近のはてなブックマーク拡張でブックマークすると,別のアドレスを推薦してくれたりするけれど,上の違いも吸収してくれたらいいのに.

なでしこ on D言語

import std.process; import std.windows.charset; import std.c.string; import std.string; import std.conv; import std.stdio; void main() { nadesiko_oneLiner("1+3をAに代入。A=A*2。Aを表示"); nadesiko_oneLiner("エクセル起動。1秒待つ。エクセル…

マルチスレッドプログラミングわかんねー(5)

勉強しながら書いているので鵜呑みにしたらダメですよ〜. 変数のスコープと生存期間 スコープと生存期間は違う. 関数内で宣言された自動変数のスコープと生存期間はその関数内だけ. 関数内で宣言されたstatic変数のスコープはその関数内だが,生存期間は…

マルチスレッドプログラミングわかんねー(4)

import dfl.all; import dfl.internal.winapi; import std.cstream; import core.thread; class MyForm : Form { private shared(bool)* start; private shared(bool)* restart; private shared(bool)* end; this(shared(bool)* start, shared(bool)* restar…

マルチスレッドプログラミングわかんねー(3)

import dfl.all; import dfl.internal.winapi; import std.cstream; import core.thread; shared bool startFlag; // trueでcollectorが仕事を始める shared bool restartFlag; // trueでcollectorが仕事を最初からやり直す shared bool endFlag; // trueでc…

マルチスレッドプログラミングわかんねー

Windowsのコントロールの入力を受けて処理を開始して,その処理が終了するまでに再入力があったら処理を最初からやり直すコードの設計がうまくできない. 体系的に学んでいないから経験不足でよくわからないな−.

一時変数とか再帰関数とかなしに

void g(const vector<int>& v){} void f(int length){ vector<int> v; for(int i=0; i</int></int>

マルチスレッドプログラミングわかんねー(2)

マルチスレッド特有のバグをコンパイラが指摘してくれたらいいのに. これでいいのかどうかわからないぞ.

DFL rev80 + dmd 2.031でリストボックスの選択済みアイテムが取得できない(4)

意味不明な方法で問題を回避することができた*1. 結局,Win32APIを直接使っていて,DFLの方ではやっぱり動かない. もしかしたらListBox周りのWin32 API特有の仕様なのだろうか. import std.stdio; import core.thread; import dfl.all; // http://dsource…

C++0xにおける関数の統一文法

C++

関数の統一文法が通ったらこうやって書くようになるのかな?w #include <iostream> [] f(int x) { return x * 2; }; [] main() { std::cout << f(1) << std::endl; return 0; } 戻り値の型を明示しなくてもよいところはいいね. でもこの文化は浸透するだろうかー?</iostream>

DFL rev80 + dmd 2.031でリストボックスの選択済みアイテムが取得できない(3)

複数行選択モードのときだけうまく動かないようだが・・・? import dfl.all; import std.stdio; import core.thread; class Th : Thread { ListBox l; this(ListBox l) { this.l = l; super(&run); } private void run() { for(;;) { writeln("sub-thread\t…

DFL rev80 + dmd 2.031でリストボックスの選択済みアイテムが取得できない(2)

他の人から返事が来た. TLSは関係ないっぽ. cast間違ってた? ... あれ?何でcast(ubyte)にしたんだろ.

Delegate covariance and contravariance

http://d.puremagic.com/issues/show_bug.cgi?id=3180 import std.stdio; class A {} class B : A {} class X { A foo() { return new A; } } class Y : X { B foo() { return new B; } } class V { void foo(B){} } void main() { // Class Covariance (サ…

DFL rev80 + dmd 2.031でリストボックスの選択済みアイテムが取得できない

何でだろうと思って色々調べてみた. で,関係あるかどうかわからないが,dmd -vtls してみたらずらずら現れた TLS たち. こいつらをちゃんと修正してやらないとダメなのかな? パッと見た感じでは関係ありそうなものは見あたらないが・・・. main.d(593):…

shared(int)

import std.stdio; void main() { shared(int) a; writeln(a); //shared(int) <---- !? } ・・・え? これ既に報告されているのだろうか?

ヱヴァンゲリヲン新劇場版:破(ネタバレなし)

見た!! 展開が早い!!!

DFL rev80 + dmd 2.031

久しぶりに恒例のパッチを作りました. 今回は符号付きの型を符号なしの型に暗黙変換できなくなった変更を受けてcastを大量に挿入したのでちょっと心配. DFLは以前のように-version=DFL_DMD2021とか付けてビルドしなくてもよいようです. ただし,DFLのlib…

dmd 2.031

きたー. case '1': .. case '9': ・・・!? 最近突っ込みを入れたバグが軒並み修正されていた. 高速化のパッチ当てたらしいけどマジでさらにコンパイル爆速になってないかこれ.

初音奔放曲longver.

ループループ.

保留されているパッケージ

linux-image-2.6-686うーん? 入れるべきなのかどうかよくわからないな. セキュリティアップデートでもないみたいだし.