Skip to content

Commit a091cb7

Browse files
- add code snippets based on actual event, and hands-on link
- bring the english version up-to-date with the french
1 parent 3c8a249 commit a091cb7

File tree

2 files changed

+63
-15
lines changed

2 files changed

+63
-15
lines changed

sucker-punch-propaganda/README-fr.org

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#+TITLE: Pourquoi Clojure ?
22
#+AUTHOR:
3-
#+DATE: <2012-02-29 Wed 19:30>
3+
#+DATE: <2012-02-29 Wed 19:30>
44
#+OPTIONS: toc:nil
55
* Hypothèse de Sapir Whorf
66
(Encore) un langage de plus ?
@@ -136,3 +136,13 @@ Rich made a believer out of me !" ☺
136136
(lazy-cat [0 1] (map + (rest fib-seq) fib-seq)))
137137
#+end_src
138138
- user> (take 16 fib-seq) :: (0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610)
139+
* TODO Hands-on !
140+
- [[http://tryclj.com/][try clojure !]]
141+
- [[https://gist.github.com/1951396][code snippets]]
142+
- [[http://www.cljbin.com/paste/4f564497e4b00708a069359e][fibonacci seq 1]]
143+
- [[http://www.cljbin.com/paste/4f5644e4e4b00708a069359f][fibonacci seq 2]]
144+
- [[http://www.cljbin.com/paste/4f564571e4b00708a06935a0][fizzbuzz]]
145+
- [[http://www.cljbin.com/paste/4f564644e4b00708a06935a1][fizzbuzzzapp]]
146+
- [[http://www.cljbin.com/paste/4f564754e4b00708a06935a3][menu]]
147+
148+
Souvenez-vous : un IDE vous aidera *beaucoup* pour les () !

sucker-punch-propaganda/README.org

Lines changed: 52 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -37,17 +37,17 @@ Toolbox > swiss army knife
3737
multiple)
3838
- open structures as maps of interned strings (closed struct available)
3939
* Practical SMP primitives
40-
- thread local mutations of /vars/
41-
- queued asynch mutations on /agents/
42-
- atomics mutations
43-
- single /atoms/
40+
- vars :: thread local writes
41+
- agents :: queued asynch writes
42+
- inter-threads synch :: atomic writes
43+
- on single /atoms/
4444
- transactions on multiple /refs/
4545
* Very Simple Syntax ☺
4646
"Oh, btw, it's a LISP"
4747
[[file:lisp-angry-meme.png]]
4848
* Don't panic !
4949
Not necessarily /easy/ at first but :
50-
- syntactic grouping of pairs
50+
- syntactic grouping of pairs without ()
5151
- code is data (list), but most data structures are not lists :
5252
- [vector]
5353
- {map}
@@ -66,10 +66,11 @@ Not necessarily /easy/ at first but :
6666
- Myself :: "Any boring (part of a) task can and should be automated away"
6767
- Myself again :: "Programming should be fun !"
6868

69-
Hence you should be able to automate programming !
69+
Hence you should be able to automate boring parts of programming !
7070
To make it /easy/, you *need* the /simple/ syntax of code as data structure.
71-
(disclosure: I'm a Boost::mpl user)
72-
[Macronomicon by M.Fogus]
71+
(disclosure: I'm a [[http://www.boost.org/doc/libs/1_49_0/libs/mpl/doc/index.html][Boost::mpl]] user !)
72+
[ [[http://blog.fogus.me/2011/11/15/the-macronomicon-slides/][Macronomicon by M.Fogus]]]
73+
7374

7475
* Conclusion
7576
Perfect Plateform for :
@@ -86,16 +87,53 @@ better understanding of concepts you already (think you) know
8687
- Don't fear/dismiss the unknown
8788
- Learn things and have fun ! (I know you will ☺)
8889

90+
"+others will never resolve on passing higher order functions in
91+
forests of parenthesis+" ☹
92+
93+
94+
I avoided LISP for 10 years :
95+
"I was blind, now I can see.
96+
Rich made a believer out of me !" ☺
97+
8998
* [Web|Bib]liography
9099

91100
- Talks (slides / videos)
92-
- Are We There Yet ?
93-
- Hammock Driven Development
94-
- Simple Ain't Easy
101+
- Are We There Yet ? *← Must See !*
102+
- [[http://www.wiki.jvmlangsummit.com/images/a/ab/HickeyJVMSummit2009.pdf][slides]]
103+
- [[http://www.infoq.com/presentations/Are-We-There-Yet-Rich-Hickey][video]]
104+
- [[https://blip.tv/clojure/hammock-driven-development-4475586][Hammock Driven Development]]
105+
- [[http://www.infoq.com/presentations/Simple-Made-Easy][Simple Made Easy]]
95106
- …
96107
- Books
97-
- The Joy of Clojure
98-
- Clojure in Action
99-
- Programming Clojure $2^{nd}$ ed.
108+
- [[http://joyofclojure.com/][The Joy of Clojure]]
109+
- [[http://www.manning.com/rathore/][Clojure in Action]]
110+
- [[http://www.clojurebook.com/][Clojure Programming]]
100111
- …
112+
* Bonus track : snippets
113+
#+begin_src clojure export: code
114+
(def fizzbuzz
115+
"lazy seq of fizzbuzz"
116+
(lazy-seq (map #(let [s (str (if (= 0 (rem % 3)) "Fizz")
117+
(if (= 0 (rem % 5)) "Buzz"))]
118+
(if (empty? s) % s))
119+
(iterate inc 1))))
120+
#+end_src
121+
- user> (take 16 fizzbuzz) :: (1 2 "Fizz" 4 "Buzz" "Fizz" 7 8 "Fizz"
122+
"Buzz" 11 "Fizz" 13 14 "FizzBuzz" 16)
123+
#+begin_src clojure export: code
124+
(def fib-seq
125+
"lazy seq of Fibonacci numbers"
126+
(lazy-cat [0 1] (map + (rest fib-seq) fib-seq)))
127+
#+end_src
128+
- user> (take 16 fib-seq) :: (0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610)
129+
130+
* TODO Hands-on !
131+
- [[http://tryclj.com/][try clojure !]]
132+
- [[https://gist.github.com/1951396][code snippets]]
133+
- [[http://www.cljbin.com/paste/4f564497e4b00708a069359e][fibonacci seq 1]]
134+
- [[http://www.cljbin.com/paste/4f5644e4e4b00708a069359f][fibonacci seq 2]]
135+
- [[http://www.cljbin.com/paste/4f564571e4b00708a06935a0][fizzbuzz]]
136+
- [[http://www.cljbin.com/paste/4f564644e4b00708a06935a1][fizzbuzzzapp]]
137+
- [[http://www.cljbin.com/paste/4f564754e4b00708a06935a3][menu]]
101138

139+
Remember : a proper IDE will help *a lot* you with the () !

0 commit comments

Comments
 (0)