言語仕様
HelloPascal4の言語仕様は標準Pascalとほとんど同じです。
以下に示す機能はHelloPascal4でのみ有効です。
コンパイラ命令
'#'で始まるコンパイラ命令はプログラムの前に置きます。
サイズ指定の単位は integer 換算です。
- #include <filespec> 文字列<filespec>で示されるテキストファイルをソース内にマージします。
-
注:ソースファイルのあるフォルダからの相対アドレスで指定します。
- #stack <size> <size>に確保するスタックのサイズを指定します。
- #heap <size> <size>に確保するヒープのサイズを指定します。
- #library <filespec> 文字列<filespec>で示されるライブラリをインポートします。
- #option <string> <string>にオプション記号を含む文字列を指定します。
- 'g' 外部ファイル1をグラフィックストリームに割り当てます。
- 'o' 出力量制限を無効にします。
- 'd' デバッグコメントを出力します。
- 'r' 宣言部の順序の入れ替えを許可します。
- 's' 標準的でない構文や機能を使用できなくします。
- 'c' 識別子の大文字小文字を区別します。
アドレス演算子
アドレス演算子 & によってアドレスを取得できます。
また配列はその最初の要素を指すポインタに代入できます。
文字列型
文字列型 string を使用できます。
連結演算子 & によって文字列同士や他の型との連結ができます。
フィールドアクセス演算子の拡張
フィールドアクセス演算子 . を使って第一引数の指定できます。
たとえば、 r := f(x,y) は、 r := x.f(y) と書ける場合があります。
静的データの定義
型名に続いて括弧で括ったデータ列を置くことで静的データを定義できます。
配列および構造体をフィールドに持つ場合さらに括弧で括ります。
データを省略するとゼロで埋められます。
可変フィールドをもつレコードには適用できません。
クラスの定義
キーワード class を使ってデータメンバとメソッドをもつクラスが定義できます。
また、キーワード uses を使って名前空間の指定ができます。
この機能はユーザー定義ライブラリの代替となる機能です。
識別子によるラベル
数字のほかに識別子によってもラベルが定義できます。
HelloPascalの解説
<TOP>