Advertisement
Membership
Login
ACCU Buttons
Search in Book Reviews
Search is a simple string search in either book title or book author. The full text search is a search of the text of the review.
The text is everything that I had hoped for. However interlaced with the text we have the algorithms presented in Common Lisp. For many that will be a problem because Lisp is not an easy programming language to read. I can hear the hackles of fluent Lisp programmers rise. Lisp is a great language for those with a particular mind-set coupled with training. Unfortunately for the authors this is a very small minority of programmers, for the rest Lisp code just wraps algorithms in a thick mist of arcane syntax (and you thought C was bad :-)
The sad thing about this is that the consequence will be that many who would enjoy the substance of this book will return it to the bookshop's shelves after a brief browse through the pages. It takes a mature reading style to skip calmly past pages of a book to find that which concerns or interests you.
The main text gives extensive coverage of calendars that are still in use (with an excursion into the Mayan and Old Hindu Calendars). Interlaced with highly informative and well-researched material in plain English we have a more formal description of the algorithms used.
The book is packed with nuggets of information. Let me try you with a couple of questions (I'll put the answers at the end of this section).
What day of the week was January 1st 100 AD?
How can the day after December 29th be in the next year?
In conclusion, I think this book deserves to be widely read even if the Lisp content is heavy going. Good selective reading style will allow you to enjoy the information in this book while skipping the Lisp. You can hone your programming skills by implementing various calendars in the language of your choice.
Calendar Questions:
Q1. That is a naughty question because there isn't a unique answer. Contrary to common belief the Gregorian and Julian calendars did not start from the same base day. January 1st 1 AD (Gregorian) - a Monday - was January 3rd 1 AD (Julian). Unless I had specified which calendar I was using you could not answer the question. I am sorry if you wasted time trying to.Q2. The ISO calendar (yes there is one) starts with week 1 which is defined to be the week that contains the first Thursday of the Gregorian year (equivalent to the week that contains January 4th because ISO weeks start on Sundays). So if December 29th is a Saturday then the next day will be the first day of the first week of the next ISO year. By the way that means that ISO years consist of either 364 or 371 days. - Francis