anchor.diff:  ------------------------------------------------------
   (defun square (x)
     (* x x))
  -(square 4)                      ; => 9
  +(square 4)                      ; => 16
   (mapcar #'square '(1 2 3 4 5))  ; => (1 4 9 16 25)
   (mapcar #'(lambda (x) (+ x 5))
           '(10 20 30))            ; => (15 25 35)
  
positive.code: (sum-list '())               ; => 0
  ------------------------------------------------------
  
  == Lisp: Macros
  
  - Lisp is homoiconic; its programs are comprised of lists
  - That lends itself to code which manipulates or produces other code
  - Macros can be used to invent your own control structures, by controlling
    what elements are evaluated
  
negative.code: ** Good interoperability with Java libraries
  
  * Concurrency primitives in the standard library
  ** STM: agents, refs, atoms, vars.
  
  * Prefers purely-functional programming styles and idioms
  ** Immutable data structures
  ** Imperative style is still possible, but de-emphasized
  ** Not particularly object-oriented
  
  == Clojure: Code
  
  