Take the 2-minute tour ×
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems.. It's 100% free, no registration required.

If you look at the output of cal 9 1752 you will see this strange output:

   September 1752
 S  M Tu  W Th  F  S
       1  2 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

The following story titled "cal 9 1752 explained"" was copied off of a newslist in the early 90's and archived under Collections of funny stuff for a computer audience by David G. Wiseman (a Network Manager in the Department of Computer Science at The University of Western Ontario).

The guy that originally wrote the "cal" command on some old Version 7 machine had an off-by-one error in his code. This showed up as some erroneous output when a malloc'd variable overwrote 12 extra bytes with zeroes, thus leading to the strange calendar output seen above.

Now, nobody in his right mind really cares about the calendar for September 1752. Even the idea of the year 1752 does not exist under UNIX, because time did not begin for UNIX until early 1970. As a result, nobody even knew that "cal" had this error until much later. By then there were thousands of copies of "cal" floating around, many of them binary-only. It was too late to fix them all.

So in mid-1975, some high-level AT&T officials met with the Pope, and came to an agreement. The calendar was retroactively changed to bring September 1752 in line with UNIX reality. Since the calendar was changed by counting backwards from September 14, 1752, none of the dates after that were affected. The dates before that were all moved by 12 days. They also fixed the man page for "cal" to document the bug as a feature.

The 11 days from September 3 to September 13 were simply gone from the records. They searched the history books and found that fortunately nothing of much significance happened during those 11 days.

Overall, this whole incident was pretty much a non-event. One science fiction author later heard about it, and blew the thing up into a full-length work of science-fiction called "The Lathe of Heaven", a book that in my opinion bears little resemblence to what really happened.

What is the real explanation for the output anomaly?

share|improve this question
9  
Don't you see the /humor directory in the URL you've posted? ;) –  alex Aug 2 '11 at 15:51
    
That link gave me a good laugh. –  jw013 Aug 3 '11 at 7:04
    
...what's wrong with the output again? :p –  d33tah Apr 22 at 16:37

2 Answers 2

up vote 25 down vote accepted

To trace the real story, try running man cal yourself:

The Gregorian Reformation is assumed to have occurred in 1752 on the 3rd
of September.  By this time, most countries had recognized the reforma-
tion (although a few did not recognize it until the early 1900’s.)  Ten
days following that date were eliminated by the reformation, so the cal-
endar for that month is a bit unusual.

Then, if your history is sketchy, continue with Wikipedia for information about the changes introduced by Gregorian Calendar and it's history of adoption in various parts of the world:

The Gregorian calendar reform contained two parts, a reform of the Julian calendar as used up to Pope Gregory's time, together with a reform of the lunar cycle used by the Church along with the Julian calendar for calculating dates of Easter.
[...]
In addition to the change in the mean length of the calendar year from 365.25 days (365 days 6 hours) to 365.2425 days (365 days 5 hours 49 minutes 12 seconds), a reduction of 10 minutes 48 seconds per year, the Gregorian calendar reform also dealt with the past accumulated difference between these lengths.
[...]
Because of the Protestant Reformation, however, many Western European countries did not initially follow the Gregorian reform, and maintained their old-style systems. Eventually other countries followed the reform for the sake of consistency, but by the time the last adherents of the Julian calendar in Eastern Europe (Russia and Greece) changed to the Gregorian system in the 20th century, they had to drop 13 days from their calendars, due to the additional accumulated difference between the two calendars since 1582.
[...]
Britain and the British Empire (including the eastern part of what is now the United States) adopted the Gregorian calendar in 1752, by which time it was necessary to correct by 11 days. Wednesday, 2 September 1752 was followed by Thursday, 14 September 1752.

By the time Unix came along and reset the worlds clocks to start at January 1st, 1970 there was nothing to be done about the whole mess except pick a date to show the reset on. Since the world adopted the current Gregorian calendar system at varying times in different countries, the exact time to make this correction is somewhat arbitrary.

If you ever have a reason to count dates going back that far in your software, you will run into much more significant issues than just that one reset! The history of calendaring is full of surprises!

share|improve this answer
    
Great answer! To make things even more complex, certain Greek monastic societies are still using the Julian calendar today. –  terdon Dec 2 '13 at 19:40

Here is a good paper about calendars(PDF) that explains how the slow shift of Easter through the year made this date correction necessary and also describes when different countries made the switch.

On page 904:

He [Pope Greogory] also corrected the accumulated 10-day error in the calendar by proclaiming that Thursday, October 4, 1582 C.E., the lastdate in the old style (Julian calendar), would be followed by Friday, October 15, 1582 C.E., the first day of the new style (Gregorian) calendar. Catholic countries followed this rule, but Protestant countries resisted: Spain, Portugal and Italy adopted it immediately, as did the Catholic states in Germany. The protestant parts of Germany waited until 1700 to adopt it. Great Britain and its colonies (including the United States) waited until 1752, Russia held out until after the revolution in 1918, and Bulgaria until 1920.

The paper continues to reference a extensive list of dates of adoption which was compiled by astronomers and explains in a straight forward way how to convert between different calendar system.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.