Module calendrica-hebrew

Hebrew calendar conversions and holidays.

Ported from “Calendrical Calculations” (4th edition) by Nachum Dershowitz and Edward M. Reingold. Original Lisp code (CALENDRICA 4.0) is Apache 2.0 licensed.

Info:

  • Release: 0.2 2026-09-21

Functions

hebrew_date (year, month, day) Construct a Hebrew date {year, month, day}.
fixed_from_hebrew (h_date) Fixed date of Hebrew date h_date.
hebrew_from_fixed (date) Hebrew date {year, month, day} corresponding to fixed date.
civil_hebrew_from_fixed (date) Civil Hebrew date {year, month, day} corresponding to fixed date.
fixed_from_civil_hebrew (c_date) Fixed date of civil Hebrew date c_date.
yom_kippur (g_year) Fixed date of Yom Kippur occurring in Gregorian year g_year.
rosh_hashanah (g_year) Fixed dates of Rosh Hashanah (Hebrew New Year, Tishri 1) in Gregorian year g_year.
sukkot (g_year) Fixed dates of Sukkot (Tishri 15) in Gregorian year g_year.
shavuot (g_year) Fixed dates of Shavuot (Sivan 6) in Gregorian year g_year.
passover (g_year) Fixed date of Passover occurring in Gregorian year g_year.
purim (g_year) Fixed date of Purim occurring in Gregorian year g_year.
ta_anit_esther (g_year) Fixed date of Ta'anit Esther occurring in Gregorian year g_year.
tishah_be_av (g_year) Fixed date of Tishah be-Av occurring in Gregorian year g_year.
hanukkah (g_year) Fixed dates of Hanukkah (first day) occurring in Gregorian year g_year.
yom_ha_zikkaron (g_year) Fixed date of Yom ha-Zikkaron occurring in Gregorian year g_year.
hebrew_in_gregorian (h_month, h_day, g_year) Fixed dates of Hebrew month/day h_month/h_day falling in Gregorian year g_year.
hebrew_leap_year (h_year) True if h_year is a Hebrew leap year.
hebrew_sabbatical_year (h_year) True if h_year is a Hebrew sabbatical (shmita) year.
omer (date) Day of the Omer for fixed date (1..49), or BOGUS outside the Omer period.
birkath_ha_hama (g_year) Fixed dates of Birkath HaHama in Gregorian year g_year.
sh_ela (g_year) Fixed dates of Sh'ela (prayer for rain) in Gregorian year g_year.
hebrew_birthday_in_gregorian (birthdate, g_year) Fixed dates of Hebrew birthdate anniversary falling in Gregorian year g_year.
yahrzeit_in_gregorian (death_date, g_year) Fixed dates of yahrzeit for Hebrew death_date falling in Gregorian year g_year.

Fields

NISAN Nisan month number (1).
IYYAR Iyyar month number (2).
SIVAN Sivan month number (3).
TAMMUZ Tammuz month number (4).
AV Av month number (5).
ELUL Elul month number (6).
TISHRI Tishri month number (7).
MARHESHVAN Marheshvan month number (8).
KISLEV Kislev month number (9).
TEVET Tevet month number (10).
SHEVAT Shevat month number (11).
ADAR Adar month number (12).
ADARII Adar II month number (13, leap years only).


Functions

hebrew_date (year, month, day)
Construct a Hebrew date {year, month, day}.

Parameters:

  • year number Hebrew year.
  • month number Hebrew month.
  • day number Hebrew day.

Returns:

    table {year, month, day}
fixed_from_hebrew (h_date)
Fixed date of Hebrew date h_date.

Parameters:

  • h_date table Hebrew date {year, month, day}.

Returns:

    number Fixed date.
hebrew_from_fixed (date)
Hebrew date {year, month, day} corresponding to fixed date.

Parameters:

  • date number Fixed date.

Returns:

    table {year, month, day}
civil_hebrew_from_fixed (date)
Civil Hebrew date {year, month, day} corresponding to fixed date.

Parameters:

  • date number Fixed date.

Returns:

    table {year, month, day}, month in CLDR’s numbering.
fixed_from_civil_hebrew (c_date)
Fixed date of civil Hebrew date c_date.

Parameters:

  • c_date table Civil Hebrew date {year, month, day}, month in CLDR’s numbering (1..13; 6 only in a leap year).

Returns:

    number Fixed date.

Raises:

If the month is out of range, or 6 in a common year.
yom_kippur (g_year)
Fixed date of Yom Kippur occurring in Gregorian year g_year.

Parameters:

  • g_year number Gregorian year.

Returns:

    number Fixed date.
rosh_hashanah (g_year)
Fixed dates of Rosh Hashanah (Hebrew New Year, Tishri 1) in Gregorian year g_year.

Parameters:

  • g_year number Gregorian year.

Returns:

    {number,...} Fixed dates.
sukkot (g_year)
Fixed dates of Sukkot (Tishri 15) in Gregorian year g_year.

Parameters:

  • g_year number Gregorian year.

Returns:

    {number,...} Fixed dates.
shavuot (g_year)
Fixed dates of Shavuot (Sivan 6) in Gregorian year g_year.

Parameters:

  • g_year number Gregorian year.

Returns:

    {number,...} Fixed dates.
passover (g_year)
Fixed date of Passover occurring in Gregorian year g_year.

Parameters:

  • g_year number Gregorian year.

Returns:

    number Fixed date.
purim (g_year)
Fixed date of Purim occurring in Gregorian year g_year.

Parameters:

  • g_year number Gregorian year.

Returns:

    number Fixed date.
ta_anit_esther (g_year)
Fixed date of Ta'anit Esther occurring in Gregorian year g_year. If Purim is on Sunday, returns the prior Thursday; otherwise the day before.

Parameters:

  • g_year number Gregorian year.

Returns:

    number Fixed date.
tishah_be_av (g_year)
Fixed date of Tishah be-Av occurring in Gregorian year g_year. If the ninth of Av is Saturday, returns the next day.

Parameters:

  • g_year number Gregorian year.

Returns:

    number Fixed date.
hanukkah (g_year)
Fixed dates of Hanukkah (first day) occurring in Gregorian year g_year.

Parameters:

  • g_year number Gregorian year.

Returns:

    table List of fixed dates.
yom_ha_zikkaron (g_year)
Fixed date of Yom ha-Zikkaron occurring in Gregorian year g_year. Observance is moved if Iyyar 4 falls on Thursday, Friday, or Sunday.

Parameters:

  • g_year number Gregorian year.

Returns:

    number Fixed date.
hebrew_in_gregorian (h_month, h_day, g_year)
Fixed dates of Hebrew month/day h_month/h_day falling in Gregorian year g_year.

Parameters:

  • h_month number Hebrew month.
  • h_day number Hebrew day.
  • g_year number Gregorian year.

Returns:

    {number,...} Fixed dates.
hebrew_leap_year (h_year)
True if h_year is a Hebrew leap year.

Parameters:

  • h_year number Hebrew year.

Returns:

    boolean
hebrew_sabbatical_year (h_year)
True if h_year is a Hebrew sabbatical (shmita) year.

Parameters:

  • h_year number Hebrew year.

Returns:

    boolean
omer (date)
Day of the Omer for fixed date (1..49), or BOGUS outside the Omer period. Returns {weeks, days} where weeks is complete weeks and days is remaining days.

Parameters:

  • date number Fixed date.

Returns:

    table or number {weeks, days} or BOGUS.
birkath_ha_hama (g_year)
Fixed dates of Birkath HaHama in Gregorian year g_year. Occurs when Nisan 1 falls on Wednesday in a year divisible by 28 (solar cycle).

Parameters:

  • g_year number Gregorian year.

Returns:

    {number,...} Fixed dates (empty if not occurring this year).
sh_ela (g_year)
Fixed dates of Sh'ela (prayer for rain) in Gregorian year g_year.

Parameters:

  • g_year number Gregorian year.

Returns:

    {number,...} Fixed dates.
hebrew_birthday_in_gregorian (birthdate, g_year)
Fixed dates of Hebrew birthdate anniversary falling in Gregorian year g_year.

Parameters:

  • birthdate table Hebrew date {year, month, day}.
  • g_year number
    Gregorian year.
    

Returns:

    {number,...} Fixed dates.
yahrzeit_in_gregorian (death_date, g_year)
Fixed dates of yahrzeit for Hebrew death_date falling in Gregorian year g_year.

Parameters:

  • death_date table Hebrew date {year, month, day}.
  • g_year number
     Gregorian year.
    

Returns:

    {number,...} Fixed dates.

Fields

NISAN
Nisan month number (1).
IYYAR
Iyyar month number (2).
SIVAN
Sivan month number (3).
TAMMUZ
Tammuz month number (4).
AV
Av month number (5).
ELUL
Elul month number (6).
TISHRI
Tishri month number (7).
MARHESHVAN
Marheshvan month number (8).
KISLEV
Kislev month number (9).
TEVET
Tevet month number (10).
SHEVAT
Shevat month number (11).
ADAR
Adar month number (12).
ADARII
Adar II month number (13, leap years only).
generated by LDoc 1.5.0 Last updated 2026-10-01 02:01:33