Geçerli herhangi bir Glif programının bir girdisi verildiğinde , "insan tarafından okunabilir" muadili çıktısını alın.
Glif ilginç bir esolang fikri:
Talimat referansı burada verilmiştir. Her komut için, abcd karakterleri her bir komutu oluşturan sembolleri temsil eder. a ilk benzersiz sembolü, b ikinci benzersiz sembolü vb. belirtir.
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 [
(kredi: Brian Thompson aka Wildhalcyon)
Yani, örneğin, PPCG
temsil edeceğini itin instruction- PPCG
kalıpla eşleşen aabc
, a
temsil P
, b
temsil C
ve c
temsil G
.
Giriş yalnızca yazdırılabilir ASCII karakterlerinden oluşan tek bir dize olacaktır. Her zaman dört (duh) bölünebilir bir uzunluğa sahip olacaktır.
Çıktı, giriş dizesindeki dört karakterden oluşan her bir gruptur ve bunların yerine hangi komutu belirtirler. Tek harfli talimat adlarını kullanın (yukarıda belirtilen tablodaki beş noktadan hemen sonra olanlar).
Bu kod golf olduğundan , bayt cinsinden en kısa kod kazanacaktır.
Test senaryoları:
In Out
------------------------------------------------
Programming Puzzles & Code Golof ]!]!]]]+
nananananananana batman! dddd]]
;;;;;;;:;;:;;;:: ni>\
llamas sleep 1-*
8488133190003453 <[oe
<empty string> <empty string>