I like arrays in pascal with bounds from -n to +n: var a: array [-10..10] of integer; It is very natural, simple and with run-time bounds checking also very safe. With arrays like pascal's much of current buffer overrun exploits would (probably) not exist!