データの入力と出力状況を分析するために
データ遷移分析用簡易言語(チューリング不完全)を作成してみました。
3つの簡易言語エミュレータ(関数)は上から
キュー
スタック
優先順位キュー
データ構造から編み出された簡易言語を解析します。
簡易言語はこんな感じです。
"i1 i2 i3 o1 o2 o3"
inputとして1,2,3を入れて
outputが1,2,3とでてくる。
よく考えると検証できるように簡易言語と出力結果を混せた何か。
普通に表現するならプログラムが"i1 i2 i3 o o o"で出力が"1","2","3"といった感じでしょうか。
その簡易言語が「キュー型」「スタック型」「優先順位キュー型」「特定不可」「それ以外の謎」いずれかを解析します。
このプログラムを作成していた時のバグらしいバグといえば
mysteryをmisteryと間違えたぐらいです。
なんやかんや英語がむずかしい。
言うまでもないことですが、手のひらぐらいの内容をスカイツリーぐらいの大きさに例えるぐらいの誇張をしています。
3つの簡易言語よりもその解析結果を表示する部分のデータ化がうまくできたかなと思っています。
ちなみにこのプログラムの内容が理解できるならば、
あなたは簡易言語を作成する能力をもっています。
すでに。