| パラダイム | 手続き型、オブジェクト指向、スクリプト |
|---|---|
| 開発者 | Carlo Kok、Innerfuse、RemObjects、Lazarus、Free Pascalチーム |
| 初登場 | 2000年 |
| 安定版リリース | 3.0
|
| タイピングの規律 | 強い |
| OS | Linux、macOS、Windows |
| ライセンス | カスタムオープンソースライセンス |
| ファイル名拡張子 | .pas、.ifs |
| 影響を受けた | |
| パスカル、オブジェクトパスカル | |
Pascal Script は、プログラミング言語Pascalをベースにしたスクリプト言語で、スクリプト可能なアプリケーションやサーバー ソフトウェアの自動実行制御を容易にします。これは、バイト コード用のコンパイラとインタープリタを含む無料のスクリプト エンジンによって実装されます。
Pascal Script はObject Pascal構造の大部分をサポートしており、 Delphi、Free Pascal、GNU Pascalと部分的に互換性があります。
当初はCarlo KokによってCajScriptとして開発され、バージョン2.23でInnerfuse Pascal Scriptに名前が変更されましたが、 RemObjectsに引き継がれ、再びRemObjects Pascal Scriptに名前が変更され、 Delphi IDEのオープンソースソフトウェアとして提供されました。バージョン2.07以降、CajScriptはFree Pascalに移植されています。2017年以降、Pascal ScriptはLazarus IDEの標準コンポーネントとして含まれています。
パスカルスクリプトを使用したソフトウェア
Pascal Scriptは、オープンソースのセットアップエンジンであるInno Setupのインストーラースクリプトで使用できます。Pascal Scriptを使用すると、新しいウィザードページの追加、DLLの呼び出し、カスタム動作やインストール条件の提供など、インストールとアンインストール時の柔軟性が向上します。[1]
Pascal Script は、Pascal Server Pages や maXbox (Delphi エンジンを内蔵したスクリプター スタジオ) での サーバー側スクリプトにも使用されます。
Windows用のバッチ指向の自動ファイル名変更ツールであるReNamerは、パスカルスクリプトで書かれたマクロによって拡張することができます。[2]
バージョン 1.2 のリリースにより、Lazarus IDE には Pascal Script エンジンが含まれるようになり、現在ではいくつかのコンポーネントの形で利用できるようになりました。さらに、SynEdit やTAChartなどの Lazarus の標準パッケージの一部はPascal Script をサポートしており、Pascal Script で記述されたマクロを使用して IDE を拡張することもできます。
科学技術分野におけるパスカルスクリプトの応用として、SCADA [3]、 ロボット工学[4] 、教育[5]などの報告が増えています。
歴史
Pascal Script は 2000 年に CajScript 1.0 から始まりましたが、すぐに CajScript 2.0 (後に Innerfuse Pascal Script 2.0 と呼ばれる) に置き換えられました。
バージョン 2.0 では、スクリプトを実行しながら解釈していましたが、スクリプト エンジンがコードを処理するたびに、すべてのコードを再解析する必要があるという欠点がありました。
Pascal Script 3.0 では、これが新しいモデルに変更され、コンパイラとランタイムが完全に分離され、コンパイルされたスクリプトを表すためにカスタム バイト コード形式が使用されるようになりました。このコンパイルされたスクリプトには、コードを実行するために必要な最小限のものだけが含まれていました。
その後、Carlo KokがRemObjectsに参加した際にRemObjects Pascal Scriptに改名され、現在はRemObjects Softwareによってメンテナンスされています。[6] Pascal ScriptのフォークはLazarus IDEのソースでメンテナンスされています。LazarusとFree Pascalのチームは、IntelプロセッサからPowerPCやARMなどの他のアーキテクチャにPascalScriptを移植しました。[7]
参考文献
- ^ Murphy, Craig (2004). 「Inno Setup Revisited」(PDF) . The Developers Magazine : 15–28 . 2019年5月25日閲覧。
- ^ 「ReNamer:Pascal Script - den4b Wiki」。www.den4b.com 。 2019年7月7日閲覧。
- ^ Tynchenko, VS; Kukartsev, VV; Tynchenko, VV; Chzhan, EA; Korpacheva, LN (2018年11月15日). 「石炭産業企業のコンベアショップオイルポンプステーションの監視と管理の自動化」. IOPカンファレンスシリーズ:地球と環境科学。194 ( 2):022044。Bibcode : 2018E&ES..194b2044T。doi :10.1088 / 1755-1315 / 194/2 / 022044。
- ^ リマ、ホセ、コスタ、パウロ、ブリト、タデウ、ピアルディ、ルイス (2019)。「Robot at Factory Lite 競技提案のためのハードウェアインザループシミュレーションアプローチ」。2019 IEEE 国際自律ロボットシステムおよび競技会会議 (ICARSC)。pp. 1–6。doi : 10.1109 /ICARSC.2019.8733649。hdl :10198 / 20934。ISBN 978-1-7281-3558-8. S2CID 183602145。
- ^ Romeo, A.「ロボットの制御とプログラミングの指導におけるシミュレーションツールの役割」CiteSeerX 10.1.1.529.8255。
{{cite journal}}:ジャーナルを引用するには|journal=(ヘルプ)が必要です - ^ 「Pascal Script | RemObjects Software」。RemObjects Software 。 2014年1月18日閲覧。
- ^ 「Pascal Script - Lazarus wiki」. wiki.freepascal.org . 2019年5月25日閲覧。
外部リンク
- パスカルスクリプトライセンス
- Lazarus wiki の Pascal Script の例
- PP4Sの短いチュートリアル
