Media Summary: Representation invariants can be implemented and used to Debugging is a dirty job, but you've gotta do it. Here are some tips. Textbook: "Bugs" are not the best term for thinking about errors in programs. "Faults" and "failures" are better. Textbook: ...
Bisect Ocaml Programming Chapter 6 - Detailed Analysis & Overview
Representation invariants can be implemented and used to Debugging is a dirty job, but you've gotta do it. Here are some tips. Textbook: "Bugs" are not the best term for thinking about errors in programs. "Faults" and "failures" are better. Textbook: ... Proof by induction of correctness of a function that computes the summation of an integer sequence Textbook: ... Abstraction functions are...abstract. So how could you implement them? Conversion to strings is an example. Textbook: ... The goal of testing is to expose the existence of faults. Automated unit and regression testing are especially important. Textbook: ...
Structural induction can be used to prove the correctness of functions on lists Textbook: Equational reasoning provides a basic proof format for correctness proofs about functional programs Textbook: ... What information should documentation provide vs reveal? Good specifications abstract by hiding information about ... Glass-box testing methodologies: statement, condition, and path coverage Textbook: The correctness of a data-abstraction operation can be understood using abstraction functions, representation invariants, and ... Developing an implementation of a data abstraction, as an ongoing example of the documentation that implementers need ...
QCheck is an automated tool for randomized property-based testing of A proof by structural induction that length distributes over append Textbook: