Advanced computer languages have separated 
the language elements from a 'kernel' of 
lower level functionality.  By changing
the kernel, the symbol 
set of the language can 
be reused on different 
hardware platforms.  
This re-mapping of the 
language allows greater
flexibility and power.