Calendarこの記事では題名に書いてある通り、Rustを使ってwhitespace言語を動かしてみました。みなさんのネタにしてください。Whitespaceとは?Whitespaceは、難解プログラミング言語の1つです。どのように難解なのか、実際にプログラムを見てみましょう。World」と出力されるものになっています。きれいなコードですね()もちろん手抜きではありません。Whitespaceのインタプリタをこちらからお借りしました。https://tech.hellorusk.net/entry/2018/11/23/221127また、私はRustを入れていなかったので、こちらのサイトにしたがって進めました。https://acn.blue/install-rust-language-windows-10/Rustのインストールはとても簡単です。入れちゃってください。実行ファイルがあるディレクトリまで移動し、以下のように実行してください。[実行したい.wsのファイル]このようにすると実行できます。以下のサイトを参考にしながら書いていきました。https://magazine.rubyist.net/articles/0022/0022-Legwork.html#fn:1何も見えなくて難しそうではありますが、割と単純です。アセンブリに近いものになっています。打ち込んでる途中に思考が途切れてしまうと、最初から見ないと書けない、みたいな問題が起きちゃいます。なんとなく作ったプログラム以下のプログラムは「1+1」の計算をしています。そこで以下のように、スペースを「S」、タブを「T」として書いてみました。SSSTSSSTTSSSTST1行目は「SS」でスタックに数値をプッシュしますよ~、という意味になります。その後、Sを0、Tを1として2進数で数字を表しています。先頭の数字は正負を表します。そのため「ST」は「1」となります。その後の改行は終端記号を表しています。3行目は「TSSS」でスタックの上から二つを足し算しますよ~、という意味になります。その後、「T\nST」でスタックの先頭の数字を数値として出力しますよ~、という意味になります。大雑把に説明するとこんな感じです。おわりに正直言って何の役にも立たないプログラミング言語の紹介をしました。いえ侮れないもので、WhitespaceでAtCoderを解いた方もおられます。https://qiita.com/rsk0315_h4x/items/a0a81c3d636029288fa6また、今回お借りしたインタプリタは未完成であるため、時間があるときに完成させたいなと思っています。upLoginユーザーは見つかりませんでした。