AB5で改良予定の定数機能ですが、下記サイトのような構成で作業を進めていきたいと思います。

 

たかが定数、しかしこれから作りこむにはボリューム満点な内容です。。。

http://dev.activebasic.com/dev_wiki/index.php/%E5%AE%9A%E6%95%B0

 

今や、定数はただのリテラル値に置換するための文字列だという安易な考えはどこにもありません。定数はその値を変数領域に保有し、初期化タイミングの様々な挙動に身を任せなくてはなりません。オブジェクト定数の存在も忘れてはなりません。

 

そのような場合、大体は書き込みロックがかかった変数という扱いになりますが、見ての通り、APIで定義される定数の多さは尋常ではありません。あの量を実行時に初期化するという荒業は避けたいもの。

そこで、AB5ではリテラル値として扱える定数とそうでない定数(書き込みロック変数)を識別することにより、できる限り高速処理を追求しつつ、柔軟な型設計に対応可能な仕様を整えていきたいと思います。

 

オブジェクト指向を追及するあまり、実行時に降りかかる負担がバカにならない場合があります。せっかくネイティブなAB、利点を忘れずにいきたいものです。