このブログはLazarus(FreePascal)アドベントカレンダー12日目の記事です。
ちょこっとしたプログラムの動作検証を行なうときにいちいちコードを書き込める場所を探すのが面倒なので、PascalPadというツールを作ってみました。
とりあえず機能的にはとりあえず使える段階なので、リリースを作っています。Windowsの実行バイナリも添付しておりますので良ければどうぞ。
Pascal Script
Lazarusには、初期状態でPascal Scriptというコンポーネントがインストールされています。Inno Setupの内部で使われているらしい*1。
これを使うとPascalコードを読み込んでそのまま実行 なんてことが可能です。Script といいつつCompile
メソッドを使ってコンパイルを行なったあと、Execute
メソッドで実行できる というものですが、別に両方のメソッドを一つのメソッド内で呼び出せばスクリプト言語のような感覚で利用が可能です。
また、プラグインを追加して内部で使える関数を増やしたり、OnCompile
イベントでTPSScript.AddMethod
メソッドやTPSScript.AddFunction
メソッドで関数を追加するなど、結構使い道はありそうです。
まあ多種多様なプログラム言語に気軽に触れられるようになった今、なぜわざわざPascalをユーザーに使わせるのか という問題もありますが、たとえばプログラムの内部処理をPascalで補うとか、ゲームなどの細かい挙動をスクリプトで制御するとか、使い道はありそう。