編集:私の言語は、Javaとは異なり、複数の継承を可能にします。
教育、レクリエーション、潜在的に有用な目的のために、独自のプログラミング言語の設計と開発を開始しました。
最初は、Javaをベースにすることにしました。
これは、すべてのコードがクラスの形式で記述され、そのコードがVMによってロードされるクラスにコンパイルされることを暗示しています。
ただし、インターフェイスや抽象クラスなどの機能は必要ないため、除外しました。彼らはパラダイムを実施しているようで、私の言語はそれをしないようにしたいです。クラスをコンパイル単位として保持したかったのは、実装が便利で馴染みがあり、アイデアが気に入ったからです。
それから、クラスをstatic
ディレクティブを使用して定数と関数を提供する「名前空間」として、またはインスタンス化する必要のあるオブジェクトのテンプレート(「実際の」クラスの目的)として使用できるモジュールシステムが基本的に残っていることに気付きました他の言語で)。
今、私は疑問に思っています:コンパイル単位としてクラスを持つことの利点と欠点は何ですか?
また、私のデザインに関する一般的なコメントは大歓迎です。私の言語に関する有益な投稿は、http://www.yannbane.com/2012/12/kava.htmlにあります。