サンプル06まで

D版Queenもそろそろgenericを実装しはじめてもいい頃合いが来ました。

演算子をgenericで、って決めたので、template展開とかはどうでもよくて結びつきの解決だけでもできないと先へ進めないだけですけども。
で…Haskell風genericってどういうデータ構造をとれば楽に書けるのでしょうかね。泥臭く実装するのはできそうなのですが、下手にやると、モジュールの構文木間で循環参照ができて、中間ファイル対応に支障がでそうな。もっとも、プロトタイプは中途半端に中間ファイル対応を進めて破綻したので、優先順位としては、とにかくコンパイルできる事が最上位で、他はすべて二の次なんですけどね。
…循環参照でもなんでも適当にやっちまうか。

そういえば、dmdがTurboPascalのような中間ファイルに対応するとかしないとか、だいぶ前に少しだけニュースグループで飛び交ってたのはどうなったのでしょう。
現状ですと関連する全ソースを読んでいる事に変わりはないので、字句解析だけでも済ました状態で保存するだけでだいぶ速くなりそうな。
まあ、一般的な評価では、dmdは充分高速コンパイルなんでしょうけれどね。
遅いなんて思ってはいけないのでしょうね、きっと。