Empiezo a escribir algo sobre Common Lisp y me estoy poniendo manos a la obra para armar las cosas y formatearlas.¿Cómo puedo formatear a una alista en el ceceo común?
Supongamos que tengo una alista, así:
(defvar *map* '((0 . "zero") (1 . "one") (2 . "two")))
¿Cómo formateo así?
0: zero
1: one
2: two
que estaba pensando algo así como (format t "~{~{~a: ~a~}~%~}" *map*)
, pero que da un error porque "cero" no es una lista y no se puede tomar el coche de ella.
Por supuesto, hacer impresiones (format t "~{~a~%~}" *map*)
(0 . "zero")
(1 . "one")
(2 . "two")
como se supone que debe, pero no es exactamente lo que yo quiero. ¿Hay una mejor manera de hacer esto que solo (dolist (entry *mapping*) (format t "~a: ~a~%" (car entry) (cdr entry)))
?
mapcar es más que el punto ... – skypher