近&況

Recent Posts
Edit

プログラミング言語「PPAP」を作りました

2017-01-06
Tech

プログラミング言語「PPAP」を作りました。

I have 80 Pen
I have 65 Apple

Uh! Put-Pen
Uh! Put-Pen
Uh! Put-Apple
Uh! Put-Pen

実行するとPPAPと出力されます。

% ppap exec ppap.ppap
PPAP

ソースコード

https://github.com/yhara/ppap-lang

FizzBuzzも書けます。

宣伝

このような奇妙なプログラミング言語に興味がある人にぴったりな書籍が存在します。

今ならマナティというマイナビのIT系電子書籍ストアから購入すると割引になっており、2,041円でPDFが手に入ります。1月10日までです。これに合わせようと思ったのに年始になってしまった。

言語仕様

「I have」はレジスタの宣言です。以下はPenというレジスタを用意し、初期値として50を代入します。50個でもPenなのは仕様です(Pensでは動かない)。

I have 50 Pen

PPAP言語にはさまざまなコマンドがあります。コマンドを実行する場合は「Uh!」と気合を入れる必要があります。以下はレジスタPenの中身を数値として出力します。

Uh! Print-Pen

これはラベルです。ジャンプ命令の飛び先として使用します。

Apple-Pen

他にも四則演算、比較などの命令があります。詳細はREADMEを参照してください。レジスタ名・コマンド名には必ず「p」を含めるという仕様にしたため、「>」はありますが「<」がありません。何か良い英単語をご存知でしたらgithub issuesTwitter等で教えてください。割り算の余りを取る命令(mod,「%」)も欲しいですね。

あわせて読みたい

Rubyの作者、まつもとゆきひろ氏の新作。新しい言語「Streem」を実装するという雑誌連載をまとめたもの。

Quineや「絵みたいなソースコード」といったヤバいプログラミングに関する本。