Calendrical C++: std::chrono, History, Mathematics and the Computus
summary
Shows a concrete C++ implementation using std::chrono types (year_month_day, year_month_weekday, sys_days) and custom clocks to compute Easter with multiple algorithms, including the Metonic 19-year cycle and the Meeus/Jones/Butcher algorithm. Claims: Gregorian algorithm needs century/400-year corrections; astronomical full‑moon calculation produces correct lunar dates but fails church rules (unit tests flag a 2025 mismatch). Demonstrates 532‑year Paschal cycle, earliest Easter = March 22 (1818, 2285), latest = April 25, and quirky historical facts like a 445‑day year (46 BCE) and Sweden’s February 30 (1712).
AI-written summary · about
chapters (9)
- 0:00Introduction and background
- 2:56C++ Chrono library basics
- 10:41History of calendar reforms
- 16:44The mathematics of Easter
- 24:31Implementing Easter algorithms
- 29:34Calendar transitions and edges
- 37:18Astronomical vs. religious time
- 43:13Practical calendar examples
- 50:43Conclusion and resources
related talks
51mUsing std::chrono Calendar Dates for Finance in Cpp
56mImplementing Fast Calendar Algorithms: Speeding Date
28m"Time and Time Again"
32mYou Depend on Time, This Is How It Works and You Won’t...
01h 21mHow Old Am I in Seconds? Insights From the C++ chrono Library
03m<chrono> Then and Now
32mIt's about time
20mTime Throughout the Ages
