Task

Write/display a language's name in 3D ASCII.



(We can leave the definition of "3D ASCII" fuzzy,
so long as the result is interesting or amusing,
not a cheap hack to satisfy the task.)



Related tasks

 draw a sphere
 draw a cuboid
 draw a rotating cube
 draw a Deathstar


(de Lst
   "*****             *               "
   "*   * *           *    *          "
   "*   *   **** **** *      **** ****"
   "***** * *    *  * *    * *  * *  *"
   "*     * *    *  * *    *  *   ****"
   "*     * *    *  * *    *   *  *   "
   "*     * *    *  * *    * *  * *   "
   "*     * **** **** **** * **** *   " )
 
(de transform (Lst A B)
   (make
      (chain (need (length Lst) " "))
      (for (L (chop (car Lst)) L)
         (ifn (= "*" (pop 'L))
            (link " " " " " ")
            (chain (need 3 A))
            (when (sp? (car L))
               (link B " " " ")
               (pop 'L) ) ) ) ) )
 
(prinl (transform Lst "/" "\\"))
 
(mapc
   '((X Y)
      (mapc
         '((A B)
            (prin (if (sp? B) A B)) )
            X
            Y )
      (prinl) )
   (maplist '((X) (transform X "\\" "/")) Lst)
   (maplist '((X) (transform X "/" "\\")) (cdr Lst)) )
 
(bye)