The Bobox parallelization framework has two primary goals: simplify writing parallel, data-intensive programs and to serve as a testbed for developing generic parallel algorithms and data-oriented parallel algorithms. The main design principles are: - all synchronization is hidden from the user, most technical details (Non-Uniform Memory Access, cache hierarchy, CPU architecture) are handled by the framework - high-performance messaging is the only means of communication and synchronization - utilizes easy to comprehend basic paradigms such as task parallelism and non-linear pipeline