Published April 3, 2017 | Version v1
Conference paper Open

Programmatic Manipulation of Common Lisp Type Specifiers

  • 1. EPITA

Description

In this article we contrast the use of the s-expression with the BDD
(Binary Decision Diagram) as a data structure for programmatically
manipulating Common Lisp type specifiers.  The s-expression is the
\textit{de facto} standard surface syntax and also programmatic
representation of the type specifier, but the BDD data structure
offers advantages: most notably, type equivalence checks using
s-expressions can be computationally intensive, whereas the type
equivalence check using BDDs is a check for object identity.  As an
implementation and performance experiment, we define the notion of
maximal disjoint type decomposition, and discuss implementations of
algorithms to compute it: a brute force iteration, and as a tree
reduction.  The experimental implementations represent type
specifiers by both aforementioned data structures, and we compare
the performance observed in each approach.

Files

newton.17.els.pdf

Files (469.4 kB)

Name Size Download all
md5:b1e56afd75551df90c2a847ed1f64aff
469.4 kB Preview Download