Logs: freenode/#haskell
| 2020-11-14 18:01:54 | <merijn> | Past me should've written more tests |
| 2020-11-14 18:02:33 | → | dabura joins (~pablo@45.86.201.20) |
| 2020-11-14 18:03:01 | <Rembane> | hpc: Nice! :D That must be analogous to rotary dial numbers. |
| 2020-11-14 18:05:21 | <monochrom> | I take great pride in telling my students "in Haskell if the library didn't provide Bool, you could have defined it yourself, and it would be as optimized as the 'built-in' one". |
| 2020-11-14 18:05:36 | <monochrom> | You can't say this about a lot of other languages. |
| 2020-11-14 18:06:30 | <monochrom> | GHC takes one step further and makes even many code optimizations user-definable, i.e., rewrite rules. |
| 2020-11-14 18:07:10 | <monochrom> | Our vector library and its stream fusion, you cannot pull it off in Scala, not even close. |
| 2020-11-14 18:07:59 | <Rembane> | I like that, more power to the programmer. |
| 2020-11-14 18:08:24 | × | avdb quits (~avdb@ip-62-235-188-19.dsl.scarlet.be) (Quit: avdb) |
| 2020-11-14 18:08:39 | → | avdb joins (~avdb@ip-62-235-188-19.dsl.scarlet.be) |
| 2020-11-14 18:08:58 | × | cosimone quits (~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd) (Read error: Connection reset by peer) |
| 2020-11-14 18:09:44 | <hekkaidekapus> | As to custom rewrite rules, there is retrie which is lighter than stream fusion frameworks. |
| 2020-11-14 18:10:47 | <monochrom> | Control flow is another privilege that is liberated in Haskell and Scheme, though by different mechanisms. (laziness in haskell, macros in scheme) |
| 2020-11-14 18:10:47 | × | borne quits (~fritjof@200116b864edc4004fbf5cd6c83663b1.dip.versatel-1u1.de) (Ping timeout: 260 seconds) |
| 2020-11-14 18:10:55 | → | Jeanne-Kamikaze joins (~Jeanne-Ka@66.115.189.179) |
| 2020-11-14 18:11:04 | × | hyperfekt quits (end@bnc.hyperfekt.net) (Quit: bouncer quit) |
| 2020-11-14 18:11:14 | × | son0p quits (~son0p@186.159.4.142) (Quit: Lost terminal) |
| 2020-11-14 18:11:24 | <monochrom> | Yes, in programming language topics I'm a social justice warrior. |
| 2020-11-14 18:11:27 | → | cosimone joins (~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd) |
| 2020-11-14 18:11:32 | → | hyperfekt joins (end@bnc.hyperfekt.net) |
| 2020-11-14 18:11:35 | <hekkaidekapus> | heh |
| 2020-11-14 18:11:37 | <Rembane> | hekkaidekapus: https://hackage.haskell.org/package/retrie <- this one? |
| 2020-11-14 18:11:37 | <monochrom> | Don't worry, on many other topics I take conservative stances. |
| 2020-11-14 18:11:49 | → | jlamothe joins (~jlamothe@198.251.55.207) |
| 2020-11-14 18:11:52 | <hekkaidekapus> | Rembane: yep. |
| 2020-11-14 18:12:03 | <Rembane> | hekkaidekapus: Cool, thanks |
| 2020-11-14 18:12:43 | <monochrom> | Also I'm not an extreme social justice warrior. I recognize that there are trade offs, you seek a good balance not "democratize everything". |
| 2020-11-14 18:12:57 | <hekkaidekapus> | Rembane: Not every weekend-haskeller can implement stream fusion, but with retrie one can get hands dirty with equational reasonning. |
| 2020-11-14 18:13:28 | <Rembane> | hekkaidekapus: That's really good. |
| 2020-11-14 18:17:06 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
| 2020-11-14 18:18:24 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 2020-11-14 18:19:09 | → | Fuchs1 joins (~Fuchs@84.39.117.57) |
| 2020-11-14 18:19:23 | × | britva quits (~britva@2a02:aa13:7240:2980:bc4b:509a:98e6:5bb0) (Quit: This computer has gone to sleep) |
| 2020-11-14 18:20:08 | → | mputz joins (~Thunderbi@dslb-084-058-211-084.084.058.pools.vodafone-ip.de) |
| 2020-11-14 18:21:00 | × | dyeplexer quits (~lol@unaffiliated/terpin) (Remote host closed the connection) |
| 2020-11-14 18:22:19 | → | juuandyy joins (~juuandyy@90.166.144.65) |
| 2020-11-14 18:23:19 | × | avdb quits (~avdb@ip-62-235-188-19.dsl.scarlet.be) (Quit: avdb) |
| 2020-11-14 18:24:34 | × | dabura quits (~pablo@45.86.201.20) (Read error: Connection reset by peer) |
| 2020-11-14 18:25:00 | → | vicfred_ joins (~vicfred@unaffiliated/vicfred) |
| 2020-11-14 18:25:30 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 2020-11-14 18:27:43 | × | vicfred quits (~vicfred@unaffiliated/vicfred) (Ping timeout: 260 seconds) |
| 2020-11-14 18:29:37 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 2020-11-14 18:31:03 | × | alp quits (~alp@2a01:e0a:58b:4920:d66:dc23:5051:7cda) (Ping timeout: 272 seconds) |
| 2020-11-14 18:31:26 | → | ensyde joins (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) |
| 2020-11-14 18:32:08 | × | ensyde quits (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Read error: Connection reset by peer) |
| 2020-11-14 18:33:08 | × | vacm quits (~vacwm@70.23.92.191) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 2020-11-14 18:34:39 | × | geekosaur quits (82659a09@host154-009.vpn.uakron.edu) (Ping timeout: 245 seconds) |
| 2020-11-14 18:38:56 | → | avdb joins (~avdb@ip-62-235-188-19.dsl.scarlet.be) |
| 2020-11-14 18:39:52 | → | vacm joins (~vacwm@70.23.92.191) |
| 2020-11-14 18:41:16 | ← | jakalx parts (~jakalx@base.jakalx.net) ("Disconnected: closed") |
| 2020-11-14 18:41:44 | → | ensyde joins (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) |
| 2020-11-14 18:42:32 | × | Dykam quits (Dykam@dykam.nl) (Quit: Dykam) |
| 2020-11-14 18:43:36 | → | kritzefitz joins (~kritzefit@212.86.56.80) |
| 2020-11-14 18:45:03 | × | mirrorbird quits (~psutcliff@176.227.57.79) (Quit: Leaving) |
| 2020-11-14 18:45:19 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 2020-11-14 18:46:11 | → | borne joins (~fritjof@200116b864edc4004fbf5cd6c83663b1.dip.versatel-1u1.de) |
| 2020-11-14 18:46:40 | × | ensyde quits (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 256 seconds) |
| 2020-11-14 18:53:05 | → | nbloomf joins (~nbloomf@2600:1700:ad14:3020:244f:5a51:4f39:cad7) |
| 2020-11-14 18:53:13 | → | argent0 joins (~argent0@168.227.98.85) |
| 2020-11-14 18:53:18 | × | vacm quits (~vacwm@70.23.92.191) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 2020-11-14 18:53:26 | → | pjb joins (~t@2a01cb04063ec5006d6abee34943d090.ipv6.abo.wanadoo.fr) |
| 2020-11-14 18:56:28 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Remote host closed the connection) |
| 2020-11-14 18:56:39 | → | christo joins (~chris@81.96.113.213) |
| 2020-11-14 18:57:19 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 2020-11-14 18:57:35 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Remote host closed the connection) |
| 2020-11-14 18:57:53 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 2020-11-14 19:02:18 | → | scasc joins (~szabi@213142096107.public.telering.at) |
| 2020-11-14 19:02:26 | × | acarrico quits (~acarrico@dhcp-68-142-39-249.greenmountainaccess.net) (Ping timeout: 246 seconds) |
| 2020-11-14 19:03:02 | × | berberman quits (~berberman@unaffiliated/berberman) (Ping timeout: 260 seconds) |
| 2020-11-14 19:03:36 | → | vacm joins (~vacwm@70.23.92.191) |
| 2020-11-14 19:03:39 | → | berberman joins (~berberman@unaffiliated/berberman) |
| 2020-11-14 19:04:14 | × | Jeanne-Kamikaze quits (~Jeanne-Ka@66.115.189.179) (Ping timeout: 256 seconds) |
| 2020-11-14 19:04:48 | → | wroathe joins (~wroathe@c-73-24-27-54.hsd1.mn.comcast.net) |
| 2020-11-14 19:05:10 | <scasc> | I need a quick heads-up. I can't quite figure out how to use `time` library's `iso8601ParseM ( https://hackage.haskell.org/package/time-1.9.2/docs/Data-Time-Format-ISO8601.html#v:iso8601ParseM ) to read and parse a date "2020-11-14" |
| 2020-11-14 19:05:34 | <merijn> | scasc: Which part gets you stuck? |
| 2020-11-14 19:05:35 | × | jneira_ quits (~jneira@198.red-176-83-81.dynamicip.rima-tde.net) (Read error: Connection reset by peer) |
| 2020-11-14 19:05:56 | → | jneira_ joins (~jneira@192.red-2-137-106.dynamicip.rima-tde.net) |
| 2020-11-14 19:07:59 | → | geekosaur joins (82659a09@host154-009.vpn.uakron.edu) |
| 2020-11-14 19:08:33 | <scasc> | According to the `class ISO8601` documentation that format corresponds to the instance `ISO8601 Day`, so a concrete tpye of the function would be `(MonadFail Maybe, ISO8601 Day) => String -> Maybe Day. |
| 2020-11-14 19:09:03 | × | jmcarthur quits (~jmcarthur@2601:86:500:2a40:db56:5d66:5919:c95d) (Ping timeout: 272 seconds) |
| 2020-11-14 19:09:06 | × | vacm quits (~vacwm@70.23.92.191) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 2020-11-14 19:09:12 | → | knupfer joins (~Thunderbi@87.123.206.158) |
| 2020-11-14 19:09:28 | <scasc> | However, while `Day` is defined in another module, it does not seem to be exported, so I cannot do `(iso8601ParseM "2020-01-01" ) :: Maybe Day` |
| 2020-11-14 19:09:52 | → | vacm joins (~vacwm@70.23.92.191) |
| 2020-11-14 19:10:06 | <merijn> | Eh, it is exported? I'm pretty sure I use it in my code |
| 2020-11-14 19:10:07 | <scasc> | I'm pretty sure I'm overlooking something stupid. Or I'm too tired. |
| 2020-11-14 19:11:35 | <merijn> | Data.Time.Calendar.OrdinalDate has it |
| 2020-11-14 19:12:06 | × | nbloomf quits (~nbloomf@2600:1700:ad14:3020:244f:5a51:4f39:cad7) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 2020-11-14 19:12:09 | <merijn> | Alternatively, you can extract the Day from a UTCTime |
| 2020-11-14 19:12:17 | <scasc> | Prelude Data.Time.Format.ISO8601 Data.Time.Calendar.OrdinalDate D> (iso8601ParseM "2020-01-01" ) :: Maybe Data.Time.Calendar.OrdinalDate.Day |
| 2020-11-14 19:12:43 | <scasc> | Not in scope: |
| 2020-11-14 19:12:43 | <scasc> | type constructor or class ‘Data.Time.Calendar.OrdinalDate.Day’ |
| 2020-11-14 19:13:02 | <merijn> | eh, hold up |
| 2020-11-14 19:13:06 | ← | jakalx parts (~jakalx@base.jakalx.net) ("Error from remote client") |
| 2020-11-14 19:13:07 | <scasc> | (GHCi, obviously) |
| 2020-11-14 19:13:11 | <merijn> | Which version of time are you using? |
| 2020-11-14 19:13:55 | → | nbloomf joins (~nbloomf@2600:1700:ad14:3020:244f:5a51:4f39:cad7) |
| 2020-11-14 19:14:33 | <scasc> | I thought 1.9.3 |
| 2020-11-14 19:14:44 | <scasc> | Yeah, ghc-pkg tells me 1.9.3. |
| 2020-11-14 19:15:02 | <merijn> | OrdinalDate.Day only exists as of 1.11 :p |
All times are in UTC.