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.

Reply via email to