まぁありがちな。
/************************************************** * * HQ9+ Interpliter on JavaScript * c4se project: http://c4se.sakura.ne.jp/ * Nemu Inoue: utakata.c4se@gmail.com * ***************************************************/ /* * HQ9+ Interpliter * var result = HQ9_(code); */ var HQ9_ = function(hq9_){ this.accumlator = 0; var code = hq9_.split(""); var result = ""; for(var i=0; i<code.length; i++){ switch(code[i]){ case "H": result += "Hello, world!\n"; break; case "Q": result += hq9_; break; case "9": result += (function(){ var beer = ""; for(var i=99; i>0; i--) beer += i+" bottles of beer on the wall,\n"+i+"bottles of beer,\nYou take on down, pass it around,\n"+(i-1)+"bottles of beer on the wall."; return beer; })(); break; case "+": this.accumlator++; break; default : break; } } return result; };
「HQ9+」という、おふざけ言語のインタープリタをJavaScriptで実装。まぁすぐできるわな。
インターフェイスは無し。適当に作るがよい。