anchor.diff:  (sum-list '())               ; => 0
   ------------------------------------------------------
   
  +(Note, example is not tail-call optimised)
  +
   == Lisp: Macros
   
  -- Lisp is homoiconic; its programs are comprised of lists
  +- 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
  
positive.code: ** Good interoperability with Java libraries
  
  * Concurrency primitives in the standard library
  ** STM: agents, refs, atoms.
  
  * Prefers purely-functional programming styles and idioms
  ** Immutable data structures
  ** Imperative style is still possible, but de-emphasized
  
  == Clojure: Code
  
  
negative.code: 
  == Lisp: Functions
  
  - Functions are first-class (can be passed as arguments, returned
    from other functions, etc)
  - The usual functional programming suspects exist (`map`, `reduce`,
    `filter`, etc)
  - Common lisp needs sharp-quote (`#'`) for function quoting
  - Lambda expressions exist (and must also be sharp-quoted)
  
  