Örtüşen Polyglots


37

Birçok C&R mücadelesinden farklı olarak, bu ayrı bir soygunculuk görevi gerektirmez; Soyguncuların amacı, önceki cevabı kırmak ve sonra polis olarak yeni bir mesaj göndermek.

Cevaplayıcılar olarak, buna benzeyen bir dizi çokgen yazacaksınız (her sütun bir dildir ve her giriş bu cevabın çıktısıdır):

Language:  1  2  3  4  5  6  7  8  ...
Answer 1:  0  1  2
Answer 2:     1  2  3
Answer 3:        2  3  4
Answer 4:           3  4  5
Answer 5:              4  5  6
Answer 6:                 5  6  7
...

(boşluklar, bu durumda hiçbir davranışa gerek olmadığı anlamına gelir).

Her cevap 3 dilde çalışma ve birbirinden önceki yanıtıyla basılan sayılar birden (ilk cevap baskılar 3 farklı ardışık sayılar yazdırmalısınız 0, 1ve 2). Her cevap, önceki sunumdaki iki dili ve üçüncü bir yeni dili kullanır. Cevaplayıcı, bu üçüncü dilin ne olduğunu gizlemeye çalışmalıdır.

Yeni bir cevap göndermek için şunları yapmalısınız:

  • Üçüncü dilin ne olduğunu bularak en son cevabı kır.
  • Tercihen, çatlağınız için bir açıklama ekleyin ve cevabın posterini bildirin. Gönderiminiz kırıldıktan sonra, tercihen bir açıklama da eklemelisiniz.
  • İstediğiniz başka bir dilin yanı sıra bu yanıtın ikinci ve üçüncü dillerinden oluşan bir çokgeni yazın. İlk iki dilinizi açığa çıkarın, fakat yeni dilinizi açığa vurmayın. Bir sonraki posterin hedefi, bu dili (veya çalıştığı herhangi bir dili) bulmaktır, bu yüzden onu şaşırtmaya çalışmalısınız.

Özellikler

  • Geçerli bir programlama dili için kriterler, Programlama Dili Sınavı, Mark II - Cops ile aynıdır :

  • Her cevap makul bir bilgisayarda bir dakikadan daha az sürede yapılmalıdır.

  • Sen edebilirsiniz programlama dilleri yeniden, ama (birey cevap Bir dil yeniden kullanamazsınız böylece) arasında en az iki cevabı bulunmalıdır.
  • Bir başvuruyu kırmak , yalnızca amaçlananı değil, doğru sonucu basan herhangi bir programlama dilini bulmaktan oluşur . Eğer bir bildirim, ilan edilmemiş veya çalışamadığı herhangi bir dilde yayınlanmışsa, herhangi bir şey yapmak için herhangi bir şart yoktur.
  • Arka arkaya iki kez (veya daha fazla) gönderemezsiniz.

Kazanan Kriter

Kazanan cevap, hangi cevabın kırılması için en çok zaman aldı. Mücadele asla bitmeyecek, bu nedenle kazanan cevabın değişmesi her zaman mümkün.


2
Muhtemel çatlaklar ve bina çokgenleri hakkında tartışmak için bir sohbet odası açtım.
Bubbler

1
Cevap istenen sayı dışında başka şeyler de verebilir mi?
NieDzejkob

1
@NieDzejkob Hayır, program yalnızca sayıyı vermelidir ve evet, programlar bir dakikadan az sürerse tercih ederim.
Esolanging Fruit 13:18

3
İşte cevapların güvenli kaldığı süreyi (saat cinsinden) hesaplayan bir SEDE sorgusu .
NieDzejkob

1
@EmbodimentoFIgnorance Evet, temel olarak ayrı tercümanlar tanımladıkları için komut satırı bayraklarını isteyebilirsiniz ve evet, programın yalnızca sayıyı yazdırması gerekir. Program STDERR'ye çıktı verebilir, ancak yalnızca STDOUT'a verilen çıktı önemlidir.
Esolanging Fruit

Yanıtlar:


11

Hexagony, Klein (101) ve ???

  xx={puts/}
gets87!@xx=p

main\

>9.*5,6v

Bu 7, Hexagony , 8Klein (101) ve 9???

9Bir satır kodunun sonuna eklenirse çalışmaz. Yerel olarak test ediyorsanız dikkatli olun.

Düzenleme: 20 saat boyunca canlı olmak zaten bir rekor olduğu için bundan sonra bazı ipuçları vereceğim. (Ayrıca, söz konusu dilin IMO olması nedeniyle henüz bilinmemektedir.)

İpuçları

  1. " 9Sonuna bir satır eklendiğinde işe yaramaz" ilk iki boşluğun yanı sıra (hem Hexagony hem de Klein tarafından yok sayılan) çok önemlidir.
  2. Dil TIO'da.
  3. İlk iki boşluk, programı son satıra atlatır. ( 2B dili değil .)
  4. Açık bir çıktı komutu yoktur ve vkomut programı sonlandırır.

Açıklama ( kırık mesaj )

Kaynak kodunda

abcd={} -- a gaffe avoiding tactic in C++/C#
abcd[!1]=   1+2+3+4+5+6+7+8+9+10+11+12+13+17!
print(abcd[0>1+2+3 and 4+8+6<0-0]//35)
if 0>1 then a.next=';' en\
                    >1+6.@.@

Klein'deki (101) ilgili talimatlar:

IP->.....................^...........IP->/
.........................|...................
.........................8
.........................\<-.............IP<-
                         @

Klein, kod alanının sınırını (bir kare olan) geçmenin Klein topolojisine bağlı olduğu bir 2D dilidir. /ve \aynalar.

IP sol üst köşeden başlayarak sağa doğru başlar. Üst sınıra doğru bir ayna ile karşılaşır ve yukarıda gösterildiği gibi sağ taraftaki kod alanına tekrar girer. Sonra tekrar aynaya çarpar, 8 itilir ve sonra (sınırdan birkaç kez geçtikten sonra) durur @. Daha sonra yığının içeriği tek olan 8 olan stdout'a yazdırılır.



9

Befunge-96, Hexagony ve ???

abcd={} -- a gaffe avoiding tactic in C++/C#
abcd[!1]=   1+2+3+4+5+6+7+8+9+10+11+12+13+17!
print(abcd[0>1+2+3 and 4+8+6<0-0]//35)
if 0>1 then a.next=';' en\
                    >1+6.@.@

Bu 6, Befunge-96'da , 7altıgen ve 8???

açıklama

"Tercih edilen" ise altıgen kod:

       a b c d = { } - 
      - a g a f f e a v 
     o i d i n g t a c t 
    i c i n C + + a b c d 
   [ f a l s e ] = 1 + 2 + 
  3 + 4 + 5 + 6 + 7 + 8 + 9 
 + 1 0 + 1 1 + 1 2 + 1 3 + 1 
7 ! p r i n t ( a b c d [ 0 > 
 1 + 2 + 3 a n d 4 + 5 + 6 < 
  0 - 0 ] / / 3 5 ) i f 0 > 
   1 t h e n a . n e x t = 
    ' ; ' e n d > 1 + 6 . 
     @ . . . . . . . . . 
      . . . . . . . . . 
       . . . . . . . . 

İnfaz yolu, sol üst Doğu başlığında başlar. En üstteki satır pek bir şey yapmaz. -geçerli bellek kenarını değiştirir, böylece içindeki değer o olur 0. Yürütme , geçerli bellek kenarındaki 7!yüklerin 7ve baskıların bir tamsayı olduğu orta sıradan doğuya doğru devam eder . [komut göstericisini başından itibaren Kuzey Doğu olarak değiştirir 7. Daha sonra 7+3yürütme, [hangi yön göstericiyi Güney Doğu köşesinden başlayarak Kuzey Batı'ya çevirir? Nihayet yoludur ..@nerede @programı sonlandırır.



8

Lua, beyin sapı, ???

abcd = {} - C ++ 'da taktikten kaçınan bir kahve
ABCD [yanlış] 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 + 11 + 12 + 13 + 14 =
baskı (abcd [0> 1 + 2 + 3 ve 4 + 5 + 6 <0-0] // 35)
0> 1 ise a.next = ';' son

Lua'da 3, beyninde 4 ve ??? de 5.

Kırık posta için açıklama :

a = 1 + 2 + 3 + 3 + 4 + 5 + 6 + 7 + 8 + 9
b = 1 + 1 + 1
f = 3 - (- 1)
c = 7 + 9 + 13 + 11 + 12 + 3--1
g = a + b + c + 1 + 2 + 3 + 4 + 5
J = 9 + 7 + g + c + b + a + g + g + g + g + g + g + 1 + 2 + 3 + 4 + 1 + 1
h = 1 + 1 + 1 + 1 + 333 + 1 + 1 + 1 + 111 + 1 + 1 + 1 + 333 + 1 + 1 + 1 + 1 + 1.
yazdırmak (f)
  • Python 3'te 3--(-1)2, print(f)2 basar (diğer şeyler gereksizdir)
  • Lua'da, --yine bir yorum, bu yüzden 3--(-1)sadece 3, yani print(f)3 basılıyor (diğer şeyler yine gereksiz)
  • Beyin ağrısında, bant üzerindeki ilk hücreyi 52'ye ayarlayan 57 artı ve 5 eksi ve .çıktı karakteri 52 olan 4'tür.


8

Tetikleyici , JavaScript ve ???

[ //aТ/\\ ][ //е"6
console.log(111-111+12)]
//!'!/-²6-²52

11Tetikleyici , 12JavaScript ve 13içinde yazdırır REDACTED.

Bu, şu ana kadarki cevaplardan daha uzun süredir kırılmadığı için, bazı ipuçları:

  • Fark etmediyseniz , ilk satırdaki Тve еsatırları çok baytlı karakterlerdir.
  • [ //ve \\ ][ //hayır-op vardır.
  • İkinci satır, -²52ölü koddur.
  • Dilde bir sonlandırma kavramı yoktur, bu yüzden ²6sonsuz bir döngü oluşturur.
  • Özel olarak, UTF-8 kodlamasının ikinci baytı ², ile birlikte 6sonsuz bir döngü oluşturur.
  • Çıktılan numara, kod tarafından şifrelenir. /!'!/
  • Dil, Çevrimiçi Deneyin, Rosetta Kodu veya Esolangs'ta değildir.
  • Kullanılabilir tek çıkış şekli 1bpp ekrandır.
  • Ekranın en boy oranı 2.
  • Dil başlangıçta makine kodu olarak tasarlanmadıysa da, FPGA uygulamaları var.
  • Wikipedia'ya göre dilin amaçlanan amacı video oyunlarıydı.
  • Ekrana erişmenin tek yolu seçilebilir yazmaçlardaki koordinatları ve derhal hemen yüksekliği ve XOR'leri 8 bitlik bir bitmap'te gösteren özel bir talimattır. Çarpışma algılamasını kolaylaştırmak ve ekranı temizlemeyi mümkün kılmak için, herhangi bir piksel tekrar kapatıldığında kayıtlardan biri ayarlanacaktır.

açıklama

Eh, bu çatlamak için biraz zaman aldı. Kodun nasıl göründüğünü görelim:

0200 5b20    SE VB, V2   ; Skip the next instruction if VB = V2. Since all
0202 2f2f    CALL 0xF2F  ; registers start at 0, this call will be skipped. This
                         ; hides the bytecode from JavaScript.
0204 61d0    LD V1, 0xD0 ; A useless load. Necessary to use a UTF-8 continuation
0206 a22f    LD I, 0x22F ; byte as an instruction and load the address of
                         ; the sprite.
0208 5c5c    SE VC, V5   ; A red herring supposed to suggest symmetry is
                         ; important, as well as a totally intended eliminator
                         ; of inaccurate implementations. Most documentation
                         ; claims that the lowest nibble must be zero, but in
                         ; the original COSMAC VIP implementation it's
                         ; a don't-care.

Bu, mevcut emülatörlerin birçoğunun doğru davranmasına rağmen, kurallara uyma uygulamasının Wikipedia sayfasının ikinci cümlesine bağlı olduğu anlamına gelir . Tabii ki, doğrudan ortalama bir bilgisayarda çalıştırılamaz, ancak en iyi sonucu alabilmek için COSMAC VIP sayfasına bağlı Emma 02 emülatörünü buldum .

020A 205d    CALL 0x05D    ; Skipped.
020C 5b20    SE VB, V2     ; Same as with the very beginning. Red herring.
020E 2f2f    CALL 0xF2F
0210 d0b5    DRW V0, VB, 5 ; Draw the sprite pointed to by I. Since V0 and VB
                           ; haven't been written to yet, the sprite will be drawn
                           ; in the top-left corner of the screen. The height is
                           ; an immediate.
0212 2236    CALL 0x236    ; Jump over the JavaScript and Trigger code. It doesn't
                           ; matter that we never return.
0214-022E *never used*
022F 2f      DB %00101111  ; Sprite data.
0230 21      DB %00100001
0231 27      DB %00100111
0232 21      DB %00100001
0233 2f      DB %00101111
0234-0235 *never used*
0236 b236    JP V0, 0x236  ; Since V0 is still zero, this is an infinite loop.
0238-023C *never used*     ; Together with the previous two lines, it's the
                           ; -²6-²52. It's a red herring supposed to suggest
                           ; prefix, or Polish, notation.

Bana bunun bazı işlemcilerde makine kodu olduğunu söyleme.
SIGSTACKFAULT 21:18

1
@Blacksilver İki ipucundan önce öyle düşündüğümü farz ettim - bunun gibi ne olurdu, Esolang'da değil, ama Wikipedia için yeterince dikkat çekici olabilir mi?
Ørjan Johansen

@Siyahsilver Tamam.
NieDzejkob

@ngm üzgünüm ama hayır
NieDzejkob

kırık , kurallara göre inanıyorum.
NGM

7

Python 2, Python 3, ???

a={1,2}
print(1+#a
--bool(1/2)
)

Bu, Python 2'de 1, Python 3'te 2 ve ??? 3'te yazdırır.

Çatlak açıklaması (Çatlak sonrası) :

#define print(A) main(){puts("0");}
print(1+bool(1/2))
  • 0: C: İlk satır, printtek bağımsız değişkenini görmezden gelen ve buna benzer main(){puts("0");}, yazdırıp 0çıkan bir program olarak değerlendiren , işlev benzeri bir makroyu tanımlar . İkinci satırdaki makro genişletildiğinde, tüm ifade 1+bool(1/2)yoksayılır .print( )main(){puts("0");}

  • 1: Python 2: İlk satır bir yorumdur. 1/2(0. Bu değer veren Python 2 bölünme tamsayıdır kullanımlar, daha sonra bir mantıksal olarak yorumlanır bool(0)-> False) ve daha sonra ilave 1( 1+False-> 1) ve sonra basılmış.

  • 2: Python 3: İlk satır bir yorumdur. 1/2Python 3'te float bölümünü kullanır ve 0,5 verir. (Bu değer daha sonra, bir mantıksal olarak yorumlanır bool(0.5)-> True) ve daha sonra ilave 1( 1+True-> 2) ve sonra basılmış.



7

JavaScript , CHIP-8 ve ???

[ //aТ/\\ ][ //е"6
console.log(111-111+12)]
//!'!/-²6-²52@++++2345

12JavaScript’te , 13CHIP-8’de ve 14???

Bir uzuvdan dışarı çıkıp buna kırık diyeceğim, çalışmasını tam olarak başaramasam da, dilden eminim (kuralların istediği gibi görünüyor).

İşte çatlak direğin kusurlu bir açıklaması

Onaltılık kod "" dır (biraz kapalı olabilirim):

[ 0x5b, 0x20, 0x2f, 0x2f, 0x61, 0xD0, 0xA2, 0x2f, 0x5c, 
0x5c, 0x20, 0x5d, 0x5b, 0x20, 0x2f, 0x2f, 0xD0, 0xB5, 
0x22, 0x36, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 
0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x67, 0x28, 0x31, 
0x31, 0x31, 0x2d, 0x31, 0x31, 0x31, 0x2b, 0x31, 
0x32, 0x29, 0x5d, 0x0a, 0x2f, 0x2f, 0x21, 0x27, 
0x21, 0x2f, 0x2d, 0xb2, 0x36, 0x2d, 0xb2, 0x35, 0x32 ]

Gidebilirsin burada , "İkili Araçlar" tıklayın ve bayt dizisi kutunun içine yapıştırın. "Decompile" tıklayın.

Kodun temel unsurları şunlardır: "sayı" nın olduğu yerde sprite olduğunu, sayıyı basan komutun, burada ve oradaki doğru önemsiz miktarın ve aşağıdakilerin :

: label-0
    0x2F
    0x21
    0x27
    0x21
    0x2F

Bunun neyi temsil ettiğini görmek için "Sprite Editor" ı tıklayabilir ve bu onaltılık dilimleri altındaki kutuya yapıştırabilirsiniz. Cevabı göreceksiniz:

görüntü tanımını buraya girin

Sonunda istediğiniz herhangi bir şeyi koyabileceğinizden eminim ve CHIP-8 sonucu değişmeyecek, bu nedenle yeni girdi.

Burada verdiğim cevabın "kanıtı" yerine birileri tam olarak çalışabilirse çok sevinirim.


Buna izin vereceğim . Bugün daha sonra bir açıklamada düzenleme yapacağım. Aferin.
NieDzejkob


Ayrıca, onaltılı sizin yanlış bir UTF-8 kodunu
çözmediği

5

C, Python 2, ???

#define print(A) main(){puts("0");}
print(1+bool(1/2))

Bu 0, C, 1Python 2 ve 2???

Python'u tanıyan insanlar için bunu kırmak son derece kolay olacak, ancak diğer cevaplar için başlangıç ​​noktası istedim. Sonraki cevaplar üçüncü dili şaşırtmaya çalışmalıdır (bunu yapmadım).


Kırık . Büyük meydan okuma btw!
pizzapants184

5

Python 3, Lua, ???

a=1+2+3+3+4+5+6+7+8+9
b=1+1+1
f=3--(-1)
c=7+9+13+11+12+3--1
g=a+b+c+1+2+3+4+5
j=9+7+g+c+b+a+g+g+g+g+g+g+1+2+3+4+1+1
h=1+1+1+1+333+1+1+1+111+1+1+1+333+1+1+1+1+1.
print(f)

Lua'da Python 3, 3'te 2 ve ???

Kırık posta için açıklama :

a={1,2}
print(1+#a
--bool(1/2)
)
  • Lua'da - bir yorumdur. Python 2 ve 3'te, -, aritmetikte çift negatif olduğunu belirtir.
  • Python 2 ve 3'te # bir yorumdur. Lua'da #, uzunluk operatörüdür.
  • Python 2'de 1/2 kat bölmesidir, bu nedenle sıfıra göre değerlendirilir. Python 3'te durum böyle değil. Python'un her iki sürümü de 0'ı False olarak değerlendirdiğinden, bool (1/2) Python 2'de False olarak ve Python 3'te True olarak değerlendirilir.


5

> <>, Befunge-96 ve ???

abcd={} -- a gaffe avoiding tactic in C++
abcd[false]=1+2+3+4+5+6+7+8+9+10+11+12+13+17!
print(abcd[0>1+2+3 and 4+5+6<0-0]//35)
if 0>1 then a.next=';' end
                    >1+6.@

Bu , 5 inç><> , 6 inçBefunge-96 ve 7???

Amaçlanan çözümün Befunge-93 olduğunu biliyorum ama dayanamadım.

Açıklama:

Befunge-96, aynı yolu izler ><>, ancak bilinmeyen talimatları dikkate almaz, 5'e bir tane ekleyerek sonunu 9 ile çarparak ascii kodunu alır 6.



5

Yorumcu , Beatnik , ???

// k... nak... naKaka pagpAbaGaBag
static answer: Option<&String> = None;
 
fn llanfairpwllgwyngyllgogerychwyrndrobwllllantysiliogogogoch(s: &String){
  answer = Some(s);
}
 
fn pneumonoultramicroscopicsilicovolcanoconiosis(){
  println!("{}", answer.unwrap());
}
 
fn main(){
  let s = String::from("17");
  let t = "Hi! I am a cat. AOOOWRRRWWW! Me need Whiskas! Noow! Mee hungry hast bekommen. Feedme! sudo !!. Sad... six cable hostage wire cable diediediediee #               */";
  llanfairpwllgwyngyllgogerychwyrndrobwllllantysiliogogogoch(&s);
  pneumonoultramicroscopicsilicovolcanoconiosis();
}

Çıkışlar Commentator'lft 15 , Beatnik 16 umarım bir dilde, ve 17 bulmak gerekiyor.

Tamam, ipucu zamanı:

  • Dilin adı, her ikisi de vücudunuzu oluşturan, ancak çılgınca değişen yüzdelere sahip (bu sizin bir robot olup olmadığınıza bağlı olarak) iki öğeden oluşan bir bileşiği ifade eder.
  • Dilin kendisi TIO'da, ancak uygulama değil.
  • Ah, hadi ama.

1
(Rust gibi görünüyor fn main(), ama aslında değil başka şeylerin yanı sıra,) çalıştırmak Rust (içinde explicit lifetime required in the type of 's'ne TIO ne de ben buldum başka tercüman üzerine). Ve fnbir fonksiyon tanımlayıcısı olarak kullanılan başka bir dil bulamıyorum .
Draco18,

Huh, ipucu bile Fe ve O'nun bir bileşimi olan Rust'a benziyor. Başka bir şey düşünemiyorum. Belki farklı derleyici sürümleri?
Bubbler

1
Bunun temel olarak ödünç alma denetleyicisi olmadan Rust olan mrustc ile derlenmiş olan Rust olabileceğinden şüpheleniyorum .
Esolanging Meyve

@EsolangingFruit deneyin
NieDzejkob

Üç ay sonra, nihayet getirmiştim çatlama bu
Esolanging Meyve

4

Brainfuck,> <> ve ???

abcd={} -- a gaffe avoiding tactic in C++
abcd[false]=1+2+3+4+5+6+7+8+9+10+11+12+13+14
print(abcd[0>1+2+3 and 4+5+6<0-0]//35)
if 0>1 then a.next=';' end
                    >1+9*,@

Baskılar 4brainfuck içinde, 5içinde> <> ve 6içinde ???

  • Beyinde, hiçbir şey değişmez.
  • > <> ' vDa, programın akışını aşağı doğru yönlendirir. nOlan n adet umeric çıktı. ;yürütmeyi sonlandırır.



4

Beatnik , Rust , ???

fn avreg(){}
fn/*azxzzz avreg k zqyzzz ax quke    
>>P0 ++puts++puts[pov]
\@�{>*}++puts++puts++puts++puts++puts++puts++puts++puts%
*/main(){print!("17")}

Bu, Beatnik'te 16, Rust'ta 17 ve ???'de 18 basar.

4. hatta karakteri (o ikisine alakalı olmadığından bu TIO bağlantılarında yapılmadı) ASCII karakter 18 ile değiştirilmelidir.

Açıklama ( kırık ):

Önceki cevabın dili Rust idi: özellikle, mrustc ile derlenmiş Rust . mrustc, deneysel bir derleyicidir ve çoğunlukla geçerli bir sürümünü önyüklemeye yöneliktir.rustc , @ NieDzejkob snippet'inin hatasız bir şekilde derlenmesini sağlayan borç kontrolü ve değişkenlik kontrolünü göz ardı eder.

Bu program normal Rust derleyicisiyle çalışacaktır, bu nedenle test etmek için mrustc kurmanıza gerek yoktur.

İpuçları

Bu cevap şu ana kadar çatlamadan en uzun zaman geçtiğinden, bir ipucu bırakacağım ve çatlayana kadar düzenli olarak yapmaya devam edeceğim:

  • Gizli dil iki boyutludur.
  • Yorumlarda belirttiğim gibi, dil TIO'da değil.
  • Karakter kırmızı ringa ve çok az önemi vardır. Çoğu bayt yerine kullanılabilir ve program çalışmaya devam eder.

1
Rastgele şuna dilleri atma, ben aslında o düzgün yani 15> <> 'de, çıkışı olduğunu gördük ( "ASCII kod yeri 0x12 esolang" için çok arama bulunamadı sahip)
İlgisiz dize

1
Bunun TIO’da herhangi bir dilde 18 basmadığı görülüyor (en azından herhangi bir üstbilgi, altbilgi veya komut satırı bayrakları eklenmeden). Umarım hiçbirini özlememişimdir, çünkü esolangs, Wikipedia ve Rosetta Code'daki her şeyi kontrol etmek biraz zor olacak gibi görünüyor ... En iyi tahminim, bunun bir tür 2D dili olduğu. ya @, P, {veya mbir karakter değişmezi başlar ve bir şey sonradan ondalık onun codepoint basar ama bütün bunlar açıklamıyor ++... s
İlgisiz dize

1
@GirişsizString Evet, TIO'da bir dil olmadığını onaylayacağım.
Esolanging Fruit

1
Esolang.org'da 100 dilde geçen bir güne uygun olanı bulmaya çalışarak harcadım olabilir ... Sonra ASCII 18 karakterini okudum ve tamamen farklı bir dil sınıfı aradığımda yaklaşımımın tamamen yanlış olduğunu fark ettim. ...
IQuick 143

2
@ IQuick143 tane ringa balığı kırmızı
Esolanging Fruit

3

Z80Golf , Somme , ???

!!8@e6v+4>9 \
1((111+111)/111)
00
~tz

Bu baskılar Z80Golf 9'da , Somme 10 ve 11 ??? .

Sütun toplamını talimat olarak alan Somme olarak önceki yazıyı kırdığı için Bubbler'a teşekkür ederiz . İlk üç sütun değerlendirilir

A.;

Hangi 10 iter, yazdırır ve çıkar.


3

Somme , Tetikleyici ve ???

[,,E,D,,$,H,_,K,,$,,_,F,L]=!
[]+[]+!![]+[][111]
_=[111][F+L+E+E];[,J,,A,I,,B,C,S]=
[]+_;$=A+B+C+D+I+H+J+A+I+B+H
R=_[$](H+K+I+J+H+C+S+H+B+B+I)();G=($[$]+[])[14]
R[A+B+C+D+B+E+K][E+B+G](12);`
iP<`

Bu 10, Somme'de , 11Tetikleyicide ve 12???

Son iki dilin çok dilli olması kolay olduğundan, o dili karıştırmaya karar verdim .

Açıklama ( kırık mesaj )

Tetikleyici tüm kodu bir dizi simge olarak görür (belirteç açgözlüdür):

  • Tek bayt (göster A)
  • İki aynı bayt, ardından farklı bir bayt (ifade AAB)
  • Üç aynı bayt (belirtilen AAA)
  • Dört aynı bayt (belirtilen AAAA)

Kaynak kodunda

!!8@e6v+4>9 \
1((111+111)/111)
00
~tz

önemli belirteçler ((1 11+ 111 111, ilk ikisinin hiçbir şey yapmaması ve son ikisinin de her biri 1 - yani 11 baskı almasıdır.



3

CHIP-8 , Klein (100) , ???

[ //aТ/\\ ][ //е"6
console.log(111-111+12)]
//!'!/-²6-²52@++++2345
 %/    <#> 13
       say 14
 + not not 15

CHIP-8'de 13 çıktı (sanırım), Klein'de 14 ve ??? de 15.

Başka bir Klein topolojisi, tsk tsk. @CHIP-8'i neyin etkileyeceğini bilmediğim için kodu daha önce kullandım .

İpuçları

Bunun için gecikmişim, üzgünüm. Günde bir tane eklemeye çalışacağım.

  • Programın ilk yarısını kaldırmak (ilk üç satır) hala çalışıyor.
  • Bu 2B dili değil
  • Dil TIO'da
  • notS ve sayprogramı etkilemeden kaldırılabilir

Başvuru için, bu şeyler olmadan program şöyle görünür:

 %/    <#> 13
        14
 +   15

Çevrimiçi deneyin!


2
...Korkuyorum. Bu, Runic'te çalışır ve 16'yı verir .
Draco18s

@ Draco18s Kasıtlı
Jo King,

Bir sonraki güncellemeden sonra, birkaç operatöre daha iyi bir string string işleme ekledim (şu anda TIO bir 1ve bir ilk satırdan oluşan bir dizge açıyor ve "bu bir değer değil". güncelleme, bunun için bir operatör olmasına rağmen, concat olacaktır; ancak concat, karakterleri ve sayıları, karakterleri ve +bunları sayılar olarak kabul eder . Ama "Merak ediyorum ... aman tanrım, bu değiştirilmemiş bırakılabilir ve bir sonraki giriş olabilirdi ... eğer sadece bir dil bilseydim …? dili ..."
Draco18s

Yarım bayt, karakter, satır ya da belirli bir şeyi mi tanımlıyorsunuz?
NieDzejkob


3

Klein (100), Yorumcu , ???

/@++++2345
start:
program:
 db 'function',10
 add program,program
 jp null+$8
 sbc rbp,rbp
 jnz program
 jr program
 add start
 halt
ex:

Çıkışlar Klein (100), 14 , Commentator'lft 15 içinde, 16 ???.

Ben çok şaşırtan poligotlarda cidden kötüyüm.

Açıklama ( Kırık mesaj )

 %/    <#> 13
        14
 +   15

Commentator'da, ortak yorum belirteçleri ve boşlukları önemli komutlardır ve diğer karakterler dikkate alınmaz.

  • Boşluk mevcut bellek hücresini arttırır.
  • <# XOR 1 geçerli bellek hücresinde yok.
  • % mevcut bellek hücresini sıfıra ayarlamak için kullanılır.

Bekle, sonra 16 boşluk var %, ne oldu?

Aslında tercümandaki küçük bir hata (veya özellik?). /2 karakterli bir komutun başlangıcı olarak değerlendirilir, bu yüzden tüketildikten sonraki boşluk. Fakat/<space> tanımsız komut (bu nedenle no-op), bu nedenle alan etkili bir şekilde atlanır.


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.