Dada una entrada de cualquier programa Glypho válido, genera su contraparte "legible para humanos".
Glypho es una idea interesante de esolang:
La referencia de instrucciones se da aquí. Para cada instrucción, los caracteres abcd representan los símbolos que componen cada instrucción. a se refiere al primer símbolo único, b se refiere al segundo símbolo único, etc.
aaaa ..... n NOP - no operation; do nothing aaab ..... i Input - push input onto top of stack aaba ..... > Rot - pops top stack element and pushes to bottom of stack aabb ..... \ Swap - swaps top two stack elements aabc ..... 1 Push - pushes a 1 onto the top of stack (creates new element) abaa ..... < RRot - pops bottom element and pushes to top of stack abab ..... d Dup - Duplicates top stack element abac ..... + Add - pops top two elements and pushes their sum abba ..... [ L-brace - skip to matching ] if top stack element is 0 abbb ..... o Output - pops and outputs top stack element abbc ..... * Multiply - pops top two elements and pushes their product abca ..... e Execute - Pops four elements and interprets them as an instruction abcb ..... - Negate - pops value from stack, pushes -(value) abcc ..... ! Pop - pops and discards top stack element abcd ..... ] R-brace - skip back to matching [
(crédito: Brian Thompson, alias Wildhalcyon)
Entonces, por ejemplo, PPCG
representaría la instrucción Push:PPCG
coincide con el patrón aabc
, donde a
representa P
, b
representa C
y c
representa G
.
La entrada será una sola cadena que consta de solo caracteres ASCII imprimibles. Siempre tendrá una longitud divisible por cuatro (duh).
La salida es cada grupo de cuatro caracteres en la cadena de entrada reemplazado por la instrucción que designan. Utilice los nombres de instrucciones de una letra (los que aparecen justo después de los cinco puntos en la tabla citada anteriormente).
Como se trata de code-golf , ganará el código más corto en bytes.
Casos de prueba:
In Out
------------------------------------------------
Programming Puzzles & Code Golof ]!]!]]]+
nananananananana batman! dddd]]
;;;;;;;:;;:;;;:: ni>\
llamas sleep 1-*
8488133190003453 <[oe
<empty string> <empty string>