  Vector programming is an important topic in many Introduction to Computer
Science courses. Despite the importance of vectors, learning vector programming
is a source for frustration to many students given that they feel left adrift
when it comes to resolving vector indexing errors. Even though the size of a
vector is a natural number, there have been no efforts to define a useful
recursive data definition to help beginners design vector processing functions.
This article defines the concept of a vector interval and describes how to
exploit its recursive structure to design vector processing functions. The
described methodology provides a context beginners can use to reason about
proper vector indexing instead of leaving them adrift with this responsibility.
A key feature of properly using the described methodology is that if students
process the correct vector interval then vector indexing errors can not arise.
The classroom deployment of this approach is described in detail. Students, to
date, have found vector intervals helpful in avoiding out-of-bounds indexing
errors when all the vector elements of the interval are processed.
