NavList:
A Community Devoted to the Preservation and Practice of Celestial Navigation and Other Methods of Traditional Wayfinding
From: Frank Reed
Date: 2025 Sep 10, 19:40 -0700
About a year and a half ago, Rob van Gent provided a really nice collection of links (in this NavList thread) outlining the history of some of these often peculiar tricks for calculating Julian Dates. It's worth quoting that back now, I think:
As the Julian Day Number (JDN) plays an important role in the computation of astronomical and nautical ephemerides it may be useful to point out that several JDN algorithms were developed in the 1960s and 1970s.
The Fliegel & Van Flandern (1968) algorithm, online here
https://dl.acm.org/doi/pdf/10.1145/364096.364097
and mentioned a few days ago [a few days ago, meaning in early 2024] was popularized in the astronomical literature in a revised formulation by Van Flandern & Pulkkinen in their 1979 paper on the computation of low-precision ephemerides for the Sun, the Moon and the planets
https://ui.adsabs.harvard.edu/abs/1979ApJS...41..391V
How (and why) these algorithms work is far from obvious but an alternative algorithm published by Robert G. Tantzen in 1963 and online here
https://dl.acm.org/doi/pdf/10.1145/366707.390020 (cf. algorithm 199)
is much easier to understand.
This algorithm was popularized in the astronomical literature by Jean Meeus in a 1977 paper in a Belgian astronomical journal, online here
https://ui.adsabs.harvard.edu/abs/1977C%26T....93..158M
and in the various editions of his _Astronomical Formulae for Calculators_ (first English edition published in 1979).
A partial explanation of Tantzen's algorithm can be found in a 2003 paper by Paul H. Kimpel, online here
https://www.digm.com/Resources/Gregory/Date-Manipulations-in-WFL.pdf
Rob van Gent
Just listing the code serves little purpose. Seeing where it comes from, as you may be able to do by reading some of the references in RvG's post above... makes you a better programmer/coder... and makes you smarter than a chatbot. :)
Finally, I will repeat my previous challenge, written out a little differently: what's the shortest, cleanest algorithm that you could write (pretend you're an A.I. chatbot, if you need a reason!) to yield JD numbers for the time period originally requested by Jim H. in his "prompt" to MS Copilot (through 2025 at least, and feel free to add in the extension through the end of 2026). There's not much use for ultra-short code snippets anymore, but a programmable calculator, which is what Jim H. described, continues as the sort of coding environment where every little bit helps.
Frank Reed






