<br>Hi, Yitz!<br>Your example puts scattered around pieces in place, thanks a lot! <br><br>On Wed, Jun 15, 2011 at 9:49 AM, Yitzchak Gale <span dir="ltr">&lt;<a href="mailto:gale@sefer.org">gale@sefer.org</a>&gt;</span> wrote:<br>
<div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div class="im">Dmitri O.Kondratiev wrote:<br>
&gt; It would also help to see a simple example of parsing &quot;10/11/2009 7:04:28<br>
&gt; PM&quot; to  time and date objects.<br>
<br>
</div>Let&#39;s assume that 10/11/2009 means October 11, as in the U.S.<br>
Then you can use:<br>
<br>
import System.Locale (defaultTimeLocale)<br>
import Data.Time<br>
<br>
thatMoment :: Maybe UTCTime<br>
thatMoment = parseTime defaultTimeLocale &quot;%m/%d/%Y %l:%M:%S %p&quot;<br>
<div class="im">&quot;10/11/2009 7:04:28 PM&quot;<br>
<br>
</div>Then use diffUTCTime to subtract two UTCTime and<br>
get the amount of time between them. The resulting object<br>
can then be used as if it is a regular floating point number<br>
in units of seconds, or you can use the functions in Data.Time<br>
that treat it specially as an amount of time.<br>
<br>
There are many options for the format string and locale that will<br>
affect how the date is parsed - the order of month and day,<br>
leading zeros or leading spaces, upper case or lower case AM or PM<br>
(or 24-hour clock), etc. You can also get different behavior on<br>
parsing failure by using readTime or readsTime instead of parseTime.<br>
<br>
For details, see:<br>
<br>
<a href="http://www.haskell.org/ghc/docs/7.0.3/html/libraries/time-1.2.0.3/Data-Time-Format.html" target="_blank">http://www.haskell.org/ghc/docs/7.0.3/html/libraries/time-1.2.0.3/Data-Time-Format.html</a><br>
<a href="http://www.haskell.org/ghc/docs/7.0.3/html/libraries/old-locale-1.0.0.2/System-Locale.html#t:TimeLocale" target="_blank">http://www.haskell.org/ghc/docs/7.0.3/html/libraries/old-locale-1.0.0.2/System-Locale.html#t:TimeLocale</a><br>

<a href="http://www.haskell.org/ghc/docs/7.0.3/html/libraries/old-locale-1.0.0.2/src/System-Locale.html#TimeLocale" target="_blank">http://www.haskell.org/ghc/docs/7.0.3/html/libraries/old-locale-1.0.0.2/src/System-Locale.html#TimeLocale</a><br>

<br>
As an example of modifying the locale, let&#39;s say you want to use &quot;a&quot; and &quot;p&quot;<br>
instead of &quot;AM&quot; and &quot;PM&quot;, as is customary in some parts of the world.<br>
Then you can say:<br>
<br>
myLocale = defaultTimeLocale {amPm = (&quot;a&quot;,&quot;p&quot;)}<br>
<br>
and then use myLocale instead of defaultTimeLocale.<br>
<br>
Hope this helps,<br>
Yitz<br>
</blockquote></div><br><br clear="all"><br><br>