Ответ 1
S-Exps эквивалентны древовидным структурам, если вы можете красиво напечатать дерево, вы можете довольно хорошо напечатать s-exp.
Например, сравните:
(tree
(value 89)
(tree
(value 9)
nil
nil)
(tree
(value 456)
nil
nil))
в
89
+- 9
+- 456
Алгоритм идентичен, единственное различие - это количество окружающих данных, которые вы хотите распечатать.
В этой статье описан алгоритм для красивой печати деревьев
Этот описывает красивый принтер для языков программирования