Hebrew Date Convert v1.01

by Avi Drissman, drissman@acm.org
http://www.drissman.com/avi/newton/

Requirements

A Newton device with Newton OS 2.0 or greater. (That means a MessagePad 120 (one with OS 2.0), 130, 2000, 2100 or eMate 300. It's been tested on a MessagePad 2000 only. There shouldn't be any problems with any others, though.)

About 5K free on a store.

Purpose

The Hebrew calendar is a fascinating thing, but the calculations to figure out what day it is are astounding. Hebrew Date Convert brings the power of date conversion into your hand.

Installation

Use the Newton Connection Utilities program that came with your Newton device to download the included package.

Use

Hebrew Date Convert is accessed through the Formulas app. So tap on the Formulas icon in the Extras drawer, and you'll see an extra entry: "Hebrew Date Convert." Tap it.

When first brought up, the slip shows today's Gregorian date on the top and the Hebrew date on the bottom. Tap the Gregorian date to bring up a date picker. Selecting a date in the picker causes Hebrew Date Convert to show the equivalent Hebrew date below.

Limitations

First, the picked Gregorian date must be within the year range of 1904–2919. This is a limitation of the built-in Newton date picker. Secondly, only one-way conversions can be done—from Gregorian to Hebrew. I hope to fix both for the next major release.

Using Hebrew Dates

The fact that there is a leap month in the Hebrew calendar and two months which change length bring up a few anniversary-related issues:

First, let's deal with birthdays. If your birthday is 30 Cheshvan, then in a year when Cheshvan only has 29 days your birthday is celebrated on 1 Kislev. If your birthday is 30 Kislev, then in a year when Kislev only has 29 days your birthday is celebrated on 1 Tevet. If you were born in Adar in a non-leap year, you celebrate your birthday in Adar II during leap years. If you were born in Adar in a leap year (either Adar I or II), you celebrate your birthday in Adar during non-leap years—unless you were born on 30 Adar I (of a leap year), in which case you celebrate your birthday on 1 Nissan during non-leap years.

Clear?

As for Yahrtzeit, things are a bit different. If the date is 30 Cheshvan, then look at the first year following the death. If Cheshvan has 30 days, then the Yahrtzeit is observed on 1 Kislev during years with a short Cheshvan. Otherwise, the Yahrtzeit is observed on 29 Cheshvan during years with a short Cheshvan. If the date is 30 Kislev, then look at the first year following the death. If Kislev has 30 days, then the Yahrtzeit is observed on 1 Tevet during years with a short Kislev. Otherwise, the Yahrtzeit is observed on 29 Kislev during years with a short Kislev. If the date of death was in Adar in a non-leap year, the Yahrtzeit is observed during Adar I in leap years (and some also observe it during Adar II). If the date of death was in Adar in a leap year (either Adar I or II), the Yahrtzeit is observed in Adar during non-leap years—unless the date was 30 Adar I (of a leap year), in which case the Yahrtzeit is observed on 30 Shvat during non-leap years (and some also observe it on 1 Nissan).

External API

(Ignore this if you don't write Newton software)

Hebrew Date Convert registers a global function, '|GregDateToHebrew:AviD|. Pass it a date (the minutes-from-1904 kind), and it'll return a string. It does not know of sunset, so don't expect anything in that regards.

Credits

First, the most popular Hebrew calendar book is also a very understandable one. Get it:

Arthur Spier. The Comprehensive Hebrew Calendar, Third Revised Edition. Published by Feldheim Publishers.

Secondly, the C++ code to do the calculation is translated from the Lisp code in "Calendrical Calculations'' by Nachum Dershowitz and Edward M. Reingold, Software—Practice & Experience, vol. 20, no. 9 (September, 1990), pp. 899–928. I haven't read this one, but you might want to check it out.

And finally, a quick thank you to Holger Mueller for patiently answering my questions.

Version History

Version 1.01 (20 December 1998)
Added external API

Version 1.0 (22 March 1998)
Initial release

Legal stuff

The application Hebrew Date Convert is freeware. Please feel free to give a copy to anyone you wish. You are not allowed to charge any fees for distributing it.

You may not modify the package in any way, and must transmit the package and this documentation file together at all times.

Avi Drissman will not be held liable for any damage caused by the package Hebrew Date Convert. Even though Avi Drissman has worked his darnedest to try to eliminate all problems in this package, some may still exist, so you use this package at your own risk. If you don't like it, erase it from your Newton device. That is the only recourse you have if Hebrew Date Convert does not suit your needs.

The package and this documentation are copyright © 1997–8 Avi Drissman. All rights reserved.