Implementation hurdles
array bounds checks required at run-time
name equivalence on type checking
complex type representations
nil check required on every access to an array or record
heap required, automatic garbage collector
complex variable accessing mechanism