<div dir="ltr"><div>> I would have thought that the parsing would be done offline (e.g. after 
each TZDB release), and the TZDB data would be converted into a 
different format that is more amenable to the computation that your code
 is performing.</div><div><br></div><div>It will be! However, it is quite likely that some users will want to be able to use their system's copy of tzdb, as the language I'm using is statically linked.</div><div><br></div><div>> there has been a standard parsed data format (now called "TZif") <br></div><div><br></div><div>I was not aware of this! Now that I search, I see that there is existing tooling from the Unicode Consortium to parse this format. Given that, it'll make things quite a bit easier on my end.</div><div><br></div><div>In any situation, having 24:00 where 0:00 is a possibility remains a bit odd, even if that is what the original sources say.<br></div><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><br></div><div>Jacob Pratt</div></div></div></div></div></div><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Apr 4, 2023 at 4:08 PM Arthur David Olson via tz <<a href="mailto:tz@iana.org">tz@iana.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">> Since the very beginning of this project, there has been a standard<br>
> parsed data format (now called "TZif") and the `zic` utility has been<br>
> shipped to do the parsing.  Indeed, for a long time, the behavior of<br><div>
> `zic` was the only specification of the human-readable data format. <br></div><div><br></div><div>Indeed there was no standards-organization documentation in the early days; the only thing available was a manual entry (tzfile.5); that entry did not always capture the complete picture.<br></div><div><br></div><div>    <a class="gmail_plusreply" id="m_-8137375654540282336plusReplyChip-0">@dashdashado</a><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Apr 4, 2023 at 3:57 PM Garrett Wollman via tz <<a href="mailto:tz@iana.org" target="_blank">tz@iana.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><<On Tue, 04 Apr 2023 12:45:54 -0700, Brian Park via tz <<a href="mailto:tz@iana.org" target="_blank">tz@iana.org</a>> said:<br>
<br>
> I am curious to hear that your TZDB parsing is exposed to your<br>
> end-users and is in the critical path. I would have thought that the<br>
> parsing would be done offline (e.g. after each TZDB release), and<br>
> the TZDB data would be converted into a different format that is<br>
> more amenable to the computation that your code is performing.<br>
<br>
Since the very beginning of this project, there has been a standard<br>
parsed data format (now called "TZif") and the `zic` utility has been<br>
shipped to do the parsing.  Indeed, for a long time, the behavior of<br>
`zic` was the only specification of the human-readable data format.<br>
<br>
Of course, this format was designed for easy access by the C standard<br>
library routines and not by JavaScript, but it would in theory not be<br>
difficult to modify the `zic` source code to generate a different<br>
output format that was more amenable to document-processing languages.<br>
<br>
-GAWollman<br>
<br>
</blockquote></div>
</blockquote></div>