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.

Reply via email to