
TL;DR
BOOP is a structured framework for teaching correctness-first programming, emphasizing formal specification and proof to improve computational thinking among students, especially in introductory courses.
Contribution
This paper introduces BOOP, a novel correctness-first methodology with four phases, and demonstrates its implementation and positive impact on student reasoning and debugging skills.
Findings
Improved algorithmic reasoning in students
Reduced trial-and-error debugging
Enhanced understanding of edge cases
Abstract
Novice programmers frequently adopt a syntax-specific and test-case-driven approach, writing code first and adjusting until programs compile and test cases pass, rather than developing correct solutions through systematic reasoning. AI coding tools exacerbate this challenge by providing syntactically correct but conceptually flawed solutions. In this paper, we address the question of developing correctness-first methodologies to enhance computational thinking in introductory programming education. To this end, we introduce BOOP (Blueprint, Operations, OCaml, Proof), a structured framework requiring four mandatory phases: formal specification, language-agnostic algorithm development, implementation, and correctness proof. This shifts focus from making the code to understanding the code is correct. BOOP was implemented at Ashoka University using a VS Code extension and preprocessor that…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
