libera/#sicl - IRC Chatlog
Search
5:18:02
beach
It turns out I can semi-automate many parts of the visualizer. For many AST classes, I just have to supply order and indentation of children. And a child is indicated by the slot reader in Iconoclast. Then, the Iconoclast function SLOT-DESIGNATORS returns information about the cardinality of each slot-value.
5:18:03
beach
I can still define specific methods on DISPLAY-AST* if I want some fancy layout, but for most AST classes, it is enough to supply the order and indentation of children to get a result that is acceptable.
5:19:51
beach
This is good news, because I was not looking forward to writing a method on DISPLAY-AST* for each macro AST in addition to the methods I already have for the AST representing special forms.
5:21:15
beach
Instead, I want to spend time on visualizer features such as highlighting associated definitions and references to variables, function names, tag names, block names, etc.
5:25:08
beach
Writing a method on DISPLAY-AST* and then fixing typos takes at least a few minutes. Adding a method on LAYOUT takes significantly less than a minute.