2009-09-01から1ヶ月間の記事一覧
http://rayerd.plala.jp/pukiwiki/ingwiki/index.php?C%2FC%2B%2B%E3%81%AB%E7%96%B2%E3%82%8C%E3%81%9F%E4%BA%BA%E3%81%AED%E8%A8%80%E8%AA%9E2.0 import std.stdio; import core.thread; int a; // スレッドごとに別々の静的変数を用意 shared int b; // …
http://rayerd.plala.jp/pukiwiki/ingwiki/index.php?C%2FC%2B%2B%E3%81%AB%E7%96%B2%E3%82%8C%E3%81%9F%E4%BA%BA%E3%81%AED%E8%A8%80%E8%AA%9E2.0 pure, synchronized,synchronizedメンバ関数,shared型修飾子についての記述を追加.
テンプレートだと失敗するのは仕様? それは今後の課題で,将来的にはテンプレート関数もオーバーロード可能になるそうです. なんかソースのコメントに書いてあるとか.
import std.stdio; import core.thread; class SharedData { private int v; // privateに変更 public synchronized void increase() { int a = v; for(int i; i<1000000; i++){} // wait v = a + 1; } public int value() const // constをなくすとエラー(…
import std.stdio; import core.thread; class SharedData { public int v; public void increase() { // synchronizedだけだとグローバルなmutexが作成されるので, // 同期する必要がない他のsynchronizedブロックともお互いに処理待ちが発生してしまう sy…
import std.stdio; import core.thread; class SharedData { public int v; public synchronized void increase() // 同期関数に変更 (2) { // 同期関数は次のようなsynchronized(this)と等価 (1) //synchronized(this){ int a = v; for(int i; i<1000000; i…
import std.stdio; import core.thread; class SharedData { public int v; public void increase() { //synchronized // <== これの有無で結果が変わる { int a = v; for(int i; i<1000000; i++){} // wait v = a + 1; } } } class IncrementThread : Threa…
import std.stdio; void main() { auto dg = (int x){writeln(x);}; dg(1); auto fun = dg.funcptr; fun(1);//実行時におかしい } funcptrって何にどのように使うものなんだろう?
なんかちょっとしたことを書くモチベーションがtwitterだけで満たされるようになってしまったな.
大規模データ処理、RDBMSエンジンの見直しの必要性、クラウド、MapReduce、開発者にとってのデータベースの使いやすさ、新しい言語は?、Uncertain data, プライバシーの管理などなど、DBの将来を見据えた意見が盛りだくさんです。 確かに,メジャーな言語が…
"D" だけだと検索しにくいのでみんなで各ページ1回は "D programming language" と入れておくようにしない? と Walterタン が 提案 してました。まあそうだよね。日本語で検索かける場合は "D言語" があるから 問題ないか。 皆さんもう実行していると思い…
Rayerd メンバ変数をメンバ関数の引数で渡してメンバ関数の独立性を高めるってどの程度まともなやり方でしょうか http://twitter.com/Rayerd/status/3812033196 まずは普通にメンバ変数にアクセスをするとこんな感じ. class Parser { this(string[] tokens)…
文献整理がうまくできない. 引用文献とか被引用文献の関係を把握するうまい方法はないものか. ACM portalでは物足りない. 自分の興味がある文献だけをツリー上に表示できないか? 自分のプレゼンスタイルが確立されてきた. こうなるとパワーポイントでは…
synchronized member functions now implicitly typed as shared. class A { synchronized void f(){} } void main() { A x = new A; x.f(); // error auto y = new shared(A); y.f(); // ok }
こういう形で報告した. 3282 – The overload and override issue of const/immutable member functions import std.stdio; class Base { string f() { return "Base.f()"; } } class Derived : Base { string f() { return "Derived.f()"; } string f() con…
そういえばバグ報告忘れてた. 昨日のこのコードを警告付きでコンパイルすると、 class Base { void func(){} void func(int){} } class Derived:Base { alias Base.func func; void func(int){} void func(int) const{} void func(int) immutable{} void fu…
偶然なのだろうが、ウサギのキャラクターが出てくるところまで一緒だ。 「不思議の国のアリス」の時代から案内人はウサギと決まっている.
Version D 2.032 Sep 2, 2009 New/Changed Features * synchronized member functions now implicitly typed as shared. * std.algorithm: added minPos * std.format: added raw specifier for reading * added File.byChunk * std.algorithm: added more u…
スコア更新.
わかる・・・わかるぞ!!!!!!!!!!!!! 幸せな気分になる.
例えばO'Camlでは、テーブル等の構築中はmutableで、構築が終ったらmutableを外すといったことができません。抽象型にしてアクセサを用意すればいいのですが、パターンマッチが使えなくなるので微妙です。というわけでD言語の推移的constは素晴しいと思いま…