Video and slides synchronized, mp3 and slide download available at URL http://bit.ly/1piTS6D.
Jessica Kerr talks about Clojure and explores the potential of contracts as the best-yet compromise between types and tests. Filmed at qconsf.com.
Jessica Kerr is a functional developer on the JVM. She enjoys Scala, Clojure and Elm. She recently joined Stripe.
2. InfoQ.com: News & Community Site
• 750,000 unique visitors/month
• Published in 4 languages (English, Chinese, Japanese and Brazilian
Portuguese)
• Post content from our QCon conferences
• News 15-20 / week
• Articles 3-4 / week
• Presentations (videos) 12-15 / week
• Interviews 2-3 / week
• Books 1 / month
Watch the video with slide
synchronization on InfoQ.com!
http://www.infoq.com/presentations
/clojure-contracts
3. Purpose of QCon
- to empower software development by facilitating the spread of
knowledge and innovation
Strategy
- practitioner-driven conference designed for YOU: influencers of
change and innovation in your teams
- speakers and topics driving the evolution and innovation
- connecting and catalyzing the influencers and innovators
Highlights
- attended by more than 12,000 delegates since 2007
- held in 9 cities worldwide
Presented at QCon San Francisco
www.qconsf.com
11. (function-name arg1 arg2)
(defn function-name [param1 param2]
(println "Hello QCon")
(do-something-with (and param1 param2)))
function definition
last expression is the result
12. (defn function-name [param1 param2]
(println "Hello QCon")
(do-something-with (and param1 param2)))
square braces
make a vector
59. What do we know?
data shape
data value boundaries
relationships within values
What could we know?
produced types
relationships between types
60. What do we know?
What could we know?
produced types
relationships between types
relationships between values
data shape
relationships within values
data value boundaries