How Lisp Systems Look Different

Adrian Dozsa, Tudor Girba, Radu Marinescu
2008 Software Maintenance and Reengineering (CSMR), Proceedings of the European Conference on  
Many reverse engineering approaches have been developed to analyze software systems written in different languages like C/C++ or Java. These approaches typically rely on a meta-model, that is either specific for the language at hand or language independent (e.g. UML). However, one language that was hardly addressed is Lisp. While at first sight it can be accommodated by current language independent meta-models, Lisp has some unique features (e.g. macros, CLOS entities) that are crucial for
more » ... se engineering Lisp systems. In this paper we propose a suite of new visualizations that reveal the special traits of the Lisp language and thus help in understanding complex Lisp systems. To validate our approach we apply them on several large Lisp case studies, and summarize our experience in terms of a series of recurring visual patterns that we have detected.
doi:10.1109/csmr.2008.4493317 dblp:conf/csmr/DozsaGM08 fatcat:retoixw6rrgnho775jwbiwtscy