ゆの in HQ9Y+

ゆの in language

趣旨に反してるのばかり組んでるのは自分の能力不足ですはい。

HQ9Y+とは、プログラミング言語HQ9+の拡張版。

Hで"Hello world!"を出力、
Qで自身のソースコードを出力、
9で『99 Bottles of Beer』の歌詞を出力、
Yで"ひだまりスケッチ×365 来週も見てくださいね!"を出力、
+でアキュムレータに1を加える。

また、未知の文字が命令として与えられた場合は、なにも出力せず、その文字に次の文字(文字コードが1大きい文字)の実行内容を割り当てる。

インタプリタのソース

#!/usr/bin/perl
$_=join"",<>;
%h=('H'=>"Hello world!",'Q'=>$_,'Y'=>"ひだまりスケッチ×365 来週も見てくださいね!");
$h{'h'}=$h{"h"};$h{'q'}=$h{'Q'};
for($i=99;$i>0;) {
	$b=$i==1?bottle:bottles;
	$c=$i==2?bottle:bottles;
	$h{'9'}="$h{'9'}$i $b of beer on the wall,
$i $b of beer,
You take on down, pass it around,
".--$i." $c of beer on the wall.

";
}
for(split"",$_) {
	print$h{$_};
	$a=$_;
	if(!exists$h{$a}){$h{$a}=$h{++$_};}
}

HQ9Y+プログラムのソース

X / _ / X <: 来週も見てくださいね!

実行

$ ls
hq9y+.pl  yuno.hq9y+
$ ./hq9y+.pl < yuno.hq9y+
ひだまりスケッチ×365 来週も見てくださいね!
$