Hot Soup Processor(ホットスーププロセッサー)は、1995年からおにたまにより開発されているプログラミングツール、およびそのプログラミング言語である。略称はHSP

Hot Soup Processor
パラダイム 手続き型命令型
登場時期 1996年
設計者 おにたま
開発者 おにたま
最新リリース 安定版:3.6 / 2021年8月10日
評価版リリース 3.6RC2 / 2021年7月31日
影響を受けた言語 BASICC言語
プラットフォーム HSP2以前:Microsoft Windows
HSP3以降:クロスプラットフォーム
ライセンス BSDライセンス
ウェブサイト HSPTV!
テンプレートを表示

カテゴリ / テンプレート

歴史

編集

誕生とHSP2登場

編集

1994HSPlight SOUP processorLSPPC-9800 SOUP processor sequential output control processor: a text script interpreter for multi-purpose, multi-target[1] BASIC BASIC 

1995 Windows 3.1 HSP1.0[2]1996[3]

1997HSP2.0Windows95 323D1999Microsoft DXSD 200120012005ITHSP[4][5]HSP2.61 Visual Studio .NET 2003 使[6]

HSP3の登場

編集

200581HSP3.0OSWindows 98WindowsHSP2.x#

HSP3.02200781HSP3.1HSPPeasJavaHSPHSPLetBSD

2011913HSP3.3HSPDishiOSAndroidHSP3hsp3cnvC++

HSP3HSPTV!HSP3HSPTV!CGI[7] 2003HSP20132

特徴

編集

HSP[8]

HSPHSPCL

Windows使Mac OSHSP/MacLinuxWindows201841Raspberry PiLinuxHSP3 for Linux/Raspberry PiWindows

言語仕様の特徴

編集

HSP3.x

BASIC





使



2

使

DLLWindowsDirectXOpenGL3D



COM

開発環境

編集

スクリプトエディタ

編集

HSPFooty使

EXELet's HSPIC!Sato Icon ChangerHSP3.5(3.5 beta6)#packopt[9]

HSP3.XHSP2.XHSP2.X


Peasエディタ

編集

HSPHSP3.1

Peas[10]


HSP Document Library (HDL)

編集

HSPsprocketHSP3.0HSP HELP BrowserHSP3.2



HDLhs(HDL)htmltxthspas(HSP)[11]

言語仕様

編集

主な構文

編集

以下の表はHSP1.x系とHSP2.x系とHSP3.x系との違いである。

項目 HSP1.x系 HSP2.x系 HSP3.x系
定数 未対応 整数、文字列 整数、文字列、実数
変数の型 整数型 整数型、文字列型 整数型、文字列型、実数型、comobj型、モジュール変数(struct)型、ラベル型、拡張型
式の評価 演算子の優先度なし、左方優先 演算子の優先度あり
代入演算子 未対応 +=, -=, ++, -- +=, -=, ++, --のほか *=, /= 等、ほぼすべての代入演算子に対応
関数 未対応 対応(標準関数、ユーザー定義関数、拡張関数)
マクロ 仮対応 対応

HSP3.xHSP2.x#undef2.x,

HSP1.xHSP2.x使HSP3.xHSP3.xHSP3.x///HSP3.0

命令リスト

編集

これは、HSPで使う命令の一例である。

一般的な通常命令
命令 意味
mes 文字列を表示する
button 押しボタンを表示する。押された場合、指定されたラベルにジャンプする。
input 入力ボックスを表示する
pos 表示位置を指定する
picload 画像を表示する(ver3.31ベータ版よりも前のバージョンの場合、PNG形式はimgloadという拡張命令と Internet Explorer が必要)
color 色指定(RGB形式で、各要素0~255、十進法で指定)
if もし~ならば~する(分岐命令
font 文字列の大きさ・フォントを指定する
boxf 矩形を描画する
repeat repeatloop間の処理を指定回数繰り返す
loop
goto 指定したラベルにジャンプする
gosub 指定したラベルに行き、return があると元の gosub の次の行へ戻って実行
return
end プログラムを終了する
stop プログラムの実行を一時的に中断する
title タイトルバーに表示する文字列を指定する
screen 大きさ、位置などを指定してスクリーンを作る(bgscr命令で枠なしスクリーンも可能)

コード例

編集

Linux版HSP3における例

#include "hsp3cl.as"
mes "あいうえお"
stop

外部APIとの連携

編集

HSP は外部DLLライブラリやWindows APIとの連携にも対応している。

それぞれプリプロセッサを使用することで、Windowsのコモンコントロールを使用することができる。 また、それらのコントロールを最初から使用できるようにするモジュールスクリプトもHSP パッケージに標準で同梱されている。

その他

編集

一部バージョンにおいて、アンチウィルス製品マルウェアと誤認識される現象が報告されている[12][13]


出典

編集

関連書籍

編集

関連項目

編集

外部リンク

編集