Lpp chose 0 as nil . Because of this the dolist macro for example expands into a very simple and efficient for loop. Symbols after being interned are just as efficient but far more powerful than enums . The default for symobls in Lpp is case sensitive as opposed to the default for symbols in Common Lisp which is case insensitive. Primitive C objects can easily be converted to Lpp analog objects using the C constructor.
Efficiency is an elusive property though.
Lpp provides two debugger functions pdb and pdc for examining Lpp objects in a debugger. In addition the function ppdb is provided for pretty printing such objects in a debugger. All new Lpp objects defined automatically get default dispatcher functions defined for princ and prin1 . New princ or prin1 methods can be defined by the programmer. Feedback Please direct comments on the Lpp software to William Paul Vrotney .