learnclojure's profile picture. Learn Clojure and ClojureScript through small examples.

Learn Clojure!

@learnclojure

Learn Clojure and ClojureScript through small examples.

Learn Clojure! đã đăng lại

(for [[n v] (ns-publics 'clojure.core) :let [since (:added (meta v))] :when (= since "1.4")] n) ;; vars since 1.4 in core / cc @learnclojure


proxy is for interop, and it can extend Java classes and even invoke parent constructor with proxy-super bit.ly/HxUBV0 #clojure


#clojure's map takes many colls: (map vector [:a :b] [1 2]) ;=> ([:a 0] [:b 1]). @cgrand takes this to the next level bit.ly/HzVsoJ


#clojure maps are functions of their keys, and can also take a not-found value like the get function does: ({:x 1} :y 2) ;=> 2


Learn Clojure! đã đăng lại

@learnclojure On top of it being an obtuse and inefficient way to solve the problem, it doesn't work for the common case of same guesses.


&env and &form, available in macros, are tools for compile-time introspection bit.ly/fPY9FQ (magick spell: bit.ly/FPTZKF)


#clojure 1.4 introduces mapv and filterv for working with vectors - handy when IO resources are involved and laziness gets in the way


play a c-major scale, using #clojure and java midi, from your REPL! gist.github.com/350253. see also: vimeo.com/22798433


(def flatten1 (partial mapcat identity)) #clojure


When defining namespace-local thingies, prefer ^:private over defn- (for example) #clojure


Formatting a number as a string with commas in the right place: gist.github.com/1761143 #clojure (via @unclebob and @holy_chao)


Will resume post-haste.


Be careful! The (loop) form in #Clojure will happily work without a recur. It'll silently do whatever its body says once.


Run your browser from #Clojure: (doto (java.awt.Desktop/getDesktop) (.browse (java.net.URI/create "http://clojure.org")))


RT @pjstadig: #clojure isn't a pure functional language, and rich likes it that way, so stop drinking the mutable state is bad kool-aid


Recursion is a low-level operation! http://blog.fogus.me/2011/03/09/recursion-is-a-low-level-operation/ #clojure #fp #hof #pointfree


Run-length encode a #Clojure sequence: https://gist.github.com/860878


Loading...

Something went wrong.


Something went wrong.