3年ぶりの更新

[D言語]
3年以上ブログを放置状態のままでごめんなさい
「digitalmars.D」ニュースグループ見てたら、このブログへのリンクがあったのを見て、久々に更新。

VSpluginDのソースコードは「dsource.org」に残ってるのが最新と思います。
http://www.dsource.org/projects/vsplugind/browser/trunk?rev=85


ここ3年位のD言語
・2007年 Visual Studio 2008 Shell Mode(製品版 VS なしでも独自アドインを動かせる機能)がアナウンスされてたので少し触ってた。
・2008年 Learn to Tango with D ⇒ 書籍購入してはみたものの、使ったことないライブラリのため、ほとんど読まず積読状態。
・2009年 D Compiler for .NET(http://dnet.codeplex.com/)が面白そう ⇒ 現在、更新が止まってる?。
・2010年 Safari BookshelfのLibrary Subscriptionを購読してるので「The D Programming Language」のRoughCuts版を読み進めてる所
0⇒http://my.safaribooksonline.com/9780321659538

テスト用エディタ

ここ数日はScintilla使ったIDEもどきのエディタを作ってました。
D言語パーサのテスト用なので、
今のところエディタ部分以外は見かけだけで中身は空。
VisualStudioっぽいドッキングコントロールにはDockPanel Suiteを使用。

少し前にnewsgroupでScintillaD言語対応する予定って話が出てたので、
CVSから最新版取ってきて使ってみたんですが、細かいバグが結構ある。


↓今のところこんな感じ

Cell Speed Challenge 2007

http://www.hpcc.jp/sacsis/2007/cell-challenge/
Cell Broadband Engineを使ったプログラムコンテスト。
規定課題部門はfloat値のキー + 値のソーティング。
最初見たときは簡単すぎでは? と思ったけど、よく考えてみると、
いろんな要素が絡んできて、意外と難しい。
特にSPEのLS容量、256KB内にデータを収める必要があるって点が。


限られたメモリで、並列ソートするってことで、
何らかのマージソートアルゴリズムが有力だと思うけれどが、Cellの浮動小数点のデータ形式はIEEE754と同じらしいので、
RadixSortも選択肢に入ってくるかな、と思った。

http://www.radiumsoftware.com/0310.html#031028
http://www.stereopsis.com/radix.html

試しに、家のPC上でfloatのキー値のみをソート、実行時間を計測したところ

STL使ったクイックソートよりRadixSortの方が平均4〜5倍程度速い。
下手にSPE×8で並列マージソートを行うよりも、PPE1個だけ使ってRadixSortした方が速い、
といった間抜けなことになる可能性もあるんではないかと。

開発状況

ここんとこずっと放置中。たまに外国の方からメールがきたりして、
一応使ってくれてる方はいるようなので、こんな状況で申し訳ない。

VSpluginDは、今後もちゃんと開発続ける予定です。D言語のソース書くのに自分で使ってるので。
近い内に、最新のVS SDKをベースに作り直すつもり。

他に、現時点で開発が続けられていて、期待できそうなD言語IDE

位?特にDescentの方は頻繁にsvnにcommitされていて、将来に期待が持てそう。

beta1.0 released

http://trac.dsource.org/projects/vsplugind/

http://www.dsource.org/projects/vsplugind/
dsource.orgにアカウントとりました。
beta版、開発機以外、試せる環境持ってないので、VS SDK入ってなくても動くか未確認です。試せる環境もってる方、動作確認できたら報告お願いします。


必要条件

  • VS2005 Standard以上のEdition. (Express不可)
  • C:\dmd\にコンパイラがインストールされてること。

使い方:

  • 新規プロジェクトの所にDProjectがあるのでそれを選択。
  • main.dを開く。D言語のSyntaxHighlighingがされてるはず。
  • Build。エラーがあれば下にリスト表示される。
  • Intellisense 適当な所でCtrl+Spaceで候補表示。まだ大分適当。