anchor.diff:  ----
   (require '[bytebuff.core :as buf])
   
  -;; Indexed spec
  +;; Indexed composition
   (def my-spec1 (buf/spec (buf/int32) (buf/bool)))
   
   ;; The same spec but using associative composition
  
positive.code: ;; => 2
  ----
  
  
  === Creating buffer
  
  
negative.code: |=========================================
  
  
  === Supported typespecs
  
  This is a complete list of supported plain value type spec:
  
  [cols="1,1,1,2", options="header"]
  |====================================================================
  | Name    | Function      | Size (in bytes) | Notes
  | Short   | `buf/int16`   | 2               |
  | Integer | `buf/int32`   | 4               |
  | Long    | `buf/int64`   | 8               | Only on jvm
  | Float   | `buf/float`   | 4               |
  | Double  | `buf/double`  | 8               |
  | Boolean | `buf/bool`    | 1               |
  | Byte    | `buf/byte`    | 1               |
  | String  | `buf/string`  | N               | Fixed length string
  | String  | `buf/string*` | 4+N             | Arbitrary length string
  |====================================================================
  
  
  Independently if a spec is a value spec or a composition of value specs, all them
  implements the same abstraction and can be used in read or write operations.
  
  
  === Coming features
  
  - *memoryviews*: abstraction for random read/write access to buffer without parsing
    all spec related data.
  - nodejs/iojs buffer support.
  - more function for create compositions like repeated type, or key value pairs.
  
  
  == How to Contribute?
  