Hi all, I intend to (ab)use my authority as a teacher to enlighten unsuspecting students about Clojure.
On the plus side, I may give them insights that they did not even know they needed. On the minus side, I cannot expect (all of) them to be curious about Clojure. Hence, I want to make a "demand driven" introduction. My goal is to : 1. identify what novelties Clojure brings to the table to Java developers - homoiconicity : macros - syntaxing sugar (e.g ->, cond) - programming paradigms as libraries - core.logic - core.async - dynamic typing - simple concurrency handling : - immutable data structures - ref - atoms - STM - open-ended dynamic dispatching (protocols, namespaced vs. monkey patching) - multiple dispatching (multimethods) - maps instead of classes (no privacy & accessors needed thx to dynamic typing and immutable data) and composable libraries instead of frameworks. 2. For as many of those features as possible, I'd like to find a minimal use case that will be : - genuinely interesting (so that they find it beliveable that they might actually want to solve a similar problem) - complex (if possible hard!) / tedious to solve in Java (I will provide the Java code) - simple (if possible easy) to solve in Clojure. The idea being that they would conclude from : 1. that the want to solve these problems 2. that Java won't help them much but Clojure would help them a lot (+ 1. 2.) → 3. They want to learn Clojure ! ☺ I'd be most grateful for any help, either to complete/amend my list in 1., or to provide ideas for 2. Best Regards, B. -- -- 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. For more options, visit https://groups.google.com/groups/opt_out.