Clojure Spec: Expressing Data Constraints without Types
Offered By: ChariotSolutions via YouTube
Course Description
Overview
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.
Syllabus
Intro
What are we doing?
Data processing
Clojure and data
The Clojure Promise
Why spec?
Why not types?
Predicative
Structural
Generating from collection specs
Modeling information
Syntax - regex ops
Points and lines
Conforming
Polygons
Functional
Function specs
A function spec
Spec with arg constraint
Spec with args/ret constraint
Enhanced docs
Exercising functions
Robustness
Instrument
Generative testing
Successful check
Failing check
spec in Production
Spec specs
Spec transformation
Spec construction
Spec testing
Taught by
ChariotSolutions
Related Courses
Machine learning with Apache SystemMLCognitive Class SwiftUI Animations iOS 16 - Animate Anything with SwiftUI
Packt via Coursera Programming Paradigm Concepts
DataCamp ManipulaciĆ³n Eficiente de Arreglos con JavaScript
egghead.io Sprinkle declarative, reactive behaviour on your HTML with Alpine JS
egghead.io