Whitespaceって?
半角スペースとタブと改行(LF)を使って書くプログラミング言語です。
詳しくは、Wikipedia を参照して頂ければと。
なんで作ったの?
ksnctfにあるとある問題を解くのにWhitespaceの仕様を読んでいたら、
Whiteつながりで、クリスマスに作るか?と思い作りました。
使い方
githubからソースをダウンロードして実行してください。
go run wspace.go <-h | -d> <run | text | char> <whitespaceのソースパス>
run 指定されたwhitespaceのファイルを実行します
text 命令文に置き換えます
char 半角スペースを'S'、タブを'T'、改行(LF)を'L'に置き換えたソースを表示します
-d スタックやヒープの中身を表示します(一部のみ実装)
-h ヘルプもどきを表示します
コンパイルするときは
go build space.go
wspace <-h | -d> <run | text | char> <whitespaceのソースパス>
問題点
ひと通り実装してみたものの、ソースが読みやすくないのでおいおい改良するつもりです。
目的の問題を実行してみたら、うまく動かなかったのでどこかの実装に誤りがあります。
おいおい修正します。
0 件のコメント:
コメントを投稿