Guile Reference Manual
18.1.4 Guile Is Hairier
We originally started with a very simple typing system -- each object
has a field that indicates its type. Then, for the sake of efficiency
in both time and space, we moved some of the typing information directly
SCM value, and left the rest in the
Guile itself employs a more complex hierarchy, storing finer and finer
gradations of type information in different places, depending on the
object's coarser type.
In the author's opinion, Guile could be simplified greatly without
significant loss of efficiency, but the simplified system would still be
more complex than what we've presented above.