anchor.diff:  ----
   +
   'Posted 2015.05.13. Danila Deliya'
  -+
  -** p. 211, Virtual Column, The section should begin: **Each table in
  -our +qdb+ database starts with a +date+ column.** But where did this
  +* p. 211, Virtual Column, The section should begin: *Each table in
  +our +qdb+ database starts with a +date+ column.* But where did this
   column come from?
   +
   'Posted 2015.05.13. Danila Deliya'
  -+
  -** p. 218, Compressing by Default, The last sentence should read: To
  -clear the compression configuration we can use the **`\x`** system
  +* p. 218, Compressing by Default, The last sentence should read: To
  +clear the compression configuration we can use the *`\x`* system
   command and +.z.zd+ will be cleared.
   +
   'Posted 2015.05.13. Danila Deliya'
  ---
  -* Chapter 16
  -+
  ---
  -** p. 227, Subscriptions, The first sentence should read: Asynchronous
  +
  +== Chapter 16
  +
  +* p. 227, Subscriptions, The first sentence should read: Asynchronous
      messages are often used to send messages as fast *as* possible ...
   +
   'Posted 2015.04.04. Lam Hin Yan'
  ---
  -* Chapter 17
  -* Appendix A
  -+
  ---
  -** p. 274, Utilities, The implementation of +.util.pivot+ should read:
  +
  +== Chapter 17
  +
  +== Appendix A
  +
  +* p. 274, Utilities, The implementation of +.util.pivot+ should read:
   +
   ----
   pivot:{[t]
  
positive.code: = Q Tips Errata
  
  Despite my best efforts to create the book with zero errors, readers
  have pointed out a few bugs. The Kindle version has all corrections
  and is available for re-download. Please report any new errata to
  mailto:nick.psaris@gmail.com[Nick Psaris].
  
  
  == Errata
  
  * Foreword
  * Preface
  * Chapter 1
  * Chapter 2
  +
  --
  ** p. 9, Running q, the fifth sentence should read: +*4*()core+
  indicates that kdb+ is capable of seeing *4* cores on my machine.
  +
  'Posted 2015.05.03. Danila Deliya'
  ** p. 17, Parenthesis, the first sentence should read: Parentheses can
  also be used *to* enforce operator precedence.
  +
  'Posted 2015.05.03. Danila Deliya'
  --
  * Chapter 3
  * Chapter 4
  +
  --
  ** p. 44, Reshape, should read: The second line of the +.stat.bm+
    function uses the "*#*" operator ...
  +
  'Posted 2015.03.27. Julien Quentin Tran'
  ** p. 44, Reshape, the second sentence should read: The basic form of
     the take operator "*#*" takes ...
  +
  'Posted 2015.03.27. Julien Quentin Tran'
  ** p. 46, Loading Code, the last sentence should conclude: we now move
  to a slower generator of normal random variables that only requires a
  single *uniform* variable as input.
  +
  'Posted 2015.05.03. Danila Deliya'
  ** p. 47, Horner's Method, the first sentence should begin: The
  *fifth* line.
  +
  'Posted 2015.05.03. Danila Deliya'
  --
  * Chapter 5
  +
  --
  ** p. 53, Identity vs Equality, the second sentence should read: For atoms, the match operator and the equality operator "=" have the *same* behavior.
  +
  'Posted 2015.03.27. Julien Quentin Tran'
  --
  * Chapter 6
  * Chapter 7
  * Chapter 8
  * Chapter 9
  +
  --
  ** p. 116, Trades, the second paragraph should begin: The +prev+
     operator is similar **to** the +next+ operator.
  +
  'Posted 2015.05.13. Danila Deliya'
  +
  ** p. 119, The second listing should not have the extra:
  +
  ----
  q)o
  ----
  +
  'Posted 2015.03.27. Julien Quentin Tran'
  --
  * Chapter 10
  +
  ** p. 125, Nulls and Infinities, the third sentence of the last
     paragraph should end: perhaps the most appropriate trade price
     would be the last known trade **price**.
  +
  'Posted 2015.05.13. Danila Deliya'
  +
  ** p. 129, Drop, the first sentence on the page should be: The
     **second** line of the function indexes into the table to find the
     **job +j+**.
  +
  'Posted 2015.05.13. Danila Deliya'
  +
  ** p. 129, Drop, the fourth paragraph should also refer to the **+j+**
     dictionary.
  +
  'Posted 2015.05.13. Danila Deliya'
  +
  ** p. 132, Logging Library, The second sentence of the third paragraph
     in the section should begin:  In this case, the monadic function **+(1024*)+**.
  +
  'Posted 2015.05.13. Danila Deliya'
  +
  ** p. 132, Logging Library, The final listing should be labeled +.log.hdr+.
  +
  'Posted 2015.04.04. Lam Hin Yan'
  +
  ** p. 135, Configuration, The first new paragraph should mention five
     parameters: Our CEP server will require **five** parameters: a file
     path to load reference data, a time to run the end of day
     processing, a directory to save the market data, **a debug flag**,
     and a log level to control how much logging is displayed.
  +
  'Posted 2015.04.04. Lam Hin Yan'
  +
  ** p. 135, Configuration, The second paragraph should mention five
     parameters as well: The table now has one empty row, and **five**
     options.
  +   
  'Posted 2015.04.04. Lam Hin Yan'
  +
  ** p. 135, Parsing User Command Line Arguments, The last paragraph
     should begin: The **second** line of the function.
  +   
  'Posted 2015.05.13. Danila Deliya'
  --
  
  * Chapter 11
  * Chapter 12
  * Chapter 13
  * Chapter 14
  +
  --
  ** p. 172, Dot Notation, The last sentence should end: it **is** safer
     to always use explicit casting instead of using `dot` notation.
  +   
  'Posted 2015.05.13. Danila Deliya'
  +
  ** p. 177, Exec by, The third paragraph should begin: This works
  because calling **+first+**.
  +   
  'Posted 2015.05.13. Danila Deliya'
  +
  ** p. 181, Building a Pivot Table, The second sentence of the first
     paragraph should begin: Our dataset has a **price**
  +   
  'Posted 2015.05.13. Danila Deliya'
  +
  ** p. 184, The implementation of +.util.pivot+ should read:
  +
  ----
  pivot:{[t]
  
negative.code: ----
  +
  'Posted 2015.03.26. Nick Psaris'
  
  