Hello, Along with a friend, we are preparing a short talk on spec.
The main idea is to show some lessons we "learned" (read: _are_ learning) exploring this awesome tool. This talk will be aimed at a "geeky" audience unfamiliar with Clojure, so we will surely add some quick Clojure overview. Below is our current abstract draft[*]. Whereas there are certainly plenty of things to talk about when it comes to spec, our original focus is on showing how spec can help modeling our domain. What do you think about the focus? Any other improvement suggestions? After 4+ years of clojure.spec (and plenty of talks about it)... What would you like to see in a clojure.spec talk? We are also interested in spec-like tools/libraries for other general-purpose languages, so we can compare them with spec. Although we think it is very likely there are similar tools around (after all, formal verification has been around since the dawn of programming), we are not aware of any other tool as widely used in a general-purpose language as spec is within Clojure. Maybe you know of such a tool? Your feedback will be more than welcome! Thanks, Leandro [*] I am pretty sure that the English text of our abstract can be improved. We started crafting it in Spanish... ***************************** clojure.spec: A Swift way to Evolve our Domain Model clojure.spec is a Clojure library that enables us to: 1) describe what properties should our data conform to, and 2) verify the compliance of those properties, both at compile time and run time. This quasi-formal (and, also, verifiable!) specification step of the data model complements the domain problem modelling step. During our talk we will show: 1) how this specification usage not only reduces parameter-validation error generation, but also the generation of other types of errors within the functions’ code itself; 2) how this mechanism can be used when writing tests; either standalone, or combined with some “xDD” variant; and 3) some lessons we learned along the process. -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/clojure/CAAn03x7iCok5ztegTeomL57KpL1pP%2Bh5w9CCrfAJxNQOGQUn7w%40mail.gmail.com.