2015-01-01から1年間の記事一覧
この記事は、TSG Advent Calendar 2015の19日目です。16日目は lip_of_cygnus さんの 任意の数字を出現させる話でした。今回は、先月の駒場祭のTSGの展示で僕が展示した 「T-Rex Player」について書こうかと思います。 紹介 まずはこちらをご覧ください。T-R…
Brainf*ck esolangとしてはわりかし分かりやすい言語です。 ひとつの左右に無限に長いメモリと、その上を動くひとつのポインタからできています。 命令は8つあり、C言語風に表すと、 + ・・・memory[index] += 1; - ・・・memory[index] -= 1; > ・・・index…
Quineを楽して書きたい。Cなどの場合、自分で書く->コピペをするのはつらい。メタプログラミングしましょう。P124参照。 s = <<'HERE' #include<stdio.h> char s[1024]=@; int main(void){ char *p,*q; for(p=s;*p;p++){ if(*p!=64)putchar(*p); else{ putchar(123); </stdio.h>…
Quineを(とりあえず)書く eval s="print 'eval s='+s.inspect" $ cat quine.rb eval s="print 'eval s='+s.inspect" $ ruby quine.rb eval s="print 'eval s='+s.inspect"「Quine」・・「プログラムのソースコード」と「そのプログラムを実行した結果出力」…
i言語という独自言語でquineを書け、という問題でした。 変数を持つ場所としてスタックのみが使えるので、その上でどうにかしなければいけません。.icnファイルが実行できず、手元にいつも使っているパソコンがなかったので、excelのvbaでインタプリタを書く…