Bu sorudan ilham alındı .
Kullanıcıdan bazı verileri saklamasını isteyen bir program oluşturun ve program sonlandırıldığında, oturum verileri değiştiği sürece programın kendisini tükürün.
Kullanıcı daha sonra yeni oluşturulan programı açar ve verileri önceki programdan geri çağırabilir.
Komutları
KEY VALUE
: Setleri oturum değişkeniKEY
içinVALUE
*
: tüm verileri temizle! KEY
: silKEY
? KEY
: queryKEY
(yoksa: hiçbir şey yazdırmaz ve devam eder)- aksi takdirde programdan çıkın
Hiçbir anahtar veya değer boşluk içeremez. Yeni oluşturulan programın dosya adı programın sürümünü belirlemelidir, tarihleri veya sayaçları kullanabilirsiniz.
Örnek etkileşim:
name test store name = test
data is now { name: test }
0 1 data is now { name: test, 0: 1 }
? name output: test
! 0 delete 0
data is now { name: test }
hello good world data is now { name: test, hello: good }
the extra word "world" is ignored
egiwiwegiuwe the "otherwise" case: quit program
Kullanıcı yeni oluşturulan programı açar
? name output: test
name retest data is now { name: retest }
* clear
data is now { }
Örnek uygulama: https://gist.github.com/1128876
kurallar
- Quined programdaki yorumları veya önemsiz beyaz alanları korumanıza gerek yoktur: sadece işlevselliği ve verileri koruyun
- Harici depolama kullanamazsınız.
- Hile yok, diğer quine problemleri gibi.
- En kısa kod kazanır.
SELECT 1 AS ID, NAME AS BLAH UNION...