[トップ][一覧][最近の更新]

編集履歴:過去のバージョン

2009/10/10 01:35:15 JST時点でのNote:HSP3モジュール作成ガイドラインの内容

現在のバージョンとの差分を見る

編集履歴ページに戻る

  * 拡張子
  HSPはテキストファイルであれば拡張子は特に問わないが、.hspと.asを推奨している。
  
  ||推奨拡張子||推奨用途||
  ||.as||global定数~%globalマクロ~%globalエクスポート関数の宣言文~%モジュール本体||
  ||.hs||ヘルプソース||
  ||.hsp||スクリプト本体||
  * 標準モジュールとユーザー定義モジュール
  HSPに標準でついてくるエクスポート関数の宣言文(user32.asなど)については.asで統一されている。
  '''モジュールについては拡張子がまちまちである'''。
  その原因はモジュールを'''ブラックボックス'''か'''スクリプトの一部'''か、プログラマによって捕らえ方が異なるためである。
  
  user32.asのようなエクスポート関数の宣言は.asファイルを覗いたとしても関数の実装までは見えない。
  しかしユーザー定義命令のモジュールは実装が丸見えである。ブラックボックスではないためスクリプトの一部・サブルーチンの集まり、と捕らえ.hspの拡張子を当てはめるのである。
  
  ;;その原因はユーザー定義モジュールについて良質と認められた場合、標準モジュールとして同梱されるからである。
  
  あるモジュールAはmoduleA.asとして提供されていて、別のモジュールBはmoduleB.hspとして提供されていると、拡張子まで間違えないように打ち込まなければならない。
  
  テキストファイルであれば拡張子は問われないのなら、いっそのことモジュールファイル用の拡張子.mod相当を定義してもよさそうであるが。
  
  ||改定拡張子||改定用途||
  ||.as||global定数~%globalマクロ~%globalエクスポート関数の宣言文||
  ||.hs||ヘルプソース||
  ||.hsp||スクリプト本体||
  ||.mod||モジュール本体||
  
  * ヘルプファイルとドキュメンテーションコメント付モジュール
  HDL1.20からドキュメンテーションコメント付モジュールがサポートされた。
  これは要約するとモジュール本体にHSドキュメントを記述したファイルをHDLがヘルプファイルとして認識するというもの。
  従来のようにモジュール本体とHSファイルを別々に生成する必要がないため、モジュールとヘルプの整合性が高まる。
  '''ハイブリッドモジュール'''とでもいうべきか。
  
  ||改定拡張子||改定用途||
  ||.as||global定数~%globalマクロ~%globalエクスポート関数の宣言文~%オールドモジュール本体(HSファイルと別個)||
  ||.hs||ヘルプソース||
  ||.hsp||スクリプト本体||
  ||.mod||ハイブリッドモジュール本体(HSドキュメント内蔵)||
  
  ただし現状.modはスルーされる。
  
  * 慣例
  プラグイン等で提供される定義ファイルの多くはプラグイン名(略称)が用いられるので、
  ユーザー定義モジュールの定義ファイルの多くは「mod_」+「モジュール名(略称)」というようにモジュールであることを明示している。
  
  :プラグイン例:obaq.as
  :モジュール明示例:mod_menu.as / mod_img.as
  :モジュール非明示例:d3m.hsp / sqlele.hsp
  
  ||modプレフィクス||拡張子||分かりやすさ度||理由||
  ||mod_||.as||5||モジュールであることを明示し、なおかつブラックボックスとしている||
  ||mod_||.hsp||4||モジュールであることを明示している||
  ||||.as||3||ブラックボックスとしている||
  ||||.hsp||1||||
  
  
  * コメント
  - どうでしょう??