Havuçlar. Yani. Birçok. Havuçlar


12

Kahretsin, bu çok fazla havuç.

İlham

ilham

Görev

Mümkün olduğunca çok dilde olarak, her örneğini değiştirir, yani bir program oluşturmalısınız ^bir ile markdown biçimlendirilmiş bağlantı bir cevap onu göndermek için ise, otomatik olarak bir görüntü olarak okumak yerine görüntü yer olacağını anlamı ( arasında kelimeleri) ait bu yukarı doğru bakan havuç.

Bahsedilen Biçimlendirme Nasıl Kullanılır:

İlk olarak, dosyanın herhangi bir yerinde, bağlantıyı böyle koyun (bu soru için yaptığım budur):

[1]: http://i.stack.imgur.com/mecHl.png

Ve sonra, nerede olursanız olun:

[! [] [1]] [1]

kurallar

  • Standart Loopholes uygulanır.
  • Giriş STDIN veya eşdeğeri olacaktır.
  • Çıktı STDOUT veya eşdeğeri üzerinden yapılacaktır.
  • Kodunuz, kullandığınız tüm dillerde tam olarak çalışan bir program olmalıdır.
  • Eğer havuç için kullandığınız URL gelmez değil bu yanıtında biri olması. Bu sadece bir örnekti. SE'nin Markdown ürününün bu havucu yanında göstermesi koşuluyla herhangi bir URL'yi kullanabilirsiniz .
  • Bu mücadeledir, bu yüzden en fazla havuç diline sahip cevap kazanır!
    • Beraberlik durumunda, en fazla sayıda dile sahip girişlerin en kısa kod boyutu kazanır.

DÜZENLE:

  • Ayrıca, önemsiz dillerin türevlerini KULLANMAYIN! Bu, bir ikame dili (Brainfuck vs. ShadyAsFuck) ve farklı dil sürümlerinin (Python 2 - Python 3) kullanılması anlamına gelir.

Sığacak çok önemsiz esolangs var ... (9001 BF varyantları dahil)

O adam olma.

Not: Evet, bu program normal ifade desteği olan dillerde biraz önemsiz olacaktır. Ancak rekabet, rakiplerin kaç dili kullanabileceğini görmektir.


: Ben değiştirilmesini (bu kısmı anlamıyorum [![http://i.stack.imgur.com/mecHl.png][1]][1])
Zereges

@Zereges Bu konuda ne anlamıyorsun? Bunun başka bir örneğini istiyorsanız, "Yanıt Ekle" yi tıklayın ve ardından görüntü düğmesine basın. Bu soruda gösterildiği gibi, sizin için otomatik olarak resim işaretlemesi oluşturur.
Addison Crump

4
Sonsuza kadar havuç! ^^^
user41805

1
First, anywhere in the ,Orada hangi kelimenin eksik olduğundan emin değilim.
trichoplax

2
@FryAmTheEggman, bir soru hem etiketlenecek için hiçbir mantıklı Polyglot'u ve rosetta taşı .
Peter Taylor

Yanıtlar:


6

Python, Befunge 98, Lisp ve Javascript - 829 827 +2 (python içinde -x bayrağı) = 831 829 bayt

"^\
";/*";
""""(defun q (string part replacement &key (test #'char=))(with-output-to-string (out) (loop with part-length = (length part) for old-pos = 0 then (+ pos part-length) for pos = (search part string :start2 old-pos :test test) do (write-string string out :start old-pos :end (or pos (length string))) when pos do (write-string replacement out) while pos)))(princ "[1]:http://tinyurl.com/qczsjtl
")(ignore-errors (loop (princ (q (read-line) "^" "[![][1]][1]"))))""";import sys;i=sys.stdin.read();print '[1]:http://tinyurl.com/qczsjtl\n'+i.replace('^','[![][1]][1]');"""" """
1;'''
;#<v"[1]:http://tinyurl.com/qczsjtl"$$$
;X v,<
;X >:|XXXXX>v
;vXXX>a,#
;>#@~>:10g-|>,#
;^ XXXXXXXX>$"]1[]]1[][![">:# ,# _#
;X */alert("[1]:http://tinyurl.com/qczsjtl\n"+prompt().split("^").join("[![][1]][1]"));/*
;>^"'''#*/

-xPython ile çalıştırıldığında komut satırı bayrağını gerektirir . Xs herhangi bir karakter ile değiştirilebilir. Satır sonu sayı işaretleri (ve noktalı virgülle başlayan ilk satırın başındaki sayı işareti) geçersiz talimatı ;( lisp'de bir yorum başlatan) yürütmeye çalışmaktan kaçınmak için mevcuttur . Çizgilerin hiçbirinde boşluk yoktur.

Değiştirerek iki bayt Kaydedilen 55+ile abir yeni satır yazdırmak için.


Çok süslü, çok temiz. Severim. +1 3'ten fazla dil ile tamamlama başarısı. : D
Addison Crump

19

Minkolang 0.10 , Befunge-93 , > ; 3 2D dil, 321 bayt

v[1]: http://i.stack.imgur.com/mecHl.png
v[![][1]][1] 
>\$$>~:1+!#v_:"^"-#v_1>:34*`#v_v
//  ^             ,<0        <    >:0g,1+v
v#   ,,:*52<          ^+1  ,g1:<@_^#`*85:<1
>!v#(od"^"=,34*&34*[i1+1qO]!O$I)lO58*[i1+0qO].
  >i:0(?v:"^"-?v1>:34*)?vv
  ^           o<0       < > :0go1+v
  oo:*52<        ^+1og1: <^;?)*85:<1

Tercümanlar: Minkolang , Befunge-93 , > <> .

Herkes isterse her bileşen üzerinde ayrıntılara gireceğim, ama önemli olan, hepsinin kod kutusunun birinci ve ikinci satırlarını okuması ve karakterleri uygun zamanlarda çıkarmasıdır. Ayrıca, Befunge ve Minkolang /> <> \arasında, ilkinde yığının en üstteki iki değerini değiştiren ve diğer ikisinde bir ayna olan ile karar veriyorum . Minkolang ve> <> 'ı ayırmak için kullanıyorum !v#. !her iki dilde de koşulsuz bir trambolindir, ancak #> <> 'da çok yönlü bir ayna ve Minkolang'da op-no'lu bir aynadır. O andan itibaren, her dil kodu kendi bileşeninde yürütür.


4

Havuç , 60 58 bayt

#^A^S"[![][1]][1]"^[1]: http://i.stack.imgur.com/mecHl.png

Şu anda sadece bir dil olduğunu biliyorum ama Havuç'ta cevaplanmayan havuçlar hakkında gerçekten zorlanamayacağımızı düşündüm.

@KritixiLithos sayesinde 2 bayt tasarruf edildi.

Açıklama:

#                                          // Set the stack to the input
^                                          // Change to operations mode
A^                                         // Convert to array mode by splitting on ^
S"[![][1]][1]"                             // Convert to string mode by joining on
                                           // the literal string supplied
^[1]: http://i.stack.imgur.com/mecHl.png   // Switch back to stack mode and
                                           // append the string literal

Ben #yorum ile herhangi bir dil ile aşina değilim ama kolayca sadece bir giriş sonra bırakmak için havuç kodunda alt dize başlangıçta bu kodu eklemek bunlardan biri ile bir çok dilli yapabilirsiniz #.
TheLethalCoder

2
Bu kodun neden çalıştığını bile bilmiyordum ( A^kısmen, kısmen uygulanmasını unuttuğum için), ancak daha sonra bunun uygun bir ayrıştırıcıdan yoksun çok yazılmış bir yorumcum olduğunu fark ettim. Burada, dilin yaratıcısını karıştırmak için + 1'leyin.
user41805

@KritixiLithos Dürüst olmak gerekirse ben bir regex ile çalışmak için çalışıyordu ve sefil başarısız oldu ve A^çalışma sona erdiğinde kendimi şaşırdım ! Ben ayrıldığınızı tahmin ediyorum, boş öğeleri bırakıyorsunuz yani ^^verir [ "", "", "" ].
TheLethalCoder

Sen kaldırabilirsiniz +"sonunda ve bunu değiştirmek ^sonunu düşürmüştü ", şöyle #^A^S"[![][1]][1]"^[1]: http://i.stack.imgur.com/mecHl.png. Esasen, +bir dize bağımsız değişkeni ile dizeyi yığına ^ekler , ancak aynı şeyi daha kısa bir bayt hesabı için yapar.
user41805

@KritixiLithos Elbette teşekkürler!
TheLethalCoder
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.