Christmas Present APL 34b Author: Logiker Language: APL Usage: Use https://tryapl.org/ to execute the code. Or https://norbertkehrer.github.io/ibm_5110/emu5110.html. Code: ⌽11↑'/o\'⋄' -|+'[1+T∘.+2×T←19⍴9↑1] Length: 34 chars (stored with unicode it takes 49 chars) Description: 9↑1 .. (Dyadic function: Take) .. 1 0 0 0 0 0 0 0 0 19⍴9↑1 .. (Dyadic function: Reshape) .. 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 2×T←19⍴9↑1 .. 2 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 2 T∘.+2×T←19⍴9↑1 .. outer product of the uppter two vectors using addition 3 1 1 1 1 1 1 1 1 3 1 1 1 1 1 1 1 1 3 2 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 2 2 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 2 2 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 2 2 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 2 2 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 2 2 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 2 2 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 2 2 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 2 3 1 1 1 1 1 1 1 1 3 1 1 1 1 1 1 1 1 3 2 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 2 2 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 2 2 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 2 2 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 2 2 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 2 2 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 2 2 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 2 2 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 2 3 1 1 1 1 1 1 1 1 3 1 1 1 1 1 1 1 1 3 Now we can print the box using: ' -|+'[1+T∘.+2×T←19⍴9↑1] +--------+--------+ | | | | | | | | | | | | | | | | | | | | | | | | +--------+--------+ | | | | | | | | | | | | | | | | | | | | | | | | +--------+--------+ Now let's add the ribbon... 11↑'/o\' gives: "/o\ " .. notice, that the string is filled up with blanks ⌽11↑'/o\' .. reverse it .. " \o/" And finally combine all together! ⌽11↑'/o\'⋄' -|+'[1+T∘.+2×T←19⍴9↑1] \o/ +--------+--------+ | | | | | | | | | | | | | | | | | | | | | | | | +--------+--------+ | | | | | | | | | | | | | | | | | | | | | | | | +--------+--------+