Return to search

Evaluating Clojure Spec / Utvärdering av Clojure Spec

The objective of this thesis is to evaluate whether or not Clojure Spec meets the goals it sets out to meet with regards to easy data validation, performance and automatically generated tests in comparison to existing specification systems in the Clojure ecosystem. A specification for a real-world data format was implemented in the three currently popular specification systems used in Clojure. They were then compared on merits in terms of performance, code size and additional capabilities. The results show that Spec shines with complex data, both in expressivity and validation performance, but has an API more complex than its competitors. For complex enough use cases where expressing regular data structures and generative testing is desired the time investment of learning Spec pays off, in simpler situations an assertions library like Truss can be recommended.

Identiferoai:union.ndltd.org:UPSALLA1/oai:DiVA.org:liu-142271
Date January 2017
CreatorsLuckey, Christian
PublisherLinköpings universitet, Programvara och system
Source SetsDiVA Archive at Upsalla University
LanguageEnglish
Detected LanguageEnglish
TypeStudent thesis, info:eu-repo/semantics/bachelorThesis, text
Formatapplication/pdf
Rightsinfo:eu-repo/semantics/openAccess

Page generated in 0.0028 seconds