# Vector Programming Using Generative Recursion

**Authors:** Marco T. Moraz\'an (Seton Hall University)

arXiv: 1906.11423 · 2019-06-28

## TL;DR

This paper introduces a generative recursion approach to vector programming, providing a new framework that helps beginners understand and correctly implement vector operations, reducing common indexing errors.

## Contribution

It extends existing vector programming methods from structural to generative recursion, offering a practical methodology and examples for CS1 education.

## Key findings

- Provides a new generative recursion framework for vector programming.
- Helps beginners understand correct vector indexing and processing.
- Offers concrete examples for teaching vector programming.

## Abstract

Vector programming is an important topic in many Introduction to Computer Science courses. Despite the importance of vectors, learning vector programming is a source of frustration for many students. Much of the frustration is rooted in discovering the source of bugs that are manifested as out-of-bounds indexing. The problem is that such bugs are, sometimes, rooted in incorrectly computing an index. Other times, however, these errors are rooted in mistaken reasoning about how to correctly process a vector. Unfortunately, either way, all too often beginners are left adrift to resolve indexing errors on their own. This article extends the work done on vector programming using vector intervals and structural recursion to using generative recursion. As for problems solved using structural recursion, vector intervals provide beginners with a useful framework for designing code that properly indexes vectors. This article presents the methodology and concrete examples that others may use to build their own CS1 modules involving vector programming using any programming language.

## Full text

_Full body text omitted from this summary view._ Fetch the complete paper as Markdown: https://tomesphere.com/paper/1906.11423/full.md

## Figures

9 figures with captions in the complete paper: https://tomesphere.com/paper/1906.11423/full.md

## References

20 references — full list in the complete paper: https://tomesphere.com/paper/1906.11423/full.md

---
Source: https://tomesphere.com/paper/1906.11423