Explore Clojure's spec library in this conference talk from Philly ETE 2017. Dive into the world of expressing data constraints without types, learning how spec enhances Clojure by providing a system for declarative specifications of data and functions. Discover the benefits of using specs for validation, documentation, destructuring, instrumentation, data generation, and automatic generative testing. Understand the flexibility of adding specs iteratively or selectively to your programs, and gain insights into predicative and structural aspects of spec. Learn about modeling information, syntax operations, and working with points, lines, and polygons. Explore function specs, enhanced documentation, and robustness through instrumentation and generative testing. Gain practical knowledge on using spec in production, including spec transformation, construction, and testing techniques.
Clojure Spec: Expressing Data Constraints without Types