奇妙な言語の最近のブログ記事

Whitespace

| # Comments
Rubyで作る奇妙なプログラミング言語 ~Esoteric Language~にて紹介した本の中から、「Whitespace」言語のJava実装ができました。

本来 "whitespace" とは「空白」や「余白」を意味する英単語である。多くの一般的なプログラミング言語では空白に相当する文字(スペース、タブ、言語によっては改行も)は単語間の区切りとして使われている。しかし、言語 Whitespace においてはプログラムは空白文字だけで構成される(それ以外の文字列はコメント扱いで無視される)。そのため、一見するとプログラムであることすらわからないという珍しい言語である。
Wikipediaより

Brainf*ck

| # Comments | 1 Trackback
昨日に続きまして、 Rubyで作る奇妙なプログラミング言語 ~Esoteric Language~にて紹介した本の中から、「Brainf*ck」言語のJava実装です。

Brainfuckの言語仕様

実行可能な命令は「8つ」のみである。

  1. > ポインタをインクリメントする。ポインタをptrとすると、C言語の「ptr++;」に相当する。
  2. < ポインタをデクリメントする。C言語の「ptr--;」に相当。
  3. + ポインタが指す値をインクリメントする。C言語の「(*ptr)++;」に相当。
  4. - ポインタが指す値をデクリメントする。C言語の「(*ptr)--;」に相当。
  5. . ポインタが指す値を出力する。C言語の「putchar(*ptr);」に相当。
  6. , 1バイトを入力してポインタが指す値に代入する。C言語の「*ptr=getchar();」に相当。
  7. [ ポインタが指す値が0なら、対応する ] の直後までジャンプする。C言語の「while(*ptr){」に相当。
  8. ] ポインタが指す値が0でないなら、対応する [ にジャンプする。C言語の「}」に相当。
Wikipediaより

HQ9+

| # Comments | 1 Trackback
Rubyで作る奇妙なプログラミング言語 ~Esoteric Language~にて紹介した本の中から、「HQ9+」言語をJavaで実装してみます。

HQ9+」言語とは、

  • Hコマンドは文字列"Hello, world!"を出力する。
  • Qコマンドはプログラムのソースコードを出力する。
  • 9コマンドは『99 Bottles of Beer』(アメリカの数え歌で、プログラミングの例題でよく利用される)の歌詞を出力する。
  • +コマンドはアキュムレータをインクリメント(1だけ増やす)する。
Wikipediaより

です。

というわけで早速実装してみます。

Twitter Icon

AdSense

Creative Commons License
このブログはクリエイティブ・コモンズでライセンスされています。
Powered by Movable Type 5.14-ja

Google検索

カスタム検索

2013年10月

    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31