EGL プログラム内の変数および定数の予約ストレージ。 定数値は、実行時に変更することはできません。
すべての EGL 変数を明示的に宣言する必要があります。他の言語の中には、変数を宣言しなくても使用できるものがありますが、EGL では宣言しなければ使用できません。

customerBalance DECIMAL(9,2);
myCustomer CustomerRecord;
myDictionary Dictionary
{
empnum=0005,
lastName="Twain",
firstName="Mark",
birthday="021460"
};
型の概念は、特定の変数や式が値を表す方法を説明します。型はまた、互換性を判別します。 例えば、ストリングに数値の文字表現を追加したり、文字の整数コード・ポイント表現に数値を追加したりすることはできますが、 文字に数値を追加することはできません。
EGL には、簡素で単純な INT や CHAR などのプリミティブ・データ型があります。 この言語には、型として機能する複雑なパーツもあります (例えば、JSF ハンドラーとして知られる JSFHandler 型のハンドラー・パーツを持つことができます)。さらに、EGL では次のテーブルで説明するように、変数を定義する際に型拡張として 2、3 の特殊文字を使用します。
| 文字 | 例 | 意味 |
|---|---|---|
| anInt INT; | この型の単一インスタンス。これが値型 (参照ではなく) の変数である場合は、データを含む名前付きのストレージ領域です。 | |
| [] | anIntArray INT[]; | この型の配列。配列を参照してください。 |
| ? | aNullableInt INT?; | NULL 値を含むことのできる変数。NULL 値および NULL 型を参照してください。 |
const copyrStr String = "Copyright 2007 by CompanyB";
const myArray BIN[] = [36, 49, 64];
const myArray02 BIN[][] = [[1,2,3],[5,6,7]];
定数は、レコードまたはその他の複雑な構造に入れることはできません。
関数パラメーターの修飾子として予約語 const を含めることができます。詳しくは、パラメーター修飾子を参照してください。
const myString01, myString02 STRING = "INITIAL";
myVar01, myVar02, myVar03 CHAR(5);
myRecord01, myRecord02 ExampleRecord;