This directory is split into four logical units that comprise the
ilog.language.design.* packages:

   Package ilog.language.design.kernel

	contains the classes defining the kernel language expressions
	and their sanitizer and compiler;

   Package ilog.language.design.types

	contains the classes defining the types and the typechecker,
	and the symbol table entries

   Package ilog.language.design.instructions

	contains the classes defining the abstract machine intructions
	based on an abstract interface for a runtime system;

   Package ilog.language.design.backend

	contains the classes defining the runtime system.

Some kernel classes import the types and base packages, and so do some
of the backend's runtime; some classes in base import types; the classes
in types involved in type-checking import the kernel package.

	  --------------<---------------
	 /                              \
      kernel --<--->-- types --<-->--instructions -->-- backend
                          \                               /
	                   ------------->-----------------
