案外小さいClasses.pasの負荷と複素数

ECOだのTogetherだのは人に任せて、私はあくまで古臭く行こう…。

...\del10rtl>dir
 ドライブ D のボリューム ラベルは 秘密 です
 ボリューム シリアル番号は HOGE-FUGA です

 ...\del10rtl のディレクトリ

2006-01-14  19:04              .
2006-01-14  19:04              ..
2006-01-14  19:04                28 xclasses.dpr
2006-01-14  19:04            76,800 xclasses.exe
2006-01-14  19:06                11 xsystem.dpr
2006-01-14  19:06            17,408 xsystem.exe
2006-01-14  19:05            43,008 xsysutils.exe
2006-01-14  19:05                27 xsysutils.dpr
2006-01-14  19:07                23 xmath.dpr
2006-01-14  19:07            43,008 xmath.exe
2006-01-14  19:08                27 xvariants.dpr
2006-01-14  19:09            69,632 xvariants.exe
2006-01-14  19:11                24 xforms.dpr
2006-01-14  19:11           384,512 xforms.exe
              12 個のファイル             634,508 バイト
               2 個のディレクトリ   4,375,183,360 バイトの空き領域

単にそれぞれをusesしただけです。
こうして見る限り、(私が今までやってきたような)頑にClassesに依存しない、というのは、あまり利点無いですね。
あと意外なのがComObjで、こいつはClassesに依存してません。
逆に必要ないだろと思うVarCmplxは依存してます。ストリーミングに対応してるからです。
まあそれはそれとして、複素数といえば、演算子オーバーロードが追加されたんですからデモがてらに、Variantじゃない複素数も付けといてくれても…と思ったら案の定?$(BDS)\Demos\DelphiWin32\VCLWin32\ComplexNumbers\Vassbotn.Vcl.Complex.pasに存在してました。

Demonstrates the use of Win32 record operator overloading

なんて書いてますが、Variantによる余計な実行時ディスパッチも無く、型チェックもしてくれますので、絶対こっちのほうがいいです。
あ、Doubleベースなのが不満だ。DoubleをExtendedに置換、と。