Understanding the ignored for fun and schar

The paper

Paper on Rambam’s Laws of the Sanctification of the Moon:

Goals of the paper:

  • reconstruct models that Rambam uses and their parameters from the Rambam’s text;
  • identify misprints in the traditional editions;
  • see how Rambam’s calculations of the moon visibility compare to the current models.

Desire to publishing this paper in multiple formats was part of the motivation for writing Gradle DocBook plugin in general and its support for mathematics in DocBook in particular. It also influenced my thinking on publishing papers on the web.

The Code

Code that makes possible calculations with dates, time intervals and angles exactly as they are described by Rambam is available:

The code is written in Scala and uses extendable family polymorphism encoding with family members in separate files inspired by a Stackoverflow post by ayvango. It:

  • implements Rambam’s calculations for arithmetic calendar (chapters 6-10);
  • implements Rambam’s calculations for astronomical calendar (chapters 11-19);
  • has Rambam’s numerical examples as unit tests;
  • provides conversions between Jewish and secular (Gregorian) dates;
  • supports sanctification of the Sun calculations;
  • generates Torah and Haftorah reading schedule for a number of customs;
  • generates schedule of learning Rambam;

Enhancements being considered are:


There are some schedule-related issues to look into:

  • Magen Avraham 428:4 (6): When Pesach falls on Shabbat, so that residents of the Land of Israel read Shmini on the Shabbat following it, there are those that split Tazria and Metzora, and there are those that split Behar and Bechukotai, and if the year is leap, they split Matot and Masai;
  • Baladi (Yemenite): instead of Matot and Masai combine Chukat and Balak;
  • Daradaim (following Rabbi Saadia Gaon): instead of combining Matot and Masai, add to Korach Chukat to 20:21, and next Shabbos read the rest of Chukkat and Balak;
  • 3 small aliyot (for 2/5/Shabbos day): look into and implement differences in customs;
  • 3-year cycle: is anybody orthodox completing Torah cycle in three years? If yes, maybe we should generate that schedule too. There is a list of Haftarot;

Sources for the schedule algorithms.