Please log in to watch this conference skillscast.
In this talk, you will explore how
clojure.spec works under-the-hood, how to use it to specify your APIs, and how it can be extended to do arbitrary coercion, documentation generation, and declarative data transformations.
By interpreting what specs mean and extending
clojure.spec, you can translate your clojure.spec descriptions into other formats or languages for translation or documentation purposes.
By specifying your domain models, you can go even further and replace deeply-nested data-wrangling functions with declarative spec-to-spec transformations that can be generated from two compatible specs.
Finally, you will discover the open source implementation of these ideas, which adds arbitrary coercion to
clojure.spec, enables specs to be translated into other formats (such as json-schema and swagger), and enables compatible spec-to-spec data transformations.
The Call for Papers is now open for Clojure eXchange 2017! Submit your talk for the chance to join a stellar line-up of experts on stage. Find out more.
YOU MAY ALSO LIKE:
- A Dynamic, Statically Typed Contradiction (SkillsCast recorded in December 2017)
- Leonardo De Marchi's Deep Learning Fundamentals (in London on 22nd - 23rd October 2019)
- Clojure eXchange 2019 (in London on 2nd - 3rd December 2019)
- Security in the Age of Big Data (Data Anonymisation & Encryption) (in London on 21st October 2019)
- Solandra Hands-On Tutorial & Emergent Behaviour In Insects (in London on 28th October 2019)
- Automating Elaborate-Transform-Load for Busy Data Scientists (SkillsCast recorded in October 2019)
- Lightening talk: Redis Modules (SkillsCast recorded in July 2019)
Speculative Development: Using clojure.spec to write correct, beautifully documented APIs
Andrew is a software developer at GoMore, working mostly in Clojure. He's interested in experimenting with, and implementing functional programming languages.