>> You mean that if you give an index which is too large, it just uses $ >> instead? >> That sounds seriously bug-prone to me. I'd much rather that it blew up and >> thus >> told me that my program had a bug in it rather than silently trying to >> work. > > Sorry, but you are wrong on this. I understand this sounds unsafe, but no. > Most languages, I guess, just do that without any worry. In particular, I > have frequented python and Lua mailing lists for years without even reading > once about this beeing a misfeature (and indeed have never run into a bug > because of this myself). It is simply the right semantics in 99.999% cases.
Isn't the real reason for this that bounds-checking is usually completely turned-off in release-builds? Sounds like something that could noticeably degrade runtime-performance for array-intensive code?