2004-04-01から1ヶ月間の記事一覧

UML and DSLs Again(2)

Visual Studioのアーキテクト(設計者)であるKeith Short氏のblogから前回の続きを読んでいこう。例によって翻訳はテキトーである。 我々は熱狂的なUML記法やUML図のサポーターである。私の近くの開発者の仕事場を見渡せば、UMLクラス図やシーケンス図が書き…

UML and DSLs Again(1)

Visual Studioのアーキテクト(設計者)であるKeith Short氏のblogから。・UML and DSLs Again http://blogs.msdn.com/keith_short/archive/2004/04/16/114960.aspx DSLsというのは、domain-specific languages。直訳すれば「特定領域言語」。ここではモデル化…

Borland Together体験記(3)

クラスの名前をファイル名とするファイルを作ったり、雛形を書いたりする作業は、普段のプログラムでも作業時間の1,2割を占めているだろう。まして、リファクタリング作業を行なうときなど、ほとんどがどこかのクラスのメソッドを別のクラスに移し変えるだと…

Borland Together体験記(2)

Togetherは体験版なので、適用できるパターンが限られているものの、クラスのメソッドをこちらのクラスからあちらのクラスに移動させたりするのはdrag & dropで行なうことが出来る。(体験版では出来ない?) クラスのテンプレートをUML図の上にマウスでドロッ…

ネットで講義を配信しちゃうぞ、と。

昨日、久しぶりに講義っぽいことをした。ホワイトボードの代わりにOffice One Noteを立ち上げ、タブレットで画面に殴り書きながら説明をするという方式を採用した。 これが意外とわかりやすいし、聞くほうがノートをとらなくとも電子的に記録が残せるのでな…

ゲームプログラムの教育

そんなわけで、たったひとりのためだけに教材を用意した。構想は以下のような感じだ。 いまどきのしとが、いつまで経ってもポインタあたりでつまずくのは、計算機アーキテクチャが理解できていないからだと勝手に決めつけ、アセンブラレベルから出発し、つぎ…

今日はオヤシュミ

off

明日・明後日は、彩姫 http://www.ayahime.com/ のなかの人がプログラムを教わりに来るので、こやつのお尻をいっぱいいっぱいぺんぺんするためにいまのいまから教材を用意しないといけない。 そんなわけで、今日から3日間、この日記は、オヤシュミである。2…

Borland Together体験記(1)

VS2005ではUMLによるモデリングは採用されないということで、BorlandのTogetherを導入してUMLを用いて設計していくべきか、VS2005が出て市場が落ち着くまで静観すべきなのか容易に結論が出せなくなってしまった。 そこで、Borland Togetherの体験版をインス…

MicrosoftはUMLを敬遠

昨日、いずれUMLを用いて開発していかなければなる、と書いたばかりだが、気になるニュースがあるので紹介したい。 「Whitehorse」は、Windowsソフトウェア開発に革命を起こすか? - CNET Japanhttp://japan.cnet.com/news/ent/story/0,2000047623,20064465,0…

UMLを用いたモデリング

世のなかUMLでの設計・開発がさかんに言われて来ている。やねうらおも、時代の趨勢には逆らえないので、いずれは否応なしにUMLを用いてモデリングを行なわなければならないと考えている。 UMLの表記自体は別段難しくはない。UMLの資格試験やら何やらがあるが…

これならわかる応用数学

3月22日に私がこの日記で「これなら分かる応用数学教室―最小二乗法からウェーブレットまで」を紹介したところ、アマゾンの売り上げがすごいのだ。http://d.hatena.ne.jp/asin/4320017382内容については、こんな感じだ。 http://d.hatena.ne.jp/xatm092dora/2…

yaneSDKdotNET始動!?

http://yanesdkdotnet.sourceforge.jp/それらしいページをsourceforgeに作ってみたが、まだ準備中である。*1 何せ、本格的に開発を開始するのは、ゴールデンウィーク明けからだ。いったん着手するとあとは早いので、すぐ出来る予感。<ほんまか *1:uploadの…

.NETのILの仕様(3)

おまけに、CILから.NETのライブラリやら何やら呼び出すことも簡単である。ふつう、言語を自作すると言語に付随するライブラリを作ったりする作業が出てくるが、そういった、言語とは本質的に関係のない(と思われる)作業に手間暇かける必要がない。誰でも気…

.NETのILの仕様(2)

コンパイラを自作ようと考えたことのある人ならばわかるだろうが、Pentiumのアセンブラですら、レジスタ割付はかなり難しい問題だ。まして、レジスタにほとんど直交性のないプロセッサや、パイプラインを考慮した最適化をコンパイラに行なわせるのは結構辛い…

.NETのILの仕様(1)

それでは、CIL(Common Intermediate Language:(.NETで使用する)共通中間言語)について見ていこう。CILの言語仕様は、CLI(Common Language Infrastructure:共通言語基盤)に含まれる。そこで、CLIの仕様を参照するとヨロシイ。 ECMA-335: http://www.ecma-inte…

yaneuraoGameSDK.NET構想

OneNote2003のテストがてらに適当に書いてみたyaneuraoGameSDK.NET構想。 http://yaneu.com/cgi/uploader/files/yaneSDK4DPlan20040415.mht 結構いいアイデアだと思ったので、炎羅君に見せたら「落書き読めナー」と言われて大ショック。読めないのか..私の…

.NETの威力

yaneSDK4DをC#に移植されているmeiさんが、VB(VisualBasic.NET)からyaneSDK4Cs(C#版yaneSDK)を呼び出すことに成功した。http://d.hatena.ne.jp/akiramei/20040412#p1 これは素直に喜んで良いのだろうか?それというのも.NETでのクロス言語開発はそう単純でも…

GC付きの言語での大規模開発

http://d.hatena.ne.jp/yaneurao/20040410#p1で、保守的なGCでは大規模開発は難しいんじゃないかと書いたが、2chのD言語スレの反応を見ていると、どうも私の書き方がまずかったんじゃないかという気がしてきたので補足してみたい。 まず、一般的なGCの仕組み…

SunとMicrosoftとの和解

先日、SunとMicrosoftとが和解した。てっきりエープリルフールのネタかと思った人も多いだろう。そのいきさつについては、次の文章が詳しい。 http://www.microsoft.com/presspass/legal/04-02-04SunPressConference.asp文中で何度か説明なしに出てくるIPと…

ネイティブコンパイラの善悪

C#を始めとして.NET系のcompilerはネイティブコードを生成できない。VC++(Visual C++)だけはネイティブコードを生成しようと思えば出来る。思うのだが、VC++でネイティブコードを生成できる以上、マイクロソフトの手にかかれば、C#であろうが、VB(Visual Bas…

conservativeなGC

BoehmのGCは保守的(conservative)なGCである。これは、root集合から辿れるならば、配列の中身すべての要素を辿ることを意味する。画像imageのように大きな配列を扱う場合、こんなことをされてはたまらない。配列の要素がでたらめな数字だと、そんなところを…

オセロ必勝法

6×6のオセロがコンピュータで完全読み切りをした結果、後手必勝だということが判明した。1993年の出来事である。イギリスの研究者Joel Feinstein(ファインシュタイン)が発表している。http://www.maths.nott.ac.uk/personal/jff/othello/6x6sol.htmlSGIのマ…

64bit processor

私の一昨日の日記 http://d.hatena.ne.jp/yaneurao/20040406#p1 に対して次のようなコメントをもらった。 サーバアプリケーションにJavaが多いことを考えると int32にペナルティーの付くプロセッサがこれから開発されるとは 思えないのですがいかがでしょう…

winnyの匿名性(2)

非対称暗号とは、対となるふたつの鍵を使って暗号化・復号化する暗号方式である。このふたつの鍵をA,Bとしよう。元文章をAをつかって暗号化し、Bを使って復号化するのである。つまり、相手にはAだけ渡して、暗号化してもらった文章を送り、自分だけは…

変数のbit長

C言語に代表されるような関数型言語には、たいてい整数型(int型)がある。これが何bitであるかは言語系で違う。また処理系でも異なるかも知れない。C言語では、int型は実装依存であり、その処理系でもっともパフォーマンスの優れているbit長である。ふつう、3…

winnyの匿名性(1)

「Winnyが解読できるのは分かっていた」 〜ネットエージェント社長 http://www.itmedia.co.jp/lifestyle/articles/0402/26/news078.htmlの記事を見てて思うんだが、「Winnyが解読できる」なんてことは誰でもわかっていたことじゃないのだろうか?winnyなんて…

Zobrist Hash

Game Programming Gems4(ISBN:1584502959)の内容は、くだらない。1,2もそうだが、3,4はかなり退屈な内容だ。まあ、洋書ならば6000円程度で買えるので高いとは思わないが、訳本(1,2しか出ていないが)は12,000円+税もするのでとてもお勧めは出来ない。以前、自…

GPUで行なうNN(ニューラルネットワーク)

GPU(Graphic Processing Unit)の進化はめざましいものがある。PentiumMMXの時代は、プロセッサを強化して音楽からグラフィックまですべてをプロセッサベースで行なうという戦略を打ち立てていたゲイツ氏も(MMXの略がMultiMediaExtentionの略だということから…

新潮文庫

ずいぶん前に新潮文庫の100冊 http://www.neic.co.jp/pc/x5PRODUCTS/culhobby/titles/shincho/ というCD-ROMが出た。私は、以前これを購入したのだが、インターフェースが凶悪すぎて使いものにならない。MacとWindowsとハイブリッド版にするため、Directorと…

GC付きの言語におけるゲームプログラミング(2)

さて、携帯のような省メモリ環境におけるGCのまずさを書いたところで、Windowsマシンのようにふんだんにメモリのある環境でのGCの挙動について考えていこう。まあ、メモリがふんだんにあるとは言ってもビデオメモリのようなリソースは限度があるので、unmana…