Zanahorias. Entonces. Muchos. Zanahorias


12

Maldición, son muchas zanahorias.

La inspiración

inspiración

La tarea

Debe crear un programa que, en tantos idiomas como sea posible, reemplace cada instancia de ^con un enlace con formato de reducción (lo que significa que si tuviera que publicarlo en una respuesta, lo leería automáticamente como una imagen y colocaría la imagen en su lugar de las palabras) de esta zanahoria hacia arriba.

Cómo usar dicho formato:

Primero, en cualquier parte del archivo, ingrese el enlace de esta manera (esto es lo que hice para esta pregunta):

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

Y luego, donde quieras:

[! [] [1]] [1]

Reglas

  • Se aplican lagunas estándar.
  • La entrada será a través de STDIN o equivalente.
  • La salida será a través de STDOUT o equivalente.
  • Su código debe ser un programa totalmente operativo en todos los idiomas que utilice.
  • La URL que utiliza para su zanahoria no tiene que ser la que se encuentra en esta respuesta. Esto fue solo un ejemplo. Puede usar cualquier URL, siempre y cuando Markdown de SE muestre esta zanahoria específica con ella.
  • Este es un desafío , por lo que gana la respuesta con la mayor cantidad de idiomas de zanahorias .
    • En caso de empate, gana el tamaño de código más corto de las entradas con el mayor número de idiomas.

EDITAR:

  • Además, ¡NO use derivados triviales de idiomas! Esto significa usar un lenguaje de sustitución (Brainfuck vs. ShadyAsFuck) y diferentes versiones de lenguaje (Python 2 vs. Python 3).

Hay muchos esolangs triviales para encajar ... (incluidas las variantes 9001 BF)

No seas ese chico.

Nota: Sí, este programa será un poco trivial en idiomas con soporte para expresiones regulares. Sin embargo, la competencia es ver cuántos idiomas pueden usar los competidores.


No entiendo la sustitución (esta parte: [![http://i.stack.imgur.com/mecHl.png][1]][1])
Zereges

@Zereges ¿Qué no entiendes al respecto? Si desea otro ejemplo de esto, haga clic en "Agregar una respuesta" y luego presione el botón de imagen. Construirá automáticamente la reducción de imagen para usted, tal como se muestra en esta pregunta.
Addison Crump

44
Zanahorias para siempre! ^^^
usuario41805

1
First, anywhere in the ,No estoy seguro de qué palabra falta allí.
Trichoplax

2
@FryAmTheEggman, no tiene sentido que una pregunta se etiquete tanto políglota como rosetta-stone .
Peter Taylor

Respuestas:


6

Python, Befunge 98, Lisp y Javascript - 829 827 +2 (bandera -x en python) = 831 829 bytes

"^\
";/*";
""""(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]"));/*
;>^"'''#*/

Requiere el -xindicador de línea de comando cuando se ejecuta con python. el Xs se puede reemplazar con cualquier caracter. Los signos de número al final de la línea (y el signo de número al comienzo de la primera línea que comienza con un punto y coma) están presentes para evitar que se intente ejecutar la instrucción no válida ;(que comienza un comentario en lisp). No hay espacio final en ninguna de las líneas.

Se guardaron dos bytes al reemplazar 55+con apara imprimir una nueva línea.


Tan elegante, tan limpio. Me gusta. +1 Bien hecho al completar con más de 3 idiomas. : D
Addison Crump

19

Minkolang 0.10 , Befunge-93 , > <> ; 3 idiomas 2D, 321 bytes

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

Intérpretes: Minkolang , Befunge-93 , > <> .

Entraré en detalles sobre cada componente si alguien lo desea, pero lo importante es que todos lean la primera y la segunda línea del cuadro de código y muestren los caracteres en el momento adecuado. Además, decido entre Befunge y Minkolang /> <> por el uso de \, que intercambia los dos valores superiores de la pila en el primero y es un espejo en los otros dos. Para separar Minkolang y> <>, uso !v#. !es un trampolín incondicional en ambos idiomas, pero #es un espejo omnidireccional en> <> y no operativo en Minkolang. A partir de ese momento, cada idioma ejecuta código en su propio componente.


4

Zanahoria , 60 58 bytes

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

Sé que es solo un idioma en este momento, pero pensé que realmente no podemos tener un desafío sobre las zanahorias que no se responden en Zanahoria.

Guardado 2 bytes gracias a @KritixiLithos.

Explicación:

#                                          // 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

No estoy familiarizado con ningún idioma con #comentarios, pero podría hacer fácilmente un políglota con uno de esos, simplemente agregue ese código al principio y luego suba la cadena en el código de zanahoria para dejar solo el #en la entrada.
TheLethalCoder

2
Ni siquiera sabía por qué funcionaba este código (en A^parte porque en parte me había olvidado de su implementación), pero luego me di cuenta de que era debido a mi intérprete terriblemente escrito que carece de un analizador adecuado. Aquí, tenga un +1 para confundir al creador del lenguaje.
user41805

@KritixiLithos Para ser honesto, estaba tratando de hacerlo funcionar con una expresión regular y fallé miserablemente, ¡y me sorprendí cuando A^terminé trabajando! Supongo que cuando te divides, dejas elementos vacíos, así que ^^da [ "", "", "" ].
TheLethalCoder

Se puede quitar el +"al final y el cambio a ^tiempo dejando caer el final "como tal, #^A^S"[![][1]][1]"^[1]: http://i.stack.imgur.com/mecHl.png. Esencialmente, +con un argumento de cadena antepone la cadena a la pila, pero ^hace lo mismo para un bytecount más corto.
user41805

@ KritixiLithos ¡Por supuesto que gracias!
TheLethalCoder
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.