経済性、表現力、優美
Nim は静的型付けを採用したコンパイラ方式のシステムプログラミング言語です。 Python, Ada や Modula など洗練された言語で定評のある思想を取り入れています。
経済性
- Nim は依存性のないネイティブ動作の実行可能ファイルを生成します。 生成ファイルは仮想マシンへの依存性がなく、小型軽量であるため簡単に配布できます
- Nim コンパイラと生成された実行可能ファイルは Windows, Linux, BSD および macOS など主要なプラットホームにすべて対応しています。
- リアルタイムシステムに対応した高速遅延参照カウント方式によるメモリ管理。
- オーバーヘッドのないイテレーターとユーザ定義関数のコンパイル時の評価、 値ベースのデータ型の優先的スタック割り当てなどモダンな概念を併用することで、 究極の高性能コードを実現します。
- 各種バックエンドへの対応: C, C++ または JavaScript へコンパイルします。 Nim は必要に応じて、さまざまなバックエンドとフロントエンドを使用できます。
表現力
- Nim は自己完結型です: コンパイラと標準ライブラリは Nim で実装してあります。
- Nim には抽象構文木 (AST) を直接操作できる無限の可能性を秘めた強力なマクロシステムがあります。
優美
- 必要性がないため Nim のシンタックスはマクロによる変更はできません — シンタックスは十分柔軟です。
- 局所型推論、タプル、ジェネリックと総和型によるモダンな型システム。
- ステートメントはインデントでまとめますが、複数行をまたがることもできます。