Whitespace 単語

15件

ホワイトスペース

1.2千文字の記事
  • twitter
  • facebook
  • はてな
  • LINE

Whitespaceとは、難解であるとされるプログラミング言語の一つである。
どう見ても実用的ではないネタ言語。

概要

Whitespaceは、空白という意味である。その訳の通り、このプログラミング言語空白あるいは空白に相当する文字空白文字、タブ、改行)しか扱わない。したがって、プログラムソースは一見すると真っ白であり、非常に解読困難である。なお、その他の文字はすべてコメント扱いされる。

構文

IMP(命)、コマンド、パラメータで構成される。

最初の文字は命を表し、Space(空白)はスタックの操作、Tab(タブ)&Spaceは演算、Tab&TabはヒープアクセスLF(改行)はフロー制御、Tab&LFは入を表す。

スタックの操作の場合、次の文字SpaceであればLFが来るまでSpace=0、Tab=1とする2進数入と判断され、スタックに値を積む。次の文字LF&LFであれば一番上のスタック削除する。

それ以外の命・演算についてはwikipediaexitを参照。

プログラム例

プログラムの基本はやっぱりHello worldを出するプログラムなのだが・・・。

                   
































 

もちろん真っ白なので読めません・・・・。
というかニコニコ大百科の記事じゃ空白・タブ文字が除去されるから再現できないだろ…。

 

プログラム説明

上記の空白文字だらけのプログラムを、SpaceをS、TabをT、LF改行と置き換えたプログラムを以下に表す。
すると、Space&Spaceスタックに値を入れ、それを文字として出するだけであると分かる。

S-S-STSSTSSS    // "H"(01001000)2=72スタックに入れる
T               // スタックに入れたを文字として出力
S-S-SSSTTSSTST // "e"(0001100101)2=101をスタックに入れる
T               // 上記と同じ
S-S-SSSTTSTTSS // "l"(0001101100)2=108をスタックに入れる
T
S-S-SSSTTSTTSS
T
S-S-SSSTTSTTTT // "o"(0001101111)2=111をスタックに入れる
T
S-S-SSSTSTTSS  // "," 以下説明省
T
S-S-SSSTSSSSS  // " "
T
S-S-SSSTTTSTTT  // "w"
T
S-S-SSSTTSTTTT  // "o"
T
S-S-SSSTTTSSTS  // "r"
T
S-S-SSSTTSTTSS  // "l"
T
S-S-SSSTTSSTSS  // "d"
T
S-S-SSSTSSSST   // "!"
T
S-S-SSSTSTS     // "改行"
T
S-S-      // "終了"

なお、分かりやすくするためにIMPコマンド、パラメータを"-"の記号で分けている。
何故72が"H"になるのかというと、"H"の文字コード72だからである。

 

関連動画

関連リンク

関連項目

この記事を編集する

掲示板

おすすめトレンド

ニコニ広告で宣伝された記事

記事と一緒に動画もおすすめ!
もっと見る

急上昇ワード改

最終更新:2024/10/11(金) 05:00

ほめられた記事

最終更新:2024/10/11(金) 04:00

ウォッチリストに追加しました!

すでにウォッチリストに
入っています。

OK

追加に失敗しました。

OK

追加にはログインが必要です。

           

ほめた!

すでにほめています。

すでにほめています。

ほめるを取消しました。

OK

ほめるに失敗しました。

OK

ほめるの取消しに失敗しました。

OK

ほめるにはログインが必要です。

タグ編集にはログインが必要です。

タグ編集には利用規約の同意が必要です。

TOP