Wise bir süre önce tasarladığım basit bir bitsel dildir. Python'un bitsel işlemlerine dayanır . Birçok işlemi vardır, bunların çoğu Python'daki eşdeğer sembolle aynı veya çok benzerdir.
:Yığının üstünü çoğalt?Yığının üstünü alta döndür!Yığının altını yukarı döndür[]yığının üst kısmı sıfır değilken döngü~yığının üstü değil (-(n+1))-yığının üst kısmını (-n)>bits yığınının üst kısmını bir kez sağa kaydır (n//2)<bits yığınının üst kısmını bir kez sola kaydır (n*2)^veya yığının ilk iki öğesi ( Python ile aynı )|veya yığının ilk iki öğesi ( Python ile aynı )&ve yığının ilk iki öğesi ( Python ile aynı )
Wise'da bir tamsayı yapmak oldukça basittir, sıfırla yapabilir ::^ve artırabilirsiniz , ~-böylece sıfır yapar ve bir sürü kez arttırabilirsiniz. Ancak -işleri kaldırırsak biraz daha ilginç hale gelir.
Kalan işlemleri kullanarak her sayıyı yapmaya devam edebiliriz. Örneğin burada 3
~<<~
Bu eserler nedeniyle ~dönüşler, sonsuz dize sıfır 0negatif biri, sonsuz dizeye bit, 1bit, her <bir ekler 0yaptığımız yapılır sonuna kadar biraz ~dizgesi olarak her döner hangi 0iki izledi s 1s veya çoğu insanın dediği gibi 3.
Görev
Pozitif bir tamsayı verildiğinde , kaynağında nherhangi bir sayı oluşturmadan akıllıca bir program çıkaran bir program yazın -(çıktının -kaynağı, kendi kaynağınızda kullanabilirsiniz). Yığının üstünde zaten bir sıfır olduğunu varsayabilirsiniz.
Bu kod-golf meta -golf değil, bu yüzden mutlaka kaynak üretmek değil kaynak kodunu en aza indirmeyi amaçlamalısınız .
Örnek çıktılar
Bu liste ayrıntılı değildir, sadece olası çıktılardır
1 -> ~<~
2 -> ~<~<
3 -> ~<<~
4 -> ~<~<<
5 -> ~<~:<<|
6 -> ~<<~<
7 -> ~<<<~
8 -> ~<~<<<
9 -> ~<~:<<<|
10 -> ~<~:<<|<
11 -> ~<<~:><<<|
12 -> ~<<~<<
13 -> ~<<~:<<<|>
14 -> ~<<<~<
15 -> ~<<<<~
16 -> ~<~<<<<
:boş bir istif üzerine uygulanan a 0. Bence bu belirtilmelidir, çünkü boş bir desteden çoğaltmanın vermesi gerektiği belli değildir0
positive integers