与えられたときは、そのプログラムや関数を記述しなければならない空でない文字列SのN印刷可能なASCII文字†、終了コードで終了しますプログラム出力C、Cは位置0でASCIIコードポイントであるSを。あなたが書いたこのプログラム意志に加えて、出力プログラムP、実行したときに、それが終了コードで終了し、このようなことをC '、C'の中の位置1でのASCIIコードポイントであるS。プログラムPは別のプログラムP 'を出力します。このプロセスは、Sに文字がなくなるまで繰り返されます。。これが行われた後、何も出力せず、オプションの改行が続きます。終了コード0で終了します。
†両端の文字0x20を0x7e含む。
いくつかのルール:
- 自己修正プログラムは許可されていません。ソースをSTDOUTに出力する必要があります(または、最初に値を返す)
- 独自のソースコードを読むことはできません。
バイト単位の最短のプログラムが勝ちます。
いくつかの初歩的なテストでは、このルビースクリプトを使用できます。(最初の引数はスクリプトの呼び出し方法、2番目はプログラム、3番目は入力文字列です。)
仮説の例
プログラムはであると言いFOOます。文字列「ABC」を指定すると、が出力されますBARA。このプログラムは、コード65を出力して終了しますBARB。これは、コード66と出力で終了しますBARC。このプログラムは、コード67を出力して終了しますBAR!。これは何も出力せず、codeで終了します0。
33 throw、任意の数字を投げるようなことをすることができます。OSレベルにマイナスを使用し、オフセットは-512です。多くのいずれかIDKが、私はここで探しています:complang.tuwien.ac.at/forth/gforth/Docs-html/...
0成功です。tio.run/nexus/...