Garbage Collection and Memory Tags
This posting misses entirely the two major differences between the Lisp oriented languages and architectures and the C oriented world. Lisp pushed automatic memory management with garbage collection. Major advances in GC technology, such as real-time collection, followed. The C world pushed back energetically, and resisted GC technology for decades. But not now.
Lisp, of course, relied on type coercion, and allowed any variable to contain any type. Best implementations, such as the CONS/CADR/LMI/Symbolics machines used tags associated with each memory word to efficiently execute this code. Today, similar techniques are being actively worked on for information security issues. Types allowed array limit enforcement, e.g.
Someday we may get architectures that help with these problems, but not yet.
Tom Knight - CONS/CADR architect