セレクターネームスペース
Xtalはセレクターネームスペースっぽい機能を有します。セレクターネームスペースを採用している言語としては、例えばECMAScript4があります。
Xtalではセレクターネームスペースというより、識別子となんらかのオブジェクト、二つのキーでメソッドを登録する、というような感じです。
簡単に例を示します。
// test_namespaceという変数に文字列hogeを代入 test_namespace : "hoge"; // Fooクラスを定義 Foo : class{ // barメソッドを定義 bar : method(){ println("bar"); } // test_namespaceネームスペースのbarメソッドを定義 bar$test_namespace : method(){ println("bar$hoge"); } } f : Foo(); // Fooクラスのインスタンス生成 f.bar(); // bar と出力 f.bar$test_namespace(); // bar$hoge と出力
デフォルトのネームスペースほ定義する機能はまだ構文的に迷ってるので未実装です。