パーソナルブログメモリ

a = [1, 1]
for _ in "*" * 999: a += [sum(a[-2:])]
print(a)

データの構造を分析するために作った3つの簡易言語エミュレータ

2019-08-19 | プログラムをマスター計画2020

データの入力と出力状況を分析するために

データ遷移分析用簡易言語(チューリング不完全)を作成してみました。

 

 

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つの簡易言語よりもその解析結果を表示する部分のデータ化がうまくできたかなと思っています。

 

ちなみにこのプログラムの内容が理解できるならば、

あなたは簡易言語を作成する能力をもっています。

すでに。

 


最新の画像もっと見る

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。