Joe Drago's LOLCode Interpreter: (uses Parse::RecDescent) Available here: http://drago.cc/lol/ It currently handles these constructs: * HAI - Beginning of program * KTHXBYE - End of program * IM IN YR [loop label] / KTHX - Loop construct * GTFO - "break" (out of a loop) * IZ [conditional]? [statement] - If statement (shorthand) * IZ [conditional] O RLY? \n YA RLY [statements] \n NO WAI [statements] KTHX - If statement (long version) * I HAS A [variable name] - Variable declaration * I HAS A [variable name] ITZ [value] - Variable declaration with initialization * BTW [text] - Comment * VISIBLE [identifier] ( N [identifier] ...) - Output text * BIGGER THAN / SMALLER THAN - Conditionals (for IZ) * UP [variablename]!![optional number] - Increment variable