rieslingの日記

やる気のないサイト
2003 | 12 |
2004 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2005 | 01 | 02 | 03 | 04 | 05 | 06 | 10 | 11 | 12 |
2006 | 01 | 12 |
2007 | 01 |
2010 | 02 |
 

2010-02-12 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

2007-01-03

[] dmd 1.00

予定より少し遅れてましたが、今日、ようやくdmd1.00がリリースされました。

これを、きっかけにD言語ライブラリの開発がもっと進むといいんですが。

少なくともPhobosは、もう少しまともになってほしい。

[] テスト用エディタ

ここ数日はScintilla使ったIDEもどきのエディタを作ってました。

D言語パーサのテスト用なので、
今のところエディタ部分以外は見かけだけで中身は空。

VisualStudioっぽいドッキングコントロールにはDockPanel Suiteを使用。

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


↓今のところこんな感じ

f:id:riesling:20070104000920p:image

h_sakuraih_sakurai 2007/01/06 23:40 年末年始のみ更新みたいな。

2006-12-29

[]約1年ぶり

今年は一年通して、特に何もやってないとしか。
来年はもう少し頑張りたい。

3日後にはD言語もようやくver 1.0になる予定らしいので、なんか面白いことをやりたいなと思う。

[] 開発状況

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

VSpluginDは、今後もちゃんと開発続ける予定です。D言語のソース書くのに自分で使ってるので。

近い内に、最新のVS SDKをベースに作り直すつもり。

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

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

[] 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した方が速い、
といった間抜けなことになる可能性もあるんではないかと。

2006-01-13

[] 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で候補表示。まだ大分適当。

2006-01-09

[]std.gc.minimize

http://d.hatena.ne.jp/ultraist/20060108/p2

を見て、GCの動作が気になったので少し調べてみたけど、GCのminimize、実装が空になってますね…昔からこうだったっけ?

明示的にfullCollectとか呼び出しても、メモリはGC内部にキャッシュされたままで、OSには返却されないっぽい。もし、他にGCの余分なキャッシュ開放する仕組みが入ってないとすると、一時的にメモリを大量に使用するアプリは、そのままずっとメモリ占有したまんま、ってことで問題かも。

[]VS2005のデバッガ

VS2005でD言語アプリのデバッグがうまくいかない。
関数ブレークは使えるので、エディタ側でブレークポイント設定する部分がおかしいんだと思うけど、設定の仕方が見当たらない。

VS SDKにDebugging SDKってのが含まれてるので、カスタムデバッガ作るべきなんだろうか。

2006-01-07

[]

新年明けましておめでとうございます。既に一週間たってますが。
去年はさっぱりまともな活動できてなかったので、今年は何とかしたいです。
とりあえず、プログラムや勉強に費やす時間を増やさないことには…。

[]

昨年中に出す予定だったけれど順調に延期中。
インストールに必要なPLK(Package Load Key)を入手する方法が前と変わってて、MSのサポートに問い合わせやらなんかしてたら、年末にかかって今に至る。まだ時間かかりそう。

http://www.gotdotnet.com/workspaces/workspace.aspx?id=a8bb2c16-c6b8-471f-b185-79a02ac8e50e
一月程情報が遅れてますがVisual ILがソース公開されてます。見てみたけどMPF(Managed Package Framework)使わず直接COMInterop触ってる。

で、http://blogs.msdn.com/craigskibo/archive/2005/12/07/501208.aspx
のコメント欄見て知ったけれど、
VS SDKのライセンスが改定されてオープンソース可になってたそうです。
問題ないようならVSpluginDもソース公開します。

h_sakuraih_sakurai 2006/01/08 14:00 あけましておめでとうございます。
着実に、開発進んでるようですね。

rieslingriesling 2006/01/09 08:16 亀のような歩みで、少しずつ進めてます。
オープンソースにすることで、誰か興味ある人が開発に加わってくれることを期待してたり。

2005-12-20

[]VS2005

VS.NET theSpoke Premium持ってる人対象のキャンペーンで
VS2005 proの無償提供が始まりました。

既にspoke版は購入して登録してあったので早速ダウンロード開始。
VS SDK使う関係でpro版を買うつもりだったので助かった。

VS SDKの方はDec CTPが少し前に出た。何か毎月CTP版を出すらしい。
で、4ヶ月ごとに正式版をリリース。Dec CTP版にはIron Pythonのサービスが新しくサンプルとして入ってる。Iron Pythonって触ったことないんで後で触ってみたいと思う。

[]

VS2005用D言語pluginは年内に公開します。Intellisense周りが非常に適当ですが。ローカル変数補完と、簡単なメンバ補完しかできてません。使えるかどうかはまだ微妙。

Phoenix RDK、少しだけ触ってみた。Dのfrontendが既にAST作る作業はやってくれてるので、そっからASTの各ノードで対応するPhoenixのHIR吐くようにすればいいわけだけど、結構大変。

2005-12-06

[]Phoenix RDK (Reserch Development Kit)

http://www.research.microsoft.com/phoenix/

Microsoftが何年か前から開発している次世代コンパイラフレームワーク
研究用途、個人的な使用のみに使えるbeta版が一般にも公開されてます。将来的には商業利用なんかにも可能になるって話も。

2005-11-10

[]VC++ Expressの拡張性制限

VS Expressは拡張性周りが大幅に機能制限されている。
VSの拡張性は

  1. マクロ
  2. アドイン
  3. VS SDKを使ったパッケージ

の3種類。説明はここのがまとまってる。ところでVSのマクロって便利そうだけど
使いこなしてるって話は聞かない気が。

で、VSのExpress Editionはこれ3つとも、機能制限されてて使えない。

[]VC++ Express Editionを使ったD言語のビルド

Winkを使って適当に作ったデモFlash。
http://reverie.xrea.jp/files/VCExpress.htm

基本的にカスタムビルドステップ使ってMSBuildを呼び出してるだけ。
後はD用にプロジェクトテンプレートを追加。
D言語アイコンはid:lpszMarimo_11さんのを使わせていただきました。

使い方

  1. VC Expressをインストール
  2. コンパイラが"C:\dmd\bin\dmd.exe"以外の位置にある場合ソース修正、
    コンパイルしなおしてDMD.exeを差し替え。
  3. "C:\Program Files\"以下に"MSBuild"と"Microsoft Visual Studio 8"フォルダをコピー。usertype.dat作ってる人は上書きされるので注意。あと、C++のファイルも一緒にDのキーワードが色付けされるので注意。
  4. [Tools]-[Options]-[Text Editor]-[File Extension]で".d"拡張子をC++として登録。
  5. 後はFlashの通り操作。細かい部分はともかく一応動く。ただ、デバッガはダメっぽい。

2005-11-07

[]

http://msdn.microsoft.com/vstudio/express/
海の向こうではVS2005のLaunchイベントが始まってますが、なんかExpress Editionの製品版が、一年間、無料で提供されることになったらしいですね。今、ダウンロード中。

http://ascii24.com/news/i/topi/article/2005/11/07/658923-000.html
後、VS 2003 the Spoke Premiumの購入者を対象に、Visual Studio 2005 Professional Editionをダウンロード提供するって話も。