Home liberachat/#haskell: Logs Calendar

Logs on 2021-11-11 (liberachat/#haskell)

00:03:01 jurjen joins (~jurjen@31-161-147-158.mobile.kpn.net)
00:04:02 × Vajb quits (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer)
00:04:09 Vajb joins (~Vajb@85-76-99-174-nat.elisa-mobile.fi)
00:08:20 allbery_b joins (~geekosaur@xmonad/geekosaur)
00:08:20 × geekosaur quits (~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b)))
00:08:23 allbery_b is now known as geekosaur
00:08:59 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 256 seconds)
00:10:07 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
00:10:19 × jurjen quits (~jurjen@31-161-147-158.mobile.kpn.net) (Quit: WeeChat 3.0)
00:10:58 <Axman6> yin: also worth keeping in mind that these types might have different laziness properties
00:11:15 × falafel quits (~falafel@cpe-76-168-195-162.socal.res.rr.com) (Ping timeout: 256 seconds)
00:12:39 <yin> implicitly?
00:13:14 jurjen joins (~jurjen@31-161-147-158.mobile.kpn.net)
00:13:39 × Guest4249 quits (~Guest42@eth-west-pareq2-46-193-4-100.wb.wifirst.net) (Quit: Client closed)
00:14:57 <Axman6> actually the one above would be the same, but the first example has one more level of indirection so there are more places for bottoms - you can have L a undefined, L a (Just undefined) vs N a undefined
00:17:09 <yin> ah right
00:18:02 <yin> i make myself forget that undefined exists
00:20:08 × acidjnk_new3 quits (~acidjnk@p200300d0c721b7398586a2e711bd371d.dip0.t-ipconnect.de) (Remote host closed the connection)
00:20:31 acidjnk_new3 joins (~acidjnk@p200300d0c721b73914e45eebfbace128.dip0.t-ipconnect.de)
00:21:19 <yin> i see, you're right
00:22:37 × jurjen quits (~jurjen@31-161-147-158.mobile.kpn.net) (Read error: Connection reset by peer)
00:23:48 × SethTisue__ quits (sid14912@ilkley.irccloud.com) (Ping timeout: 244 seconds)
00:23:48 × angerman quits (sid209936@ilkley.irccloud.com) (Ping timeout: 244 seconds)
00:24:05 × dmj` quits (sid72307@hampstead.irccloud.com) (Ping timeout: 260 seconds)
00:24:19 × tritlo quits (sid58727@user/tritlo) (Ping timeout: 244 seconds)
00:24:40 × Adeon quits (sid418992@lymington.irccloud.com) (Ping timeout: 260 seconds)
00:24:40 × Boarders quits (sid425905@lymington.irccloud.com) (Ping timeout: 260 seconds)
00:25:09 × aria quits (sid380617@lymington.irccloud.com) (Ping timeout: 268 seconds)
00:25:09 × gregberns__ quits (sid315709@helmsley.irccloud.com) (Ping timeout: 268 seconds)
00:25:15 × kristjansson_ quits (sid126207@tinside.irccloud.com) (Ping timeout: 260 seconds)
00:25:15 × bradparker quits (sid262931@uxbridge.irccloud.com) (Ping timeout: 260 seconds)
00:25:15 × teehemkay quits (sid14792@lymington.irccloud.com) (Ping timeout: 260 seconds)
00:25:15 × gaze___ quits (sid387101@helmsley.irccloud.com) (Ping timeout: 260 seconds)
00:25:15 × amir quits (sid22336@user/amir) (Ping timeout: 260 seconds)
00:25:21 × obviyus quits (sid415299@user/obviyus) (Ping timeout: 244 seconds)
00:25:28 × _0x47 quits (sid508683@tinside.irccloud.com) (Ping timeout: 268 seconds)
00:25:32 × burnsidesLlama quits (~burnsides@dhcp168-030.wadham.ox.ac.uk) (Remote host closed the connection)
00:25:38 × carter quits (sid14827@helmsley.irccloud.com) (Ping timeout: 260 seconds)
00:25:38 × jakesyl_ quits (sid56879@hampstead.irccloud.com) (Ping timeout: 260 seconds)
00:25:38 × AndreasK_ quits (sid320732@uxbridge.irccloud.com) (Ping timeout: 260 seconds)
00:26:23 × jonrh quits (sid5185@ilkley.irccloud.com) (Ping timeout: 268 seconds)
00:26:27 Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915)
00:27:05 × jmorris quits (uid433911@id-433911.hampstead.irccloud.com) (Ping timeout: 264 seconds)
00:27:05 × pepeiborra quits (sid443799@id-443799.ilkley.irccloud.com) (Ping timeout: 264 seconds)
00:27:11 × Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 245 seconds)
00:27:11 × the_finn quits (uid526334@id-526334.hampstead.irccloud.com) (Ping timeout: 245 seconds)
00:27:23 × tnks quits (sid412124@id-412124.helmsley.irccloud.com) (Ping timeout: 264 seconds)
00:27:23 × JSharp quits (sid4580@id-4580.lymington.irccloud.com) (Ping timeout: 264 seconds)
00:27:23 × supersven quits (sid501114@id-501114.ilkley.irccloud.com) (Ping timeout: 264 seconds)
00:27:23 × enemeth79 quits (sid309041@id-309041.lymington.irccloud.com) (Ping timeout: 264 seconds)
00:27:32 × econo quits (uid147250@user/econo) (Ping timeout: 240 seconds)
00:27:37 × bitmapper quits (uid464869@id-464869.lymington.irccloud.com) (Ping timeout: 268 seconds)
00:27:37 × systemfault quits (sid267009@id-267009.uxbridge.irccloud.com) (Ping timeout: 268 seconds)
00:27:37 × joel135 quits (sid136450@2a03:5180:f:4::2:1502) (Ping timeout: 268 seconds)
00:27:37 × hongminhee quits (sid295@id-295.tinside.irccloud.com) (Ping timeout: 268 seconds)
00:27:37 × rune quits (sid21167@id-21167.ilkley.irccloud.com) (Ping timeout: 268 seconds)
00:27:38 × christiaanb quits (sid84827@id-84827.lymington.irccloud.com) (Ping timeout: 268 seconds)
00:27:38 × saolsen quits (sid26430@id-26430.lymington.irccloud.com) (Ping timeout: 268 seconds)
00:27:38 × agander_m quits (sid407952@id-407952.tinside.irccloud.com) (Ping timeout: 268 seconds)
00:27:38 × etrepum quits (sid763@id-763.uxbridge.irccloud.com) (Ping timeout: 268 seconds)
00:27:38 × stevenxl quits (sid133530@id-133530.uxbridge.irccloud.com) (Ping timeout: 268 seconds)
00:27:38 × cln quits (sid336875@id-336875.ilkley.irccloud.com) (Ping timeout: 268 seconds)
00:27:40 × acertain quits (sid470584@id-470584.hampstead.irccloud.com) (Read error: No route to host)
00:27:40 × Pent quits (sid313808@id-313808.lymington.irccloud.com) (Read error: Connection reset by peer)
00:27:40 × sa quits (sid1055@id-1055.tinside.irccloud.com) (Read error: Connection reset by peer)
00:27:41 × cbarrett quits (sid192934@id-192934.helmsley.irccloud.com) (Read error: Connection reset by peer)
00:27:41 × dpratt_ quits (sid193493@id-193493.helmsley.irccloud.com) (Read error: No route to host)
00:27:41 × conjunctive quits (sid433686@id-433686.helmsley.irccloud.com) (Read error: Connection reset by peer)
00:27:41 × kaizen quits (sid501599@id-501599.helmsley.irccloud.com) (Read error: Connection reset by peer)
00:27:41 × mcfilib quits (sid302703@user/mcfilib) (Read error: Connection reset by peer)
00:27:41 × grfn quits (sid449115@id-449115.helmsley.irccloud.com) (Read error: Connection reset by peer)
00:27:41 × lightandlight quits (sid135476@2a03:5180:f:1::2:1134) (Read error: Connection reset by peer)
00:27:41 × NiKaN quits (sid385034@id-385034.helmsley.irccloud.com) (Read error: Connection reset by peer)
00:27:41 × parseval quits (sid239098@2a03:5180:f:1::3:a5fa) (Read error: Connection reset by peer)
00:27:41 × scav quits (sid309693@id-309693.helmsley.irccloud.com) (Read error: Connection reset by peer)
00:27:41 × truckasaurus quits (sid457088@id-457088.helmsley.irccloud.com) (Read error: Connection reset by peer)
00:27:41 × kaychaks__ quits (sid236345@id-236345.helmsley.irccloud.com) (Read error: Connection reset by peer)
00:27:41 × alinab quits (sid468903@id-468903.helmsley.irccloud.com) (Read error: Connection reset by peer)
00:27:41 × bjs quits (sid190364@user/bjs) (Read error: Connection reset by peer)
00:27:41 × elvishjerricco quits (sid237756@2a03:5180:f:1::3:a0bc) (Write error: Connection reset by peer)
00:27:41 × meinside quits (uid24933@id-24933.helmsley.irccloud.com) (Write error: Connection reset by peer)
00:27:41 × jackdk quits (sid373013@cssa/jackdk) (Read error: Connection reset by peer)
00:27:41 × glowcoil quits (sid3405@id-3405.tinside.irccloud.com) (Read error: Connection reset by peer)
00:27:41 × typetetris quits (sid275937@2a03:5180:f::4:35e1) (Read error: Connection reset by peer)
00:27:41 × jmct_ quits (sid160793@2a03:5180:f::2:7419) (Read error: Connection reset by peer)
00:27:41 × taktoa[c] quits (sid282096@id-282096.tinside.irccloud.com) (Read error: Connection reset by peer)
00:27:41 × hubvu quits (sid495858@user/hubvu) (Read error: Connection reset by peer)
00:27:41 × edmundnoble quits (sid229620@2a03:5180:f:1::3:80f4) (Write error: Connection reset by peer)
00:27:41 × SrPx quits (sid108780@id-108780.uxbridge.irccloud.com) (Read error: Connection reset by peer)
00:27:41 × vito quits (sid1962@user/vito) (Read error: Connection reset by peer)
00:27:41 × T_S_ quits (sid501726@id-501726.uxbridge.irccloud.com) (Read error: Connection reset by peer)
00:27:41 × davetapley quits (sid666@id-666.uxbridge.irccloud.com) (Read error: Connection reset by peer)
00:27:41 × iphy quits (sid67735@id-67735.lymington.irccloud.com) (Read error: Connection reset by peer)
00:27:41 × ephemient quits (uid407513@id-407513.lymington.irccloud.com) (Read error: Connection reset by peer)
00:27:41 × idnar quits (sid12240@debian/mithrandi) (Write error: Connection reset by peer)
00:27:41 × PotatoGim quits (sid99505@id-99505.lymington.irccloud.com) (Read error: Connection reset by peer)
00:27:41 × integral quits (sid296274@user/integral) (Read error: Connection reset by peer)
00:27:41 × NemesisD quits (sid24071@2a03:5180:f:2::5e07) (Read error: Connection reset by peer)
00:27:41 × dsal quits (sid13060@id-13060.lymington.irccloud.com) (Read error: Connection reset by peer)
00:27:41 × nrr_ quits (sid20938@id-20938.lymington.irccloud.com) (Read error: Connection reset by peer)
00:27:41 × whez quits (sid470288@id-470288.lymington.irccloud.com) (Read error: Connection reset by peer)
00:27:41 × hendi quits (sid489601@id-489601.lymington.irccloud.com) (Read error: Connection reset by peer)
00:27:41 × aarchi quits (sid486183@id-486183.uxbridge.irccloud.com) (Read error: Connection reset by peer)
00:27:41 × alanz quits (sid110616@id-110616.uxbridge.irccloud.com) (Read error: Connection reset by peer)
00:27:41 × b20n quits (sid115913@2a03:5180:f:5::1:c4c9) (Read error: Connection reset by peer)
00:27:41 × awpr quits (uid446117@id-446117.lymington.irccloud.com) (Read error: Connection reset by peer)
00:27:41 × philpax_ quits (sid516926@id-516926.lymington.irccloud.com) (Read error: Connection reset by peer)
00:27:41 × degraafk quits (sid71464@id-71464.lymington.irccloud.com) (Read error: Connection reset by peer)
00:27:41 × sclv quits (sid39734@haskell/developer/sclv) (Write error: Connection reset by peer)
00:27:42 × gmc quits (sid58314@id-58314.ilkley.irccloud.com) (Read error: Connection reset by peer)
00:27:42 × ysh quits (sid6017@id-6017.ilkley.irccloud.com) (Read error: Connection reset by peer)
00:27:42 × hook54321 quits (sid149355@user/hook54321) (Read error: Connection reset by peer)
00:27:42 × caasih quits (sid13241@id-13241.ilkley.irccloud.com) (Read error: Connection reset by peer)
00:27:42 × astra` quits (sid289983@user/amish) (Read error: Connection reset by peer)
00:27:42 × SanchayanMaity quits (sid478177@id-478177.hampstead.irccloud.com) (Read error: Connection reset by peer)
00:27:42 × ehamberg quits (sid18208@id-18208.hampstead.irccloud.com) (Write error: Connection reset by peer)
00:27:42 × bw quits (sid2730@user/betawaffle) (Read error: Connection reset by peer)
00:27:42 × sa1_ quits (sid7690@id-7690.ilkley.irccloud.com) (Read error: Connection reset by peer)
00:27:42 × edwardk quits (sid47016@haskell/developer/edwardk) (Read error: Connection reset by peer)
00:27:42 × tapas quits (sid467876@2a03:5180:f:3::7:23a4) (Read error: Connection reset by peer)
00:27:42 × S11001001 quits (sid42510@2a03:5180:f:3::a60e) (Read error: Connection reset by peer)
00:27:42 × mrianbloom quits (sid350277@2a03:5180:f:3::5:5845) (Write error: Connection reset by peer)
00:27:42 × Firedancer quits (sid336191@id-336191.hampstead.irccloud.com) (Read error: Connection reset by peer)
00:27:42 × ProofTechnique quits (sid79547@id-79547.ilkley.irccloud.com) (Read error: Connection reset by peer)
00:27:42 × whatsupdoc quits (uid509081@id-509081.hampstead.irccloud.com) (Read error: Connection reset by peer)
00:27:42 × pjlsergeant quits (sid143467@id-143467.hampstead.irccloud.com) (Read error: Connection reset by peer)
00:27:42 × rubin55 quits (sid175221@2a03:5180:f:4::2:ac75) (Read error: Connection reset by peer)
00:27:42 × mustafa quits (sid502723@rockylinux/releng/mustafa) (Write error: Connection reset by peer)
00:27:42 × hamishmack quits (sid389057@2a03:5180:f:4::5:efc1) (Write error: Connection reset by peer)
00:27:44 Lord_of_Life_ is now known as Lord_of_Life
00:28:01 × rtpg quits (sid443069@id-443069.ilkley.irccloud.com) (Ping timeout: 250 seconds)
00:28:14 × gonz____ quits (sid304396@id-304396.lymington.irccloud.com) (Ping timeout: 246 seconds)
00:28:27 × aristid quits (sid1599@id-1599.uxbridge.irccloud.com) (Ping timeout: 250 seconds)
00:28:35 × bbhoss quits (sid18216@id-18216.tinside.irccloud.com) (Ping timeout: 246 seconds)
00:30:35 × brandonh quits (brandonh@gateway/vpn/protonvpn/brandonh) (Quit: brandonh)
00:33:06 × jeslie0 quits (~user@135-23-172-182.cpe.pppoe.ca) (Quit: ERC (IRC client for Emacs 28.0.50))
00:34:36 <Axman6> Is it possible in GHC to define a data type which contains a variable sized array directly inside the same object? like the classic C struct { int type; int len; uint8_t data[] }?
00:35:33 <Axman6> or are all primitive array types always accessed through indirection to another object? (I feel like edwardk has done something in this area before and I should go check his github)
00:38:00 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
00:38:00 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host)
00:38:00 wroathe joins (~wroathe@user/wroathe)
00:38:47 <monochrom> I have a feeling that each primitive array type is already a {int len; foo data[]} struct itself.
00:39:04 <Axman6> right, I guess I'm asking if that can be unpacked into your own types
00:40:14 <Axman6> (https://github.com/ekmett/structs is what i was thinking about above)
00:40:47 × mcgroin quits (~mcgroin@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Remote host closed the connection)
00:42:35 × wroathe quits (~wroathe@user/wroathe) (Ping timeout: 246 seconds)
00:43:58 agander_m joins (sid407952@tinside.irccloud.com)
00:44:09 sa1_ joins (sid7690@ilkley.irccloud.com)
00:44:13 hongminhee joins (sid295@tinside.irccloud.com)
00:44:14 hubvu joins (sid495858@user/hubvu)
00:44:16 jackdk joins (sid373013@cssa/jackdk)
00:44:16 christiaanb joins (sid84827@lymington.irccloud.com)
00:44:16 philpax_ joins (sid516926@lymington.irccloud.com)
00:44:18 jmorris joins (uid433911@hampstead.irccloud.com)
00:44:20 acertain joins (sid470584@hampstead.irccloud.com)
00:44:20 aristid joins (sid1599@uxbridge.irccloud.com)
00:44:20 bbhoss joins (sid18216@tinside.irccloud.com)
00:44:21 conjunctive joins (sid433686@helmsley.irccloud.com)
00:44:21 supersven joins (sid501114@ilkley.irccloud.com)
00:44:22 iphy joins (sid67735@lymington.irccloud.com)
00:44:24 aarchi joins (sid486183@uxbridge.irccloud.com)
00:44:26 systemfault joins (sid267009@uxbridge.irccloud.com)
00:44:26 ysh joins (sid6017@ilkley.irccloud.com)
00:44:28 the_finn joins (uid526334@hampstead.irccloud.com)
00:44:28 ehamberg joins (sid18208@hampstead.irccloud.com)
00:44:30 SrPx joins (sid108780@uxbridge.irccloud.com)
00:44:31 JSharp joins (sid4580@lymington.irccloud.com)
00:44:32 joel135 joins (sid136450@hampstead.irccloud.com)
00:45:48 <monochrom> "The Template Haskell generates tupleLeft, tupleRight :: Field (TupleInts a) a, which can be used to get and set fields with getField, setField" So it is lens but for C structs? Heh.
00:45:54 cln joins (sid336875@ilkley.irccloud.com)
00:49:12 × hongminhee quits (sid295@tinside.irccloud.com) (Ping timeout: 268 seconds)
00:49:12 × sa1_ quits (sid7690@ilkley.irccloud.com) (Ping timeout: 268 seconds)
00:49:13 × aristid quits (sid1599@uxbridge.irccloud.com) (Ping timeout: 256 seconds)
00:49:35 × iphy quits (sid67735@lymington.irccloud.com) (Ping timeout: 264 seconds)
00:49:35 × supersven quits (sid501114@ilkley.irccloud.com) (Ping timeout: 264 seconds)
00:49:47 × jmorris quits (uid433911@hampstead.irccloud.com) (Ping timeout: 256 seconds)
00:49:47 × christiaanb quits (sid84827@lymington.irccloud.com) (Ping timeout: 256 seconds)
00:49:49 × the_finn quits (uid526334@hampstead.irccloud.com) (Ping timeout: 268 seconds)
00:49:49 × ysh quits (sid6017@ilkley.irccloud.com) (Ping timeout: 268 seconds)
00:49:49 × aarchi quits (sid486183@uxbridge.irccloud.com) (Ping timeout: 268 seconds)
00:49:49 × bbhoss quits (sid18216@tinside.irccloud.com) (Ping timeout: 268 seconds)
00:49:49 × philpax_ quits (sid516926@lymington.irccloud.com) (Ping timeout: 268 seconds)
00:50:11 × hubvu quits (sid495858@user/hubvu) (Ping timeout: 264 seconds)
00:50:21 × acertain quits (sid470584@hampstead.irccloud.com) (Ping timeout: 256 seconds)
00:50:21 × jackdk quits (sid373013@cssa/jackdk) (Ping timeout: 256 seconds)
00:50:26 × ehamberg quits (sid18208@hampstead.irccloud.com) (Ping timeout: 268 seconds)
00:50:26 × SrPx quits (sid108780@uxbridge.irccloud.com) (Ping timeout: 268 seconds)
00:50:47 × systemfault quits (sid267009@uxbridge.irccloud.com) (Ping timeout: 264 seconds)
00:50:47 × JSharp quits (sid4580@lymington.irccloud.com) (Ping timeout: 264 seconds)
00:50:47 × conjunctive quits (sid433686@helmsley.irccloud.com) (Ping timeout: 264 seconds)
00:50:47 × agander_m quits (sid407952@tinside.irccloud.com) (Ping timeout: 264 seconds)
00:51:03 × cln quits (sid336875@ilkley.irccloud.com) (Ping timeout: 268 seconds)
00:51:03 × joel135 quits (sid136450@hampstead.irccloud.com) (Ping timeout: 268 seconds)
00:51:25 × jgeerds quits (~jgeerds@55d41b94.access.ecotel.net) (Ping timeout: 250 seconds)
00:51:39 AndreasK_ joins (sid320732@uxbridge.irccloud.com)
00:51:42 agander_m joins (sid407952@tinside.irccloud.com)
00:51:44 dmj` joins (sid72307@hampstead.irccloud.com)
00:51:44 obviyus joins (sid415299@user/obviyus)
00:51:50 bradparker joins (sid262931@uxbridge.irccloud.com)
00:51:57 gaze___ joins (sid387101@helmsley.irccloud.com)
00:52:15 aristid joins (sid1599@uxbridge.irccloud.com)
00:52:16 conjunctive joins (sid433686@helmsley.irccloud.com)
00:52:18 supersven joins (sid501114@ilkley.irccloud.com)
00:52:25 sa1_ joins (sid7690@ilkley.irccloud.com)
00:52:38 jackdk joins (sid373013@cssa/jackdk)
00:52:38 iphy joins (sid67735@lymington.irccloud.com)
00:52:43 bbhoss joins (sid18216@tinside.irccloud.com)
00:53:09 jmorris joins (uid433911@hampstead.irccloud.com)
00:53:14 joel135 joins (sid136450@hampstead.irccloud.com)
00:53:18 hubvu joins (sid495858@user/hubvu)
00:53:20 ysh joins (sid6017@ilkley.irccloud.com)
00:53:20 aarchi joins (sid486183@uxbridge.irccloud.com)
00:53:23 systemfault joins (sid267009@uxbridge.irccloud.com)
00:53:25 cln joins (sid336875@ilkley.irccloud.com)
00:53:26 SrPx joins (sid108780@uxbridge.irccloud.com)
00:53:28 philpax_ joins (sid516926@lymington.irccloud.com)
00:53:31 ehamberg joins (sid18208@hampstead.irccloud.com)
00:54:10 acertain joins (sid470584@hampstead.irccloud.com)
00:54:13 JSharp joins (sid4580@lymington.irccloud.com)
00:54:22 enemeth79 joins (sid309041@lymington.irccloud.com)
00:54:25 davetapley joins (sid666@uxbridge.irccloud.com)
00:54:26 gonz____ joins (sid304396@lymington.irccloud.com)
00:54:32 bjs joins (sid190364@user/bjs)
00:54:36 whatsupdoc joins (uid509081@hampstead.irccloud.com)
00:54:36 taktoa[c] joins (sid282096@tinside.irccloud.com)
00:54:37 pepeiborra joins (sid443799@ilkley.irccloud.com)
00:54:37 edwardk joins (sid47016@haskell/developer/edwardk)
00:54:37 meinside joins (uid24933@helmsley.irccloud.com)
00:54:37 cbarrett joins (sid192934@helmsley.irccloud.com)
00:54:39 rubin55 joins (sid175221@hampstead.irccloud.com)
00:54:40 hendi joins (sid489601@lymington.irccloud.com)
00:54:40 SanchayanMaity joins (sid478177@hampstead.irccloud.com)
00:54:40 hamishmack joins (sid389057@hampstead.irccloud.com)
00:54:42 stevenxl joins (sid133530@uxbridge.irccloud.com)
00:54:45 pjlsergeant joins (sid143467@hampstead.irccloud.com)
00:54:54 awpr joins (uid446117@lymington.irccloud.com)
00:54:57 <Axman6> well, C struct like things anyway, not sure there's any mapping between C data types and Haskell ones
00:55:08 hook54321 joins (sid149355@user/hook54321)
00:56:06 alanz joins (sid110616@uxbridge.irccloud.com)
00:56:12 astra` joins (sid289983@user/amish)
00:57:06 <geekosaur> not a reliable one, and only for some types
00:57:14 <geekosaur> String is hopeless, for example
01:01:07 falafel joins (~falafel@cpe-76-168-195-162.socal.res.rr.com)
01:01:11 gregberns__ joins (sid315709@helmsley.irccloud.com)
01:01:23 Boarders joins (sid425905@lymington.irccloud.com)
01:01:27 SethTisue__ joins (sid14912@ilkley.irccloud.com)
01:01:29 aria joins (sid380617@lymington.irccloud.com)
01:01:32 Adeon joins (sid418992@lymington.irccloud.com)
01:01:54 kristjansson_ joins (sid126207@tinside.irccloud.com)
01:02:05 tritlo joins (sid58727@user/tritlo)
01:02:10 jonrh joins (sid5185@ilkley.irccloud.com)
01:04:15 alinab joins (sid468903@helmsley.irccloud.com)
01:04:18 jmct_ joins (sid160793@tinside.irccloud.com)
01:04:22 truckasaurus joins (sid457088@helmsley.irccloud.com)
01:04:23 the_finn joins (uid526334@hampstead.irccloud.com)
01:04:23 rune joins (sid21167@ilkley.irccloud.com)
01:04:23 econo joins (uid147250@user/econo)
01:04:32 b20n joins (sid115913@uxbridge.irccloud.com)
01:04:36 idnar joins (sid12240@debian/mithrandi)
01:04:37 vito joins (sid1962@user/vito)
01:04:37 glowcoil joins (sid3405@tinside.irccloud.com)
01:04:38 T_S_ joins (sid501726@uxbridge.irccloud.com)
01:04:40 typetetris joins (sid275937@tinside.irccloud.com)
01:04:40 kaizen joins (sid501599@helmsley.irccloud.com)
01:04:41 lightandlight joins (sid135476@helmsley.irccloud.com)
01:04:44 grfn joins (sid449115@helmsley.irccloud.com)
01:04:44 parseval joins (sid239098@helmsley.irccloud.com)
01:04:44 mrianbloom joins (sid350277@ilkley.irccloud.com)
01:04:45 dsal joins (sid13060@lymington.irccloud.com)
01:04:48 Firedancer joins (sid336191@hampstead.irccloud.com)
01:04:51 NiKaN joins (sid385034@helmsley.irccloud.com)
01:04:54 renzhi joins (~xp@2607:fa49:6500:b100::6e7f)
01:04:54 sa joins (sid1055@tinside.irccloud.com)
01:06:13 ephemient joins (uid407513@lymington.irccloud.com)
01:07:54 × DNH quits (~DNH@8.43.122.53) (Quit: Textual IRC Client: www.textualapp.com)
01:10:56 × [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 245 seconds)
01:11:16 angerman joins (sid209936@ilkley.irccloud.com)
01:11:32 _0x47 joins (sid508683@tinside.irccloud.com)
01:11:34 teehemkay joins (sid14792@lymington.irccloud.com)
01:11:38 amir joins (sid22336@user/amir)
01:12:00 carter joins (sid14827@helmsley.irccloud.com)
01:12:10 jakesyl_ joins (sid56879@hampstead.irccloud.com)
01:12:52 [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470)
01:14:22 edmundnoble joins (sid229620@helmsley.irccloud.com)
01:14:25 tnks joins (sid412124@helmsley.irccloud.com)
01:14:25 hongminhee joins (sid295@tinside.irccloud.com)
01:14:26 scav joins (sid309693@helmsley.irccloud.com)
01:14:28 mustafa joins (sid502723@rockylinux/releng/mustafa)
01:14:29 whez joins (sid470288@lymington.irccloud.com)
01:14:32 etrepum joins (sid763@uxbridge.irccloud.com)
01:14:33 saolsen joins (sid26430@lymington.irccloud.com)
01:14:35 christiaanb joins (sid84827@lymington.irccloud.com)
01:14:36 integral joins (sid296274@user/integral)
01:14:38 Pent joins (sid313808@lymington.irccloud.com)
01:14:42 bw joins (sid2730@user/betawaffle)
01:14:44 nrr_ joins (sid20938@lymington.irccloud.com)
01:14:49 kaychaks__ joins (sid236345@helmsley.irccloud.com)
01:14:50 caasih joins (sid13241@ilkley.irccloud.com)
01:14:51 NemesisD joins (sid24071@lymington.irccloud.com)
01:14:53 S11001001 joins (sid42510@ilkley.irccloud.com)
01:15:00 PotatoGim joins (sid99505@lymington.irccloud.com)
01:24:14 × vysn quits (~vysn@user/vysn) (Ping timeout: 246 seconds)
01:24:31 elvishjerricco joins (sid237756@helmsley.irccloud.com)
01:24:31 mcfilib joins (sid302703@user/mcfilib)
01:24:34 bitmapper joins (uid464869@lymington.irccloud.com)
01:24:34 degraafk joins (sid71464@lymington.irccloud.com)
01:24:34 sclv joins (sid39734@haskell/developer/sclv)
01:24:35 gmc joins (sid58314@ilkley.irccloud.com)
01:24:35 tapas joins (sid467876@ilkley.irccloud.com)
01:24:36 ProofTechnique joins (sid79547@ilkley.irccloud.com)
01:24:39 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
01:24:39 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host)
01:24:39 wroathe joins (~wroathe@user/wroathe)
01:26:16 rtpg joins (sid443069@ilkley.irccloud.com)
01:27:21 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:dcad:8023:d7ab:9816) (Remote host closed the connection)
01:29:27 × lechner quits (~lechner@debian/lechner) (Quit: WeeChat 3.0)
01:30:35 × PotatoGim quits (sid99505@lymington.irccloud.com) (Ping timeout: 256 seconds)
01:30:35 × carter quits (sid14827@helmsley.irccloud.com) (Ping timeout: 256 seconds)
01:30:35 × jackdk quits (sid373013@cssa/jackdk) (Ping timeout: 256 seconds)
01:32:21 carter joins (sid14827@helmsley.irccloud.com)
01:32:25 PotatoGim joins (sid99505@lymington.irccloud.com)
01:34:17 jackdk joins (sid373013@cssa/jackdk)
01:36:04 × nineonine quits (~nineonine@2604:3d08:7780:cd00:187c:a4eb:abb4:3c17) (Remote host closed the connection)
01:38:05 × lbseale__ quits (~lbseale@user/ep1ctetus) (Read error: Connection reset by peer)
01:42:29 × shapr quits (~user@pool-100-36-247-68.washdc.fios.verizon.net) (Remote host closed the connection)
01:42:32 × waleee quits (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 240 seconds)
01:44:41 waleee joins (~waleee@h-98-128-228-119.NA.cust.bahnhof.se)
01:47:47 × Vajb quits (~Vajb@85-76-99-174-nat.elisa-mobile.fi) (Read error: Connection reset by peer)
01:50:13 × alx741 quits (~alx741@186.178.109.114) (Quit: alx741)
01:50:23 × jushur quits (~human@user/jushur) (Quit: ¯\_(ツ)_/¯)
01:51:13 × kayprish quits (~kayprish@46.240.130.158) (Ping timeout: 250 seconds)
01:51:33 × wroathe quits (~wroathe@user/wroathe) (Ping timeout: 256 seconds)
01:55:49 beka joins (~beka@104.193.170.240)
01:57:51 × falafel quits (~falafel@cpe-76-168-195-162.socal.res.rr.com) (Remote host closed the connection)
01:58:15 falafel joins (~falafel@cpe-76-168-195-162.socal.res.rr.com)
02:00:03 × justache quits (~justache@user/justache) (Read error: Connection reset by peer)
02:00:32 wootehfoot joins (~wootehfoo@user/wootehfoot)
02:00:56 justache joins (~justache@user/justache)
02:02:30 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
02:02:31 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host)
02:02:31 wroathe joins (~wroathe@user/wroathe)
02:03:22 × alzgh quits (~alzgh@user/alzgh) (Remote host closed the connection)
02:06:22 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
02:06:48 paddymahoney joins (~paddymaho@cpe9050ca207f83-cm9050ca207f80.cpe.net.cable.rogers.com)
02:07:34 jkaye joins (~jkaye@2601:281:8300:7530:2229:11af:500f:b39d)
02:11:46 × wootehfoot quits (~wootehfoo@user/wootehfoot) (Ping timeout: 245 seconds)
02:15:50 × ec quits (~ec@gateway/tor-sasl/ec) (Remote host closed the connection)
02:16:29 SevenAster joins (~quassel@user/sevenaster)
02:18:28 <jkaye> Is MonadError/ExceptT a good general way to think about error/exception handling within an application? What are alternatives/are there better ways to handle errors in general? Sorry I realize this is a very vague question, I'm asking in the abstract because I'm trying to decide what error handling strategy I should use for a new application that I'm writing
02:19:18 <jkaye> To expound a bit, I imagine that I will want two "levels" of errors, one that represents logic/usage issues and another that represents "external" concerns e.g. database unavailable
02:23:30 × gdd quits (~gdd@129.199.146.230) (Quit: WeeChat 3.3)
02:23:51 <SevenAster> I'm no expert on Monads by any means. Exceptions in C are *typically* done by returning an enum while the actual results are given by modifying the value of some reference
02:24:24 lechner joins (~lechner@debian/lechner)
02:24:39 <SevenAster> C++/C#/python use throws and try catches
02:24:45 dpratt_ joins (sid193493@helmsley.irccloud.com)
02:25:48 <SevenAster> Golang returns a tuple with the result and an error object or nill
02:25:58 <Axman6> jkaye: I tend to start out with ExceptT unless I have a good reason not to. How doou want to handle those two classes of errors differently?
02:26:17 gdd joins (~gdd@129.199.146.230)
02:26:22 SevenAster parts (~quassel@user/sevenaster) (https://quassel-irc.org - Chat comfortably. Anywhere.)
02:26:43 <Axman6> golang error handling is about as bad as I could imagine, looking at go code and seeing more than 50% of all code is error handling makes me want to cry
02:27:05 <Axman6> "Abstraction? What's that?"
02:27:47 <jkaye> Axman6, good question. It's nuanced. My main goal is to prevent the "real world" from leaking into my (pure, abstract) domain model. So really, I'd like to somehow be able to allow the domain to operate in terms of the "pure" types of possible failures (e.g. requesting a key that's not present in a cache) but not the others
02:27:49 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:dcad:8023:d7ab:9816)
02:28:26 <jkaye> I can show a silly example
02:29:53 <jkaye> https://paste.tomsmeding.com/kMMLFFtm
02:30:48 <jkaye> So using that, I'm imagining that there will be multiple different instances of MonadProperty - one for e.g. testing, one for local operations within the same binary, and one for remote operations across network boundaries
02:31:47 <jkaye> Ideally the local operations would be able to "know" it's local and not have to worry about the "remote" failure possibilities. I don't really need it to be that advanced, but I figured I'd ask now while I'm still in the early stages of this things
02:32:21 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:dcad:8023:d7ab:9816) (Remote host closed the connection)
02:32:36 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
02:34:37 × machinedgod quits (~machinedg@24.105.81.50) (Ping timeout: 256 seconds)
02:35:22 <Axman6> One way to experiment with this is to use something like this: data Actions m = Actions { getProperty :: PropertyName -> m Property; updateProperty :: PropertyName -> Property -> m () }; data App m a = ReaderT (Actions m) m a. This is a bit more flexible than only allowing one instance per monad you use. Then you can decide how you want to do errors in your own choice of m.
02:36:49 <Axman6> then you can defice getProp pname = do {f <- gets getProperty: f pname }; updateProp pname p = do { f <- gets updateProperty; f pname p }
02:36:54 <Axman6> define*
02:39:11 <jkaye> That is interesting
02:39:32 <jkaye> Basically say that the "context" in which the operation is running provides the monadic context
02:39:44 <Axman6> IMO, I would start by just explicitly using ExceptT, and having an error type which is a sumtype of the types of errors you want to have
02:39:52 <jkaye> I like the idea, will think about that more. Thank you
02:39:59 <jkaye> And yeah, I probably will do that
02:40:07 <jkaye> Don't want to overcomplicate it if I don't have to
02:40:10 <Axman6> there's some fun stuff you can do with classy prisms if you want to restrict the types of errors that are visible to different parts of the code
02:40:16 × whatsupdoc quits (uid509081@hampstead.irccloud.com) (Quit: Connection closed for inactivity)
02:40:17 <jkaye> Just want to be aware of the alternatives available to me
02:40:31 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds)
02:40:46 <jkaye> Yeah, I have played with polysemy capabilities and such, which are interesting to me, but that's another place where I'm going to leave it until I need it
02:41:08 <Axman6> reaching for type classes the way you are is a pretty common thing for people who have come from an OO background to do, and it's not necessarily the best approach
02:41:44 <Axman6> polysemy is probably a very good way to deal with this, you can actually have two different error capabilities
02:41:44 <jkaye> Right, the type class is not the important part for me, but rather the ability to swap behavior/instances
02:42:08 <jkaye> I have had success with this approach in the past, but that doesn't make it the best way :)
02:42:17 × mmhat quits (~mmh@55d4b224.access.ecotel.net) (Ping timeout: 246 seconds)
02:42:46 <Axman6> defining different interpreters for the different error types would be a pretty nice way to do what you want I think
02:43:28 <Axman6> I would love other people's input inon this, I've never really found an approach I enjoyed very much
02:43:35 × mark__ quits (~a@p200300ef973db1dc4086f0a6a24fc4dd.dip0.t-ipconnect.de) (Ping timeout: 264 seconds)
02:44:46 <jkaye> One other question actually, given the idea that you posted above, how would you then represent that in renderFile? Would you just pass the Actions into the function there? That gets interesting because there are going to be many of these types of contexts, though I guess it would be easy enough to have Actions be a sum that aggregates the individual contexts so that they can then be passed independently
02:45:01 <jkaye> Which does begin to sound suspiciously close to what polysemy provides I suppose..
02:45:54 <Axman6> I'm not sure I understand the question
02:46:05 <Axman6> but yes, polysemy, try that :P
02:46:35 <jkaye> Like, Actions wouldn't be a flat record. There are many different "types" of Actions that different parts of the system would require, so I wouldn't want to send all of the actions all over the place
02:46:47 <jkaye> data Actions = PropertyActions | FileActions | ...
02:47:06 <jkaye> Sorry it should be a product, not sum
02:47:32 <jkaye> It would contain an instance of each "type" of action so that it could provide them independently where they are required
02:47:41 <jkaye> I'm just rambling now. Thanks for the input, it was very helpful
02:47:43 × bitmapper quits (uid464869@lymington.irccloud.com) (Quit: Connection closed for inactivity)
02:50:13 rkrishnan joins (~user@122.167.19.65)
02:50:28 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
02:51:40 × Tuplanolla quits (~Tuplanoll@91-159-69-50.elisa-laajakaista.fi) (Quit: Leaving.)
02:55:02 × neurocyte0132889 quits (~neurocyte@user/neurocyte) (Ping timeout: 240 seconds)
02:55:21 × xff0x quits (~xff0x@2001:1a81:53aa:5400:8327:d2de:b0b3:bf1) (Ping timeout: 250 seconds)
02:57:27 xff0x joins (~xff0x@2001:1a81:53e8:a400:4be3:10c9:a6eb:9cd9)
02:57:37 yauhsien joins (~yauhsien@118-167-47-187.dynamic-ip.hinet.net)
03:00:04 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Remote host closed the connection)
03:00:31 ChaiTRex joins (~ChaiTRex@user/chaitrex)
03:04:30 <jkaye> Axman6, if you're still around, I know there's something dumb that I
03:04:43 <jkaye> I'm not thinking about properly here.
03:05:05 <jkaye> Say that I wanted to then create a PropertyActions using a State (M.Map ...) under the hood for testing purposes
03:05:47 <jkaye> That's easy enough by creating the record of functions, but how would I then also "seed" the actions with the underlying data without repeatedly calling update on it?
03:08:58 × drdo quits (~drdo@roach0.drdo.eu) (Ping timeout: 260 seconds)
03:13:13 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
03:15:02 × yauhsien quits (~yauhsien@118-167-47-187.dynamic-ip.hinet.net) (Remote host closed the connection)
03:15:19 <Axman6> with your call to runState
03:15:58 <Axman6> you'd at some point have funFoo . flip runStateT myInitialState . flip runReaderT actionsUsingState
03:16:40 <jkaye> Like I said, something dumb I'm not thinking about properly :) thanks!
03:19:46 yauhsien joins (~yauhsien@118-167-47-187.dynamic-ip.hinet.net)
03:22:35 × justache quits (~justache@user/justache) (Read error: Connection reset by peer)
03:23:31 justache joins (~justache@user/justache)
03:24:02 × yauhsien quits (~yauhsien@118-167-47-187.dynamic-ip.hinet.net) (Ping timeout: 240 seconds)
03:24:09 <jkaye> Just like that, we're passing: evalState resolution M.empty `shouldBe` ResolvedFile TextContent "This file should render exactly as expected"
03:24:24 <jkaye> Gonna think more about whether polysemy makes sense, but this is a great start
03:24:26 <jkaye> Thanks again
03:25:05 shapr joins (~user@pool-100-36-247-68.washdc.fios.verizon.net)
03:34:57 finn_elija joins (~finn_elij@user/finn-elija/x-0085643)
03:34:57 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija)))
03:34:57 finn_elija is now known as FinnElija
03:35:26 wei2912 joins (~wei2912@138.75.71.147)
03:35:31 × jkaye quits (~jkaye@2601:281:8300:7530:2229:11af:500f:b39d) (Ping timeout: 245 seconds)
03:44:47 × theproffesor quits (~theproffe@user/theproffesor) (Ping timeout: 264 seconds)
03:45:24 theproffesor joins (~theproffe@2601:282:847f:8010:818b:10e4:707d:e026)
03:45:24 × theproffesor quits (~theproffe@2601:282:847f:8010:818b:10e4:707d:e026) (Changing host)
03:45:24 theproffesor joins (~theproffe@user/theproffesor)
03:46:44 × theproffesor quits (~theproffe@user/theproffesor) (Read error: Connection reset by peer)
03:46:46 the_proffesor joins (~theproffe@c-24-9-30-127.hsd1.co.comcast.net)
03:46:46 × the_proffesor quits (~theproffe@c-24-9-30-127.hsd1.co.comcast.net) (Changing host)
03:46:46 the_proffesor joins (~theproffe@user/theproffesor)
03:48:14 × wei2912 quits (~wei2912@138.75.71.147) (Read error: Connection reset by peer)
03:48:50 × chexum quits (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
03:49:48 chexum joins (~quassel@gateway/tor-sasl/chexum)
03:50:06 × emf quits (~emf@2620:10d:c090:400::5:69be) (Ping timeout: 245 seconds)
03:51:55 emf joins (~emf@2620:10d:c091:480::1:21b3)
03:56:15 whatsupdoc joins (uid509081@id-509081.hampstead.irccloud.com)
03:58:08 bitmapper joins (uid464869@id-464869.lymington.irccloud.com)
04:00:02 × haasn quits (~nand@haasn.dev) (Quit: ZNC 1.7.5+deb4 - https://znc.in)
04:00:26 deadmarshal joins (~deadmarsh@95.38.228.177)
04:01:28 haasn joins (~nand@haasn.dev)
04:02:10 × td_ quits (~td@94.134.91.32) (Ping timeout: 260 seconds)
04:03:02 emf_ joins (~emf@2620:10d:c090:400::5:538d)
04:03:45 mimmy joins (~mimmy@2607:fea8:6e0:7f90:ad45:eba8:62a8:4c36)
04:04:03 td_ joins (~td@94.134.91.245)
04:04:35 × emf quits (~emf@2620:10d:c091:480::1:21b3) (Ping timeout: 264 seconds)
04:22:20 × xkuru quits (~xkuru@user/xkuru) (Read error: Connection reset by peer)
04:22:27 × ralu quits (~ralu@static.211.245.203.116.clients.your-server.de) (Ping timeout: 250 seconds)
04:24:11 × falafel quits (~falafel@cpe-76-168-195-162.socal.res.rr.com) (Ping timeout: 250 seconds)
04:24:32 × hiruji quits (~hiruji@user/hiruji) (Quit: ZNC 1.8.2 - https://znc.in)
04:29:30 × bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 276 seconds)
04:31:25 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
04:36:59 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
04:38:17 falafel joins (~falafel@cpe-76-168-195-162.socal.res.rr.com)
04:39:27 mbuf joins (~Shakthi@223.184.52.200)
04:43:15 × waleee quits (~waleee@h-98-128-228-119.NA.cust.bahnhof.se) (Ping timeout: 256 seconds)
04:44:55 × mimmy quits (~mimmy@2607:fea8:6e0:7f90:ad45:eba8:62a8:4c36) (Quit: WeeChat 3.3)
04:46:27 ralu joins (~ralu@static.211.245.203.116.clients.your-server.de)
04:51:02 hiruji joins (~hiruji@user/hiruji)
04:57:19 × zebrag quits (~chris@user/zebrag) (Remote host closed the connection)
05:07:35 × renzhi quits (~xp@2607:fa49:6500:b100::6e7f) (Ping timeout: 268 seconds)
05:11:35 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
05:20:20 jackhill is now known as KM4MBG
05:23:49 KM4MBG is now known as jackhill
05:26:31 × [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer)
05:27:06 solirc joins (~solirc@ppp-110-168-219-132.revip5.asianet.co.th)
05:30:58 × nshepperd quits (nshepperd@2600:3c03::f03c:92ff:fe28:92c9) (Ping timeout: 265 seconds)
05:31:21 × wroathe quits (~wroathe@user/wroathe) (Ping timeout: 250 seconds)
05:31:23 nshepperd joins (nshepperd@2600:3c03::f03c:92ff:fe28:92c9)
05:32:11 × emf_ quits (~emf@2620:10d:c090:400::5:538d) (Ping timeout: 264 seconds)
05:38:41 × rtsn quits (~nstr@user/rtsn) (Ping timeout: 246 seconds)
05:39:33 rtsn joins (~nstr@c-c7fe225c.07-59-7570703.bbcust.telenor.se)
05:47:04 v01d4lph4 joins (~v01d4lph4@user/v01d4lph4)
05:47:41 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
05:47:41 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host)
05:47:41 wroathe joins (~wroathe@user/wroathe)
05:51:08 emf joins (~emf@163.114.132.5)
05:52:02 × wroathe quits (~wroathe@user/wroathe) (Ping timeout: 240 seconds)
05:53:14 × arahael quits (~arahael@202-159-171-156.tpgi.com.au) (Ping timeout: 260 seconds)
05:53:54 <kritzefitz> sclv: it is. I hope I'll get around to leave a comment there today.
05:55:05 × emf quits (~emf@163.114.132.5) (Read error: Connection reset by peer)
05:56:50 emf joins (~emf@2620:10d:c090:400::5:97af)
05:59:15 yauhsien joins (~yauhsien@118-167-47-187.dynamic-ip.hinet.net)
06:00:31 zmt01 joins (~zmt00@user/zmt00)
06:03:17 hughjfchen joins (~hughjfche@vmi556545.contaboserver.net)
06:03:32 × yauhsien quits (~yauhsien@118-167-47-187.dynamic-ip.hinet.net) (Ping timeout: 240 seconds)
06:03:41 × zmt00 quits (~zmt00@user/zmt00) (Ping timeout: 264 seconds)
06:05:39 arahael joins (~arahael@14-203-84-159.static.tpgi.com.au)
06:09:37 retro_ joins (~retro@2e41e9c8.skybroadband.com)
06:10:14 chomwitt joins (~chomwitt@2a02:587:dc0f:7c00:12c3:7bff:fe6d:d374)
06:12:57 × retroid_ quits (~retro@2e41e9c8.skybroadband.com) (Ping timeout: 268 seconds)
06:20:19 × falafel quits (~falafel@cpe-76-168-195-162.socal.res.rr.com) (Ping timeout: 250 seconds)
06:26:36 falafel joins (~falafel@cpe-76-168-195-162.socal.res.rr.com)
06:37:00 × deadmarshal quits (~deadmarsh@95.38.228.177) (Ping timeout: 268 seconds)
06:39:29 deadmarshal joins (~deadmarsh@95.38.228.177)
06:43:43 × v01d4lph4 quits (~v01d4lph4@user/v01d4lph4) (Remote host closed the connection)
06:43:53 × falafel quits (~falafel@cpe-76-168-195-162.socal.res.rr.com) (Ping timeout: 264 seconds)
06:45:34 mei3 joins (~mei@user/mei)
06:48:15 falafel joins (~falafel@cpe-76-168-195-162.socal.res.rr.com)
06:51:15 takuan joins (~takuan@178-116-218-225.access.telenet.be)
06:54:22 crystal-lang564 joins (~mhusmann@2a02:560:41ce:8c00:19ee:b969:e30a:91e)
06:55:46 × deadmarshal quits (~deadmarsh@95.38.228.177) (Ping timeout: 260 seconds)
06:56:38 vysn joins (~vysn@user/vysn)
07:01:48 × crystal-lang564 quits (~mhusmann@2a02:560:41ce:8c00:19ee:b969:e30a:91e) (Quit: Konversation terminated!)
07:06:35 deadmarshal joins (~deadmarsh@95.38.228.177)
07:07:51 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
07:12:13 benin joins (~benin@183.82.26.68)
07:13:13 johnny_sitar joins (~artur@078088015209.bialystok.vectranet.pl)
07:18:01 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
07:18:22 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
07:18:23 × falafel quits (~falafel@cpe-76-168-195-162.socal.res.rr.com) (Ping timeout: 250 seconds)
07:23:21 × bliminse quits (~bliminse@host86-185-253-43.range86-185.btcentralplus.com) (Quit: leaving)
07:27:22 lortabac joins (~lortabac@2a01:e0a:541:b8f0:f0a8:ffae:2a2b:16fd)
07:28:26 × beka quits (~beka@104.193.170.240) (Ping timeout: 245 seconds)
07:31:37 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
07:31:58 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
07:32:53 × brainfreeze quits (~brainfree@2a03:1b20:4:f011::20d) (Remote host closed the connection)
07:34:15 dschrempf joins (~dominik@070-207.dynamic.dsl.fonira.net)
07:37:13 × NemesisD quits (sid24071@lymington.irccloud.com) (Ping timeout: 256 seconds)
07:37:13 × typetetris quits (sid275937@tinside.irccloud.com) (Ping timeout: 256 seconds)
07:37:13 × truckasaurus quits (sid457088@helmsley.irccloud.com) (Ping timeout: 256 seconds)
07:37:47 × acertain quits (sid470584@hampstead.irccloud.com) (Ping timeout: 256 seconds)
07:38:28 NemesisD joins (sid24071@id-24071.lymington.irccloud.com)
07:40:25 truckasaurus joins (sid457088@id-457088.helmsley.irccloud.com)
07:40:25 typetetris joins (sid275937@id-275937.tinside.irccloud.com)
07:41:02 acertain joins (sid470584@id-470584.hampstead.irccloud.com)
07:41:45 × slowButPresent quits (~slowButPr@user/slowbutpresent) (Quit: leaving)
07:42:02 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
07:46:22 falafel joins (~falafel@cpe-76-168-195-162.socal.res.rr.com)
07:50:21 mc47 joins (~mc47@xmonad/TheMC47)
07:51:05 × falafel quits (~falafel@cpe-76-168-195-162.socal.res.rr.com) (Ping timeout: 264 seconds)
07:52:38 × jle` quits (~jle`@2603-8001-3b02-84d4-0000-0000-0000-025d.res6.spectrum.com) (Ping timeout: 260 seconds)
07:55:40 jle` joins (~jle`@cpe-23-240-75-236.socal.res.rr.com)
07:56:36 v01d4lph4 joins (~v01d4lph4@user/v01d4lph4)
07:58:46 × johnny_sitar quits (~artur@078088015209.bialystok.vectranet.pl) (Remote host closed the connection)
07:59:04 johnny_sitar joins (~artur@078088015209.bialystok.vectranet.pl)
08:00:00 × shriekingnoise quits (~shrieking@186.137.144.80) (Quit: Quit)
08:00:47 × codedmart quits (codedmart@2600:3c01::f03c:92ff:fefe:8511) (Quit: ZNC 1.7.5+deb4 - https://znc.in)
08:01:02 codedmart joins (codedmart@2600:3c01::f03c:92ff:fefe:8511)
08:02:05 × riatre quits (~quassel@2001:310:6000:f::5198:1) (Read error: Connection reset by peer)
08:02:30 riatre joins (~quassel@2001:310:6000:f::5198:1)
08:02:51 Vajb joins (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi)
08:04:34 Gurkenglas joins (~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de)
08:06:45 × Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer)
08:09:07 × timCF quits (~timCF@200-149-20-81.sta.estpak.ee) (Quit: leaving)
08:09:19 chele joins (~chele@user/chele)
08:09:25 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
08:13:46 × chexum quits (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
08:14:16 chexum joins (~quassel@gateway/tor-sasl/chexum)
08:16:17 × acertain quits (sid470584@id-470584.hampstead.irccloud.com) (Ping timeout: 264 seconds)
08:19:33 kuribas joins (~user@ptr-25vy0i9k3m4zzpdty0l.18120a2.ip6.access.telenet.be)
08:19:58 × rembo10 quits (~rembo10@remulis.com) (Quit: ZNC 1.8.2 - https://znc.in)
08:20:08 acertain joins (sid470584@id-470584.hampstead.irccloud.com)
08:20:29 × NemesisD quits (sid24071@id-24071.lymington.irccloud.com) (Ping timeout: 264 seconds)
08:21:01 rembo10 joins (~rembo10@remulis.com)
08:21:57 NemesisD joins (sid24071@id-24071.lymington.irccloud.com)
08:24:32 × tzh quits (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
08:26:11 × emf quits (~emf@2620:10d:c090:400::5:97af) (Ping timeout: 264 seconds)
08:27:07 kritzefitz_ joins (~kritzefit@p200300ecdf067e00d40157f023ebb7b3.dip0.t-ipconnect.de)
08:27:31 kritzefitz_ is now known as Guest4433
08:27:35 × Guest4433 quits (~kritzefit@p200300ecdf067e00d40157f023ebb7b3.dip0.t-ipconnect.de) (Changing host)
08:27:35 Guest4433 joins (~kritzefit@debian/kritzefitz)
08:27:43 × bitmapper quits (uid464869@id-464869.lymington.irccloud.com) (Quit: Connection closed for inactivity)
08:28:47 Guest4433 is now known as kritzefitz_
08:30:22 tzh joins (~tzh@c-24-21-73-154.hsd1.or.comcast.net)
08:32:39 gehmehgeh joins (~user@user/gehmehgeh)
08:34:05 × kritzefitz_ quits (~kritzefit@debian/kritzefitz) (Quit: Leaving)
08:34:13 × econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity)
08:34:22 emf joins (~emf@2620:10d:c090:400::5:538d)
08:37:44 yauhsien joins (~yauhsien@118-167-47-187.dynamic-ip.hinet.net)
08:38:01 kspalaiologos joins (~kspalaiol@user/kspalaiologos)
08:38:04 holden_mcgroin joins (~nut@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
08:38:42 × holden_mcgroin quits (~nut@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Client Quit)
08:39:02 holden_mcgroin joins (~nut@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
08:40:20 × benin quits (~benin@183.82.26.68) (Ping timeout: 268 seconds)
08:41:57 × whatsupdoc quits (uid509081@id-509081.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
08:42:26 × yauhsien quits (~yauhsien@118-167-47-187.dynamic-ip.hinet.net) (Ping timeout: 246 seconds)
08:44:39 neurocyte0132889 joins (~neurocyte@45.131.36.189)
08:44:39 × neurocyte0132889 quits (~neurocyte@45.131.36.189) (Changing host)
08:44:39 neurocyte0132889 joins (~neurocyte@user/neurocyte)
08:45:14 × deadmarshal quits (~deadmarsh@95.38.228.177) (Quit: ZNC 1.8.2 - https://znc.in)
08:45:41 deadmarshal joins (~deadmarsh@95.38.228.177)
08:47:12 cfricke joins (~cfricke@user/cfricke)
08:52:19 benin joins (~benin@106.198.86.143)
08:53:02 yauhsien joins (~yauhsien@118-167-47-187.dynamic-ip.hinet.net)
08:56:26 Pickchea joins (~private@user/pickchea)
08:57:37 × yauhsien quits (~yauhsien@118-167-47-187.dynamic-ip.hinet.net) (Ping timeout: 250 seconds)
09:05:37 × Pent quits (sid313808@lymington.irccloud.com) (Ping timeout: 256 seconds)
09:06:37 max22- joins (~maxime@2a01cb0883359800d82aa6f5cc45a870.ipv6.abo.wanadoo.fr)
09:06:45 × hendi quits (sid489601@lymington.irccloud.com) (Ping timeout: 256 seconds)
09:06:59 × obviyus quits (sid415299@user/obviyus) (Ping timeout: 264 seconds)
09:07:47 obviyus joins (sid415299@user/obviyus)
09:08:54 hendi joins (sid489601@id-489601.lymington.irccloud.com)
09:09:01 × bjs quits (sid190364@user/bjs) (Ping timeout: 256 seconds)
09:10:17 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:9068:f291:b219:72f5)
09:10:56 bjs joins (sid190364@user/bjs)
09:11:06 Pent joins (sid313808@id-313808.lymington.irccloud.com)
09:11:17 shidima joins (~shidima@46.44.183.25)
09:12:41 jgeerds joins (~jgeerds@55d41b94.access.ecotel.net)
09:14:38 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:9068:f291:b219:72f5) (Ping timeout: 246 seconds)
09:15:40 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
09:16:23 × Pent quits (sid313808@id-313808.lymington.irccloud.com) (Ping timeout: 246 seconds)
09:16:36 Pent joins (sid313808@id-313808.lymington.irccloud.com)
09:17:33 × geekosaur quits (~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b)))
09:17:33 allbery_b joins (~geekosaur@xmonad/geekosaur)
09:17:36 allbery_b is now known as geekosaur
09:17:58 × bollu quits (~bollu@139.59.46.74) (Quit: Ping timeout (120 seconds))
09:18:13 bollu joins (~bollu@139.59.46.74)
09:19:03 × np quits (~nerdypepp@user/nerdypepper) (Quit: bye)
09:20:10 CiaoSen joins (~Jura@p200300c95730dd002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
09:21:18 nerdypepper joins (~nerdypepp@user/nerdypepper)
09:23:37 × acertain quits (sid470584@id-470584.hampstead.irccloud.com) (Ping timeout: 250 seconds)
09:23:43 acertain_ joins (sid470584@id-470584.hampstead.irccloud.com)
09:24:08 × obviyus quits (sid415299@user/obviyus) (Read error: Connection reset by peer)
09:24:08 × hendi quits (sid489601@id-489601.lymington.irccloud.com) (Read error: Connection reset by peer)
09:24:53 obviyus joins (sid415299@user/obviyus)
09:24:54 hendi joins (sid489601@id-489601.lymington.irccloud.com)
09:26:29 × Pent quits (sid313808@id-313808.lymington.irccloud.com) (Ping timeout: 264 seconds)
09:26:34 lavaman joins (~lavaman@98.38.249.169)
09:27:55 merijn joins (~merijn@195.114.232.94)
09:29:14 Pent joins (sid313808@id-313808.lymington.irccloud.com)
09:30:59 × lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 250 seconds)
09:31:25 epolanski joins (uid312403@id-312403.helmsley.irccloud.com)
09:31:45 × bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 276 seconds)
09:32:02 boxscape_ joins (~boxscape_@134.171.69.87)
09:34:53 × johnny_sitar quits (~artur@078088015209.bialystok.vectranet.pl) (Ping timeout: 250 seconds)
09:38:07 jollygood2 joins (~bc8165b6@217.29.117.252)
09:39:07 <jollygood2> hi. does anyone have experience with inline-c? it seems very tempting to use it over regular haskell ffi, when just having to call a couple of C functions from a C library, rather than attempting to make complete haskell bindings
09:39:37 kayprish joins (~kayprish@46.240.130.158)
09:41:30 <kritzefitz> What do you mean by “complete haskell bindings”? If you just want to call a few C function you can just import those and call them. I'm not sure how much easier inline-c could make it.
09:42:13 <kritzefitz> (but then again, I never used inline-c. Maybe it's easier on type conversions?)
09:42:21 <jollygood2> kritzefitz, you can write C code directly in haskell source. no need to bind functions, or types, you just write C. https://hackage.haskell.org/package/inline-c
09:44:14 <kritzefitz> From first glance it does look like you need type conversions, because inline-c still returns foreign types.
09:44:33 <kritzefitz> or you just work with the foreign types directly, but you can also do that using regular FFI.
09:45:07 johnny_sitar joins (~artur@078088015209.bialystok.vectranet.pl)
09:45:21 <jollygood2> I tried it just now, and unless I'm wrong there is a major drawback, you can't run this code in ghci
09:48:08 skn joins (~znc@2001:19f0:5:701:5400:ff:fe7c:4e5c)
09:48:14 × notzmv quits (~zmv@user/notzmv) (Ping timeout: 246 seconds)
09:49:06 × skn2 quits (~znc@2001:19f0:5:701:5400:ff:fe7c:4e5c) (Quit: ZNC 1.8.2 - https://znc.in)
09:51:39 <jollygood2> no it seems that you can. https://hackage.haskell.org/package/inline-c-0.9.1.5#ghci
09:51:55 <dminuoso> I wouldn't want to write C code directly in haskell.
09:52:04 <dminuoso> You can simply call C functions, and write low level Haskell code.
09:52:32 <jollygood2> kritzefitz, you can do that using regular FFI as well, but if I have to call 8 C functions, but 7 of them are just used to feed the result to other C functions, and I am only interested in the result of the 8th function call, I only have to declare one type, and just do everything else in C
09:53:45 <kritzefitz> I guess in that case I would just write a small C file with your wrapper function and only import that into haskell.
09:53:47 <jollygood2> a lot less work than having to declare all 8 functions, and C structs used by those functions
09:54:27 <kritzefitz> I'm not sure how well that works with GHCi. But I guess as long as you start ghci via cabal or stack it should work fine.
09:54:45 <jollygood2> kritzefitz, yeah that works too. but with the disadvantage that you have one additional step, recompiling C code
09:55:19 <kritzefitz> Cabal can do that for you.
09:55:44 <jollygood2> do you have to restart ghci when you recompile?
09:56:33 × Pent quits (sid313808@id-313808.lymington.irccloud.com) (Ping timeout: 250 seconds)
09:56:48 <kritzefitz> Not sure, but I think so.
09:56:57 Pent joins (sid313808@id-313808.lymington.irccloud.com)
10:00:49 <jollygood2> I believeyou don't with inlin-c, but I can't get their math example to work at all, even after adding suggested ghci options. During interactive linking, GHCi couldn't find the following symbol: inline_c_Main_0_2f88ee80765ab54834856cc58acd770f9760d5e4
10:01:25 <jollygood2> googling that error isn't helping
10:03:18 <kritzefitz> Personally I wouldn't care about restarting GHCi enough to use something as complicaterd as inline-c to avoid it, but of course YMMV.
10:04:05 mark__ joins (~a@p200300ef973db1dc4086f0a6a24fc4dd.dip0.t-ipconnect.de)
10:05:03 <jollygood2> it isn't working when compiling either, same error
10:05:10 __monty__ joins (~toonn@user/toonn)
10:06:14 <jollygood2> perhaps issue on windows only? https://github.com/fpco/inline-c/issues/50
10:07:08 × holden_mcgroin quits (~nut@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 246 seconds)
10:08:47 benin5 joins (~benin@106.198.94.217)
10:09:45 × benin quits (~benin@106.198.86.143) (Ping timeout: 268 seconds)
10:09:46 benin5 is now known as benin
10:10:13 kupi joins (uid212005@id-212005.hampstead.irccloud.com)
10:11:02 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
10:11:21 × Pickchea quits (~private@user/pickchea) (Ping timeout: 256 seconds)
10:15:30 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds)
10:20:56 Topsi joins (~Tobias@dyndsl-091-249-082-100.ewe-ip-backbone.de)
10:28:29 × CiaoSen quits (~Jura@p200300c95730dd002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 246 seconds)
10:29:08 × kupi quits (uid212005@id-212005.hampstead.irccloud.com) (Read error: Connection reset by peer)
10:29:59 kupi joins (uid212005@id-212005.hampstead.irccloud.com)
10:32:31 Andrew_ is now known as AndrewYu
10:34:25 × benin quits (~benin@106.198.94.217) (Ping timeout: 268 seconds)
10:36:27 Midjak joins (~Midjak@82-65-111-221.subs.proxad.net)
10:39:51 × tzh quits (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz)
10:41:57 × kuribas quits (~user@ptr-25vy0i9k3m4zzpdty0l.18120a2.ip6.access.telenet.be) (Remote host closed the connection)
10:44:09 × kupi quits (uid212005@id-212005.hampstead.irccloud.com) (Read error: Connection reset by peer)
10:44:18 kupi joins (uid212005@id-212005.hampstead.irccloud.com)
10:50:25 off^ joins (~off@h50.174.139.63.static.ip.windstream.net)
10:51:14 × kayprish quits (~kayprish@46.240.130.158) (Ping timeout: 246 seconds)
10:52:26 mmhat joins (~mmh@55d4bd26.access.ecotel.net)
10:53:02 drdo joins (~drdo@roach0.drdo.eu)
10:59:01 × riatre quits (~quassel@2001:310:6000:f::5198:1) (Read error: Connection reset by peer)
10:59:22 riatre joins (~quassel@2001:310:6000:f::5198:1)
11:00:00 bliminse joins (~bliminse@host86-185-253-43.range86-185.btcentralplus.com)
11:00:19 × chomwitt quits (~chomwitt@2a02:587:dc0f:7c00:12c3:7bff:fe6d:d374) (Ping timeout: 268 seconds)
11:00:51 alx741 joins (~alx741@186.178.109.114)
11:03:55 × zer0bitz quits (~zer0bitz@dsl-hkibng31-54fae3-116.dhcp.inet.fi) (Read error: Connection reset by peer)
11:12:42 yauhsien joins (~yauhsien@118-167-47-187.dynamic-ip.hinet.net)
11:13:59 × bliminse quits (~bliminse@host86-185-253-43.range86-185.btcentralplus.com) (Quit: leaving)
11:16:31 × bontaq quits (~user@ool-45779fe5.dyn.optonline.net) (Ping timeout: 256 seconds)
11:16:42 benin joins (~benin@106.198.89.104)
11:16:56 bliminse joins (~bliminse@host86-185-253-43.range86-185.btcentralplus.com)
11:17:02 × yauhsien quits (~yauhsien@118-167-47-187.dynamic-ip.hinet.net) (Ping timeout: 240 seconds)
11:26:56 × deadmarshal quits (~deadmarsh@95.38.228.177) (Ping timeout: 246 seconds)
11:29:02 deadmarshal joins (~deadmarsh@95.38.228.177)
11:31:53 chomwitt joins (~chomwitt@athedsl-32204.home.otenet.gr)
11:32:01 DNH joins (~DNH@8.44.0.72)
11:34:29 Pickchea joins (~private@user/pickchea)
11:39:22 × acidjnk_new3 quits (~acidjnk@p200300d0c721b73914e45eebfbace128.dip0.t-ipconnect.de) (Remote host closed the connection)
11:39:45 acidjnk_new3 joins (~acidjnk@p200300d0c721b739c4928bd7ecc09c55.dip0.t-ipconnect.de)
11:40:27 jakalx parts (~jakalx@base.jakalx.net) ()
11:42:33 yauhsien joins (~yauhsien@118-167-47-187.dynamic-ip.hinet.net)
11:46:39 DemiMarieObenour joins (~alwayscur@2001:470:69fc:105::4886)
11:48:23 × merijn quits (~merijn@195.114.232.94) (Ping timeout: 264 seconds)
11:50:07 zer0bitz joins (~zer0bitz@2001:2003:f6e3:7400:9c57:4715:1ac5:a700)
11:50:41 robosexual joins (~spaceoyst@88.85.216.62)
11:50:54 × yauhsien quits (~yauhsien@118-167-47-187.dynamic-ip.hinet.net) (Remote host closed the connection)
11:51:31 yauhsien joins (~yauhsien@118-167-47-187.dynamic-ip.hinet.net)
11:56:11 × yauhsien quits (~yauhsien@118-167-47-187.dynamic-ip.hinet.net) (Ping timeout: 256 seconds)
11:57:42 notzmv joins (~zmv@user/notzmv)
12:02:21 × pavonia quits (~user@user/siracusa) (Quit: Bye!)
12:06:09 bontaq` joins (~user@ool-45779fe5.dyn.optonline.net)
12:06:09 bontaq` is now known as bontaq
12:07:33 merijn joins (~merijn@195.114.232.94)
12:10:08 × benin quits (~benin@106.198.89.104) (Quit: Ping timeout (120 seconds))
12:10:27 benin joins (~benin@106.198.89.104)
12:12:03 × deadmarshal quits (~deadmarsh@95.38.228.177) (Ping timeout: 256 seconds)
12:12:30 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:c075:f6f7:f2c7:7314)
12:16:57 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:c075:f6f7:f2c7:7314) (Ping timeout: 250 seconds)
12:17:20 × max22- quits (~maxime@2a01cb0883359800d82aa6f5cc45a870.ipv6.abo.wanadoo.fr) (Ping timeout: 246 seconds)
12:17:24 shriekingnoise joins (~shrieking@186.137.144.80)
12:17:54 yaroot8 joins (~yaroot@47.70.30.125.dy.iij4u.or.jp)
12:18:52 CiaoSen joins (~Jura@p200300c95730dd002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
12:19:55 × kupi quits (uid212005@id-212005.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
12:20:29 × yaroot quits (~yaroot@6.3.30.125.dy.iij4u.or.jp) (Ping timeout: 268 seconds)
12:20:29 yaroot8 is now known as yaroot
12:21:05 × Pickchea quits (~private@user/pickchea) (Ping timeout: 264 seconds)
12:23:59 × johnny_sitar quits (~artur@078088015209.bialystok.vectranet.pl) (Ping timeout: 246 seconds)
12:26:27 × cfricke quits (~cfricke@user/cfricke) (Quit: WeeChat 3.3)
12:30:08 jakalx joins (~jakalx@base.jakalx.net)
12:34:32 × benin quits (~benin@106.198.89.104) (Read error: Connection reset by peer)
12:36:35 benin joins (~benin@183.82.178.244)
12:40:16 machinedgod joins (~machinedg@24.105.81.50)
12:42:06 Pickchea joins (~private@user/pickchea)
12:43:32 yauhsien joins (~yauhsien@118-167-47-187.dynamic-ip.hinet.net)
12:44:52 × jlamothe quits (~jlamothe@198.251.61.229) (Quit: leaving)
12:48:41 × yauhsien quits (~yauhsien@118-167-47-187.dynamic-ip.hinet.net) (Ping timeout: 264 seconds)
12:49:40 × jmorris quits (uid433911@hampstead.irccloud.com) (Quit: Connection closed for inactivity)
12:52:14 × stefan-_ quits (~cri@42dots.de) (Ping timeout: 260 seconds)
12:56:49 × merijn quits (~merijn@195.114.232.94) (Ping timeout: 256 seconds)
12:57:38 <Profpatsch> Looks to me like aeson ToJSON instances define their encoding at deriving-time
12:57:56 × acidjnk_new3 quits (~acidjnk@p200300d0c721b739c4928bd7ecc09c55.dip0.t-ipconnect.de) (Ping timeout: 246 seconds)
12:57:59 <dminuoso> Profpatsch: Nope.
12:58:00 <Profpatsch> so if I want a different sum-representation e.g. for Either, I’d have to call gToEncoding myself as a fucniton
12:58:04 <dminuoso> There is no such thing as "deriving time"
12:58:08 <Profpatsch> dminuoso: huh, then I read it incorrectly
12:58:23 <dminuoso> Profpatsch: Well its *sort* of correct.
12:58:31 × dschrempf quits (~dominik@070-207.dynamic.dsl.fonira.net) (Ping timeout: 256 seconds)
12:58:42 <dminuoso> Also note, aeson provides TH helpers which you should probably use if you care about performance
12:58:47 <Profpatsch> dminuoso: But the options are passed by the generic instance in the ToJSON function no?
12:58:58 <dminuoso> Relying on GHC simplifier to get rid of the generics code is not a good idea
12:59:00 <Profpatsch> dminuoso: That’s up to benchmarking
12:59:15 <dminuoso> Profpatsch: Honestly if you know this to be a potential hotspot, I wouldnt bother
12:59:35 <Profpatsch> dminuoso: but basically what I’m asking is has e.g. `ToJSON (Either e a)` the SumEncoding baked in?
12:59:39 <dminuoso> The simplifier is a massively complex beast where slight changes (say a GHC update, or even your own code changes) could alter how much GHC can get rid of it.
12:59:43 <Profpatsch> From what I has it does
13:00:17 <Profpatsch> dminuoso: there is really no performance requirement here
13:00:31 <Profpatsch> (also: compile time or run time performance?
13:00:36 <dminuoso> https://hackage.haskell.org/package/aeson-2.0.1.0/docs/src/Data.Aeson.Types.ToJSON.html#line-734
13:00:39 <dminuoso> Both.
13:01:06 <dminuoso> Generics will cost a lot of extra memory and CPU in the simplifier, and if it cant get rid of the generics representation you will suffer from very poor runtime performance
13:01:30 <dminuoso> Thing is, aeson comes with TH helpers which are roughly as easy to use, but give predictable and controllable performance
13:01:47 <Profpatsch> I don’t like aeson very much
13:02:00 × off^ quits (~off@h50.174.139.63.static.ip.windstream.net) (Remote host closed the connection)
13:02:15 <Profpatsch> The library documentation is badly structured and anytime I want to do something non-trivial I have to spend 30 minutes swapping it into my head again
13:02:38 <dminuoso> It's one of those libraries that in reality is hard to avoid
13:02:52 <dminuoso> There's also waargonaut but oh well
13:03:01 <dminuoso> At least aeson does a lot of things right
13:03:20 <dminuoso> Like, it lets you actually work with JSON that has duplicate keys, and it gives you access to Numericals in the only proper form
13:03:44 <dminuoso> That is, Aeson simply gives you a Scientific and lets you interpret it, since JSON has no semantics on numbers
13:04:10 <dminuoso> The interface is quirky at times, and its very typeclassy, but with some basic skill you can even avoid that
13:04:37 <Profpatsch> This tells me that SumEncoding is baked in: https://hackage.haskell.org/package/aeson-2.0.1.0/docs/src/Data.Aeson.Types.ToJSON.html#toJSON
13:04:39 <dminuoso> Not too many other JSON libraries will actually let you work with {"f":1, "f":2}
13:05:00 <Profpatsch> dminuoso: I don’t think that’s useful in many cases, but that’s because json is underspecified
13:05:20 <dminuoso> Its not useful until you need it.
13:05:29 <dminuoso> I like libraries that are morally wrong and take shortcuts
13:05:32 × ddb quits (~ddb@ipv6two.tilde.club) (Remote host closed the connection)
13:05:36 <dminuoso> * dont like
13:05:48 ddb joins (~ddb@ipv6two.tilde.club)
13:06:17 <Profpatsch> I like libraries that provide towers of abstraction and simplification with opt-out mechanisms, but aeson just has it all smushed together in one unstructured mess
13:06:41 mouseghost joins (~draco@user/mouseghost)
13:06:49 <Profpatsch> e.g. I think ToJSON and FromJSON should be separated out into a different package, building on a package that just provides primitive composable parsers and encoders
13:07:04 <Profpatsch> I get that it’s a case of grown
13:07:09 <Profpatsch> *organic growth
13:07:24 <dminuoso> Why should they be separated?
13:07:38 <dminuoso> And aeson does give you composable parsers and utilities
13:08:04 <dminuoso> withObject, (.:) and plenty other things lets you simply write code without generics.
13:08:12 <dminuoso> Nothing ever forces or nudges you to using generics
13:08:33 <dminuoso> Heck, you can even avoid typeclasses themselves, that bit is just not well documented
13:08:50 jlamothe joins (~jlamothe@198.251.61.229)
13:09:20 stefan-_ joins (~cri@42dots.de)
13:09:41 <Profpatsch> It’s not a very good user experience
13:09:54 <Profpatsch> But I’m not here to argue about aeson tbh
13:10:12 <Profpatsch> I just wanted to know whether the instances embod the SumEncoding
13:10:20 <dminuoso> Which sumencoding?
13:10:30 <Profpatsch> The one from aeson
13:10:31 <dminuoso> There's 4 different ones.
13:10:35 <dminuoso> https://hackage.haskell.org/package/aeson-2.0.1.0/docs/Data-Aeson.html#t:SumEncoding
13:10:52 <dminuoso> Profpatsch: Also, you can simply control it yourself
13:11:04 <Profpatsch> how?
13:11:17 <dminuoso> Either by writing out the generic instance manually
13:11:21 <dminuoso> Or my personal favourite by using https://hackage.haskell.org/package/deriving-aeson
13:11:28 <Profpatsch> Can I take a (Either Char Int) and make it use e.g. UntaggedValue instead of ObjectWithSingleField?
13:11:38 <dminuoso> It's a minimalistic library that adds a touch of type helpers to do this inside the deriving clause
13:11:48 <dminuoso> Profpatsch: Yes.
13:12:04 <maerwald> Profpatsch: maybe you like https://hackage.haskell.org/package/waargonaut
13:12:33 <dminuoso> maerwald: Every time I wanted to use waargonaut I had a stopper, since I was relying heavily on aeson instances already. :(
13:12:40 <dminuoso> Third party libraries etc
13:12:43 jurjen joins (~jurjen@83.232.63.97)
13:12:52 <maerwald> I tried it only once and found the API so confusing that I stopped
13:13:02 × vysn quits (~vysn@user/vysn) (Ping timeout: 240 seconds)
13:13:18 <Profpatsch> dminuoso: Ah, it uses a type-level list wrapper
13:13:29 <dminuoso> Profpatsch: Yeah, but you can also do it in the value level by writing out the instance
13:13:29 cfricke joins (~cfricke@user/cfricke)
13:13:32 Guest42 joins (~Guest42@eth-west-pareq2-46-193-4-100.wb.wifirst.net)
13:13:32 <Profpatsch> dminuoso: I assume you can use coerce as well?
13:13:39 <dminuoso> Only downside is that you dont have guaranteed coherence between toJSON and toEncoding
13:13:42 <Profpatsch> For deriving-aeson that is
13:13:47 <dminuoso> What do you mean by coerce?
13:14:01 <dminuoso> Profpatsch: Only problem is that you cant dictate the behavior transitively in generics.
13:14:11 acidjnk_new3 joins (~acidjnk@p200300d0c721b739c4928bd7ecc09c55.dip0.t-ipconnect.de)
13:14:14 <dminuoso> That is, you cant say "use this for all transitive sums"
13:14:55 <dminuoso> Unless you turn it into a SOP representation
13:14:58 <dminuoso> Then you can
13:15:08 <dminuoso> If that's an option for you
13:15:20 <dminuoso> (because with SOP you dont have transitively sums anymore, they're at the outside)
13:15:23 × kspalaiologos quits (~kspalaiol@user/kspalaiologos) (Quit: Leaving)
13:15:32 <Profpatsch> So e.g. (coerce (Left Map.singleton ("foo", 'c'))) :: Either () (CustomJson '[CamelToSnake] (Map Text Char))
13:16:05 × Gurkenglas quits (~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de) (Ping timeout: 256 seconds)
13:16:11 <dminuoso> Mmm, did you mix up Left and Right?
13:16:12 <Profpatsch> s/Left Map/Left $ Map/
13:16:15 <Profpatsch> Probably
13:16:18 <Profpatsch> yeah righ
13:16:20 <Profpatsch> Right
13:16:26 <Profpatsch> But I guess that would work?
13:16:29 <dminuoso> Sure
13:16:39 <Profpatsch> That’s pretty cool hm
13:16:50 <Profpatsch> We seem to be using it already
13:16:52 <dminuoso> Id probably rather write some little helper
13:17:10 <Profpatsch> Problem is that it doesn’t work recursively, yes
13:17:31 <dminuoso> something like `encodeVia :: (ToJSON b, Coercible a b) => Proxy b -> a -> Value`
13:17:36 <Profpatsch> Ah, that’s why genericSOP
13:17:40 <dminuoso> Yup
13:17:45 <Profpatsch> but that’s a really high conceptual overhead
13:18:00 <dminuoso> Me personally, Id just stop worrying about encoding things into aeson
13:18:03 <dminuoso> and just write out the instances
13:18:13 <dminuoso> It's not much effort if you do it two or three times
13:18:13 <Profpatsch> tbh I tend towards having a small library that provides composable aeson parser functions
13:18:33 <Profpatsch> And the thing calling the encoder will inject the options
13:18:46 <dminuoso> Profpatsch: Alternatively, you can simply write generics code yourself.
13:18:49 <dminuoso> It's not hard
13:19:04 <dminuoso> And then parametrize your generic encoder with some sum encoder
13:19:05 <DemiMarieObenour> Anyone else had fun breaking GHC?
13:19:12 <Profpatsch> newtype Enc a = Enc (Options -> a -> Encoding)
13:19:25 <Profpatsch> And then implement Contravariant, Divisible etc
13:19:35 <geekosaur> breaking ghc isn't so hard given unsafeCoerce :þ
13:20:16 <dminuoso> Profpatsch: Every time I just tried to be tricky, I realized I was just catering to a mechanism that wasnt meant for specialization
13:20:18 <dminuoso> THat is
13:20:18 <Profpatsch> dminuoso: I will frame “you can simply write generics code myself” and hang it over my house altar :P
13:20:35 <dminuoso> This generics stuff isnt meant to be customized, its designed to just take the weight off 90% your instances
13:20:50 <dminuoso> Writing out manual instances for the rest 10% is worth it
13:21:12 <dminuoso> Profpatsch: Writing generics is not hard, it's just confusing at the beginning if you dont understand all the letters and names.
13:21:18 <dminuoso> But really, it's just a simple tree that you work on
13:21:59 <Profpatsch> It’s not a particularly fun or debuggable experience
13:22:07 <Profpatsch> maybe with generics-sop
13:22:17 <dminuoso> honestly, with generics-sop things get worse
13:22:39 <dminuoso> because now you cant even use your original data structure as an indication of the shape you're producing
13:23:08 <dminuoso> The thing with json encoding is, they should ideally be disconnected/separate from your implementation
13:23:18 <dminuoso> What you're doing is trying *very* hard to keep them coupled
13:23:28 <dminuoso> And with generics-sop you're breaking that
13:23:34 <dminuoso> In weird ways
13:24:12 <Profpatsch> I’d rather write an Encoder at every place I have to encode data tbh
13:24:17 <dminuoso> Because to some degree you're doing tight coupling (since the JSON representation is still a direct reflection of your haskell data type), except it's not even in the same shape anymore
13:24:17 <Profpatsch> instead of relying on ToJSON
13:24:38 Gurkenglas joins (~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de)
13:24:39 <dminuoso> Profpatsch: I do this 90% generics, 10% bespoke instances - and this works very well
13:25:01 <dminuoso> Saves me from writing useless boilerplate, and yet I get full control over when I want something different than what generics would do
13:25:02 ubert1 joins (~Thunderbi@2a02:8109:9880:303c:ca5b:76ff:fe29:f233)
13:25:09 × shidima quits (~shidima@46.44.183.25) (Ping timeout: 256 seconds)
13:25:10 <dminuoso> (or if I start changing the data without changing the json representation)
13:25:46 <dminuoso> If you also have FromJSON instances, the benefit is that you dont even need to test the 90% for whether toJSON/fromJSON rountrips
13:25:54 <dminuoso> Only need it for the remaining 105
13:25:56 <dminuoso> Only need it for the remaining 10%
13:28:14 lavaman joins (~lavaman@98.38.249.169)
13:30:22 × chexum quits (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
13:31:23 chexum joins (~quassel@gateway/tor-sasl/chexum)
13:31:32 deadmarshal joins (~deadmarsh@95.38.228.177)
13:31:57 × Gurkenglas quits (~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de) (Ping timeout: 256 seconds)
13:32:31 × lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 256 seconds)
13:40:02 × NemesisD quits (sid24071@id-24071.lymington.irccloud.com) (Ping timeout: 240 seconds)
13:40:02 × truckasaurus quits (sid457088@id-457088.helmsley.irccloud.com) (Ping timeout: 240 seconds)
13:40:02 × typetetris quits (sid275937@id-275937.tinside.irccloud.com) (Ping timeout: 240 seconds)
13:40:32 × whez quits (sid470288@lymington.irccloud.com) (Ping timeout: 240 seconds)
13:40:50 × ProofTechnique quits (sid79547@ilkley.irccloud.com) (Ping timeout: 260 seconds)
13:40:57 × obviyus quits (sid415299@user/obviyus) (Read error: Connection reset by peer)
13:40:57 × hendi quits (sid489601@id-489601.lymington.irccloud.com) (Read error: Connection reset by peer)
13:40:57 × Pent quits (sid313808@id-313808.lymington.irccloud.com) (Read error: Connection reset by peer)
13:40:58 × epolanski quits (uid312403@id-312403.helmsley.irccloud.com) (Read error: Connection reset by peer)
13:40:59 × acertain_ quits (sid470584@id-470584.hampstead.irccloud.com) (Read error: Connection reset by peer)
13:41:01 × rtpg quits (sid443069@ilkley.irccloud.com) (Ping timeout: 256 seconds)
13:41:01 × gmc quits (sid58314@ilkley.irccloud.com) (Ping timeout: 256 seconds)
13:41:01 × integral quits (sid296274@user/integral) (Ping timeout: 256 seconds)
13:41:01 × vito quits (sid1962@user/vito) (Ping timeout: 256 seconds)
13:41:01 × the_finn quits (uid526334@hampstead.irccloud.com) (Ping timeout: 256 seconds)
13:41:01 × alanz quits (sid110616@uxbridge.irccloud.com) (Ping timeout: 256 seconds)
13:41:01 × awpr quits (uid446117@lymington.irccloud.com) (Ping timeout: 256 seconds)
13:41:01 × pjlsergeant quits (sid143467@hampstead.irccloud.com) (Ping timeout: 256 seconds)
13:41:01 × taktoa[c] quits (sid282096@tinside.irccloud.com) (Ping timeout: 256 seconds)
13:41:01 × hook54321 quits (sid149355@user/hook54321) (Ping timeout: 256 seconds)
13:41:01 × PotatoGim quits (sid99505@lymington.irccloud.com) (Ping timeout: 250 seconds)
13:41:02 × bjs quits (sid190364@user/bjs) (Read error: Connection reset by peer)
13:41:02 × saolsen quits (sid26430@lymington.irccloud.com) (Ping timeout: 240 seconds)
13:41:02 × _0x47 quits (sid508683@tinside.irccloud.com) (Ping timeout: 240 seconds)
13:41:11 × grfn quits (sid449115@helmsley.irccloud.com) (Ping timeout: 264 seconds)
13:41:11 × parseval quits (sid239098@helmsley.irccloud.com) (Ping timeout: 264 seconds)
13:41:11 × mrianbloom quits (sid350277@ilkley.irccloud.com) (Ping timeout: 264 seconds)
13:41:11 × T_S_ quits (sid501726@uxbridge.irccloud.com) (Ping timeout: 264 seconds)
13:41:11 × b20n quits (sid115913@uxbridge.irccloud.com) (Ping timeout: 264 seconds)
13:41:11 × astra` quits (sid289983@user/amish) (Ping timeout: 264 seconds)
13:41:11 × ehamberg quits (sid18208@hampstead.irccloud.com) (Ping timeout: 264 seconds)
13:41:11 × systemfault quits (sid267009@uxbridge.irccloud.com) (Ping timeout: 264 seconds)
13:41:11 × iphy quits (sid67735@lymington.irccloud.com) (Ping timeout: 264 seconds)
13:41:16 × ephemient quits (uid407513@lymington.irccloud.com) (Ping timeout: 268 seconds)
13:41:16 × stevenxl quits (sid133530@uxbridge.irccloud.com) (Ping timeout: 268 seconds)
13:41:16 × rubin55 quits (sid175221@hampstead.irccloud.com) (Ping timeout: 268 seconds)
13:41:16 × philpax_ quits (sid516926@lymington.irccloud.com) (Ping timeout: 268 seconds)
13:41:16 × aarchi quits (sid486183@uxbridge.irccloud.com) (Ping timeout: 268 seconds)
13:41:16 × aristid quits (sid1599@uxbridge.irccloud.com) (Ping timeout: 268 seconds)
13:41:18 × jackdk quits (sid373013@cssa/jackdk) (Ping timeout: 260 seconds)
13:41:18 × elvishjerricco quits (sid237756@helmsley.irccloud.com) (Ping timeout: 260 seconds)
13:41:18 × amir quits (sid22336@user/amir) (Ping timeout: 260 seconds)
13:41:32 × etrepum quits (sid763@uxbridge.irccloud.com) (Ping timeout: 240 seconds)
13:41:32 × edmundnoble quits (sid229620@helmsley.irccloud.com) (Ping timeout: 240 seconds)
13:41:35 × caasih quits (sid13241@ilkley.irccloud.com) (Ping timeout: 256 seconds)
13:41:35 × bw quits (sid2730@user/betawaffle) (Ping timeout: 256 seconds)
13:41:35 × mustafa quits (sid502723@rockylinux/releng/mustafa) (Ping timeout: 256 seconds)
13:41:35 × tnks quits (sid412124@helmsley.irccloud.com) (Ping timeout: 256 seconds)
13:41:35 × teehemkay quits (sid14792@lymington.irccloud.com) (Ping timeout: 256 seconds)
13:41:35 × idnar quits (sid12240@debian/mithrandi) (Ping timeout: 256 seconds)
13:41:35 × jmct_ quits (sid160793@tinside.irccloud.com) (Ping timeout: 256 seconds)
13:41:35 × sa1_ quits (sid7690@ilkley.irccloud.com) (Ping timeout: 256 seconds)
13:41:35 × gaze___ quits (sid387101@helmsley.irccloud.com) (Ping timeout: 256 seconds)
13:41:46 × kaychaks__ quits (sid236345@helmsley.irccloud.com) (Ping timeout: 260 seconds)
13:41:47 × lightandlight quits (sid135476@helmsley.irccloud.com) (Ping timeout: 264 seconds)
13:41:47 × kaizen quits (sid501599@helmsley.irccloud.com) (Ping timeout: 264 seconds)
13:41:47 × NiKaN quits (sid385034@helmsley.irccloud.com) (Ping timeout: 264 seconds)
13:41:47 × meinside quits (uid24933@helmsley.irccloud.com) (Ping timeout: 264 seconds)
13:41:47 × ysh quits (sid6017@ilkley.irccloud.com) (Ping timeout: 264 seconds)
13:41:47 × dmj` quits (sid72307@hampstead.irccloud.com) (Ping timeout: 264 seconds)
13:41:47 × agander_m quits (sid407952@tinside.irccloud.com) (Ping timeout: 264 seconds)
13:41:53 × alinab quits (sid468903@helmsley.irccloud.com) (Ping timeout: 268 seconds)
13:41:53 × jonrh quits (sid5185@ilkley.irccloud.com) (Ping timeout: 268 seconds)
13:41:53 × Adeon quits (sid418992@lymington.irccloud.com) (Ping timeout: 268 seconds)
13:41:53 × SanchayanMaity quits (sid478177@hampstead.irccloud.com) (Ping timeout: 268 seconds)
13:41:53 × enemeth79 quits (sid309041@lymington.irccloud.com) (Ping timeout: 268 seconds)
13:41:53 × gonz____ quits (sid304396@lymington.irccloud.com) (Ping timeout: 268 seconds)
13:41:53 × JSharp quits (sid4580@lymington.irccloud.com) (Ping timeout: 268 seconds)
13:42:09 × S11001001 quits (sid42510@ilkley.irccloud.com) (Ping timeout: 256 seconds)
13:42:09 × angerman quits (sid209936@ilkley.irccloud.com) (Ping timeout: 256 seconds)
13:42:09 × rune quits (sid21167@ilkley.irccloud.com) (Ping timeout: 256 seconds)
13:42:09 × aria quits (sid380617@lymington.irccloud.com) (Ping timeout: 256 seconds)
13:42:09 × supersven quits (sid501114@ilkley.irccloud.com) (Ping timeout: 256 seconds)
13:42:14 × carter quits (sid14827@helmsley.irccloud.com) (Ping timeout: 260 seconds)
13:42:14 × mcfilib quits (sid302703@user/mcfilib) (Ping timeout: 260 seconds)
13:42:14 × christiaanb quits (sid84827@lymington.irccloud.com) (Ping timeout: 260 seconds)
13:42:19 × tapas quits (sid467876@ilkley.irccloud.com) (Ping timeout: 250 seconds)
13:42:23 × dsal quits (sid13060@lymington.irccloud.com) (Ping timeout: 264 seconds)
13:42:23 × SethTisue__ quits (sid14912@ilkley.irccloud.com) (Ping timeout: 264 seconds)
13:42:23 × gregberns__ quits (sid315709@helmsley.irccloud.com) (Ping timeout: 264 seconds)
13:42:23 × cbarrett quits (sid192934@helmsley.irccloud.com) (Ping timeout: 264 seconds)
13:42:23 × SrPx quits (sid108780@uxbridge.irccloud.com) (Ping timeout: 264 seconds)
13:42:23 × hubvu quits (sid495858@user/hubvu) (Ping timeout: 264 seconds)
13:42:23 × joel135 quits (sid136450@hampstead.irccloud.com) (Ping timeout: 264 seconds)
13:42:28 obviyus joins (sid415299@user/obviyus)
13:42:29 JSharp joins (sid4580@lymington.irccloud.com)
13:42:30 × sa quits (sid1055@tinside.irccloud.com) (Ping timeout: 268 seconds)
13:42:30 × hamishmack quits (sid389057@hampstead.irccloud.com) (Ping timeout: 268 seconds)
13:42:30 × bbhoss quits (sid18216@tinside.irccloud.com) (Ping timeout: 268 seconds)
13:42:32 × jakesyl_ quits (sid56879@hampstead.irccloud.com) (Ping timeout: 240 seconds)
13:42:32 cln_ joins (sid336875@ilkley.irccloud.com)
13:42:33 edwardk_ joins (sid47016@haskell/developer/edwardk)
13:42:35 vito joins (sid1962@user/vito)
13:42:35 rune joins (sid21167@ilkley.irccloud.com)
13:42:36 hendi joins (sid489601@id-489601.lymington.irccloud.com)
13:42:37 bw joins (sid2730@user/betawaffle)
13:42:41 jmct_ joins (sid160793@tinside.irccloud.com)
13:42:42 PotatoGim joins (sid99505@lymington.irccloud.com)
13:42:42 × degraafk quits (sid71464@lymington.irccloud.com) (Ping timeout: 260 seconds)
13:42:42 × sclv quits (sid39734@haskell/developer/sclv) (Ping timeout: 260 seconds)
13:42:42 × scav quits (sid309693@helmsley.irccloud.com) (Ping timeout: 260 seconds)
13:42:43 × dpratt_ quits (sid193493@helmsley.irccloud.com) (Ping timeout: 256 seconds)
13:42:43 × nrr_ quits (sid20938@lymington.irccloud.com) (Ping timeout: 256 seconds)
13:42:43 × hongminhee quits (sid295@tinside.irccloud.com) (Ping timeout: 256 seconds)
13:42:43 × Firedancer quits (sid336191@hampstead.irccloud.com) (Ping timeout: 256 seconds)
13:42:43 × kristjansson_ quits (sid126207@tinside.irccloud.com) (Ping timeout: 256 seconds)
13:42:43 × pepeiborra quits (sid443799@ilkley.irccloud.com) (Ping timeout: 256 seconds)
13:42:43 × edwardk quits (sid47016@haskell/developer/edwardk) (Ping timeout: 256 seconds)
13:42:43 × conjunctive quits (sid433686@helmsley.irccloud.com) (Ping timeout: 256 seconds)
13:42:44 edwardk_ is now known as edwardk
13:42:44 acertain_ joins (sid470584@id-470584.hampstead.irccloud.com)
13:42:47 dpratt__ joins (sid193493@id-193493.helmsley.irccloud.com)
13:42:47 pjlsergeant joins (sid143467@id-143467.hampstead.irccloud.com)
13:42:50 gonz____ joins (sid304396@lymington.irccloud.com)
13:42:50 NiKaN joins (sid385034@helmsley.irccloud.com)
13:42:53 integral joins (sid296274@user/integral)
13:42:53 dmj` joins (sid72307@hampstead.irccloud.com)
13:42:53 whez joins (sid470288@lymington.irccloud.com)
13:42:59 SrPx joins (sid108780@id-108780.uxbridge.irccloud.com)
13:42:59 × davetapley quits (sid666@uxbridge.irccloud.com) (Ping timeout: 264 seconds)
13:42:59 × cln quits (sid336875@ilkley.irccloud.com) (Ping timeout: 264 seconds)
13:42:59 × bradparker quits (sid262931@uxbridge.irccloud.com) (Ping timeout: 264 seconds)
13:42:59 cln_ is now known as cln
13:43:03 jackdk joins (sid373013@cssa/jackdk)
13:43:03 hubvu joins (sid495858@user/hubvu)
13:43:05 elvishjerricco joins (sid237756@2a03:5180:f:1::3:a0bc)
13:43:07 kristjansson_ joins (sid126207@2a03:5180:f::1:ecff)
13:43:07 × glowcoil quits (sid3405@tinside.irccloud.com) (Ping timeout: 268 seconds)
13:43:07 × tritlo quits (sid58727@user/tritlo) (Ping timeout: 268 seconds)
13:43:07 × Boarders quits (sid425905@lymington.irccloud.com) (Ping timeout: 268 seconds)
13:43:07 × AndreasK_ quits (sid320732@uxbridge.irccloud.com) (Ping timeout: 268 seconds)
13:43:08 ephemient joins (uid407513@lymington.irccloud.com)
13:43:09 nrr__ joins (sid20938@2a03:5180:f:2::51ca)
13:43:09 mrianbloom joins (sid350277@id-350277.ilkley.irccloud.com)
13:43:10 mcfilib joins (sid302703@user/mcfilib)
13:43:10 alanz joins (sid110616@uxbridge.irccloud.com)
13:43:11 AndreasK__ joins (sid320732@uxbridge.irccloud.com)
13:43:11 epolanski joins (uid312403@2a03:5180:f:1::4:c453)
13:43:12 SethTisue__ joins (sid14912@2a03:5180:f:3::3a40)
13:43:13 bjs joins (sid190364@2a03:5180:f:1::2:e79c)
13:43:14 dsal joins (sid13060@lymington.irccloud.com)
13:43:14 teehemkay joins (sid14792@2a03:5180:f:2::39c8)
13:43:14 Pent joins (sid313808@2a03:5180:f:2::4:c9d0)
13:43:16 alinab joins (sid468903@id-468903.helmsley.irccloud.com)
13:43:17 T_S_ joins (sid501726@uxbridge.irccloud.com)
13:43:17 gaze___ joins (sid387101@2a03:5180:f:1::5:e81d)
13:43:19 agander_m joins (sid407952@2a03:5180:f::6:3990)
13:43:19 aristid joins (sid1599@2a03:5180:f:5::63f)
13:43:19 christiaanb joins (sid84827@lymington.irccloud.com)
13:43:19 meinside joins (uid24933@2a03:5180:f:1::6165)
13:43:20 supersven joins (sid501114@2a03:5180:f:3::7:a57a)
13:43:21 gregberns__ joins (sid315709@2a03:5180:f:1::4:d13d)
13:43:22 gmc joins (sid58314@ilkley.irccloud.com)
13:43:22 rtpg joins (sid443069@2a03:5180:f:3::6:c2bd)
13:43:23 hongminhee joins (sid295@tinside.irccloud.com)
13:43:24 hamishmack joins (sid389057@2a03:5180:f:4::5:efc1)
13:43:24 jonrh joins (sid5185@2a03:5180:f:3::1441)
13:43:24 × bjs quits (sid190364@2a03:5180:f:1::2:e79c) (Changing host)
13:43:24 bjs joins (sid190364@user/bjs)
13:43:24 typetetris joins (sid275937@2a03:5180:f::4:35e1)
13:43:25 truckasaurus joins (sid457088@2a03:5180:f:1::6:f980)
13:43:25 davetapley joins (sid666@uxbridge.irccloud.com)
13:43:26 carter joins (sid14827@id-14827.helmsley.irccloud.com)
13:43:27 NemesisD joins (sid24071@id-24071.lymington.irccloud.com)
13:43:28 tnks joins (sid412124@2a03:5180:f:1::6:49dc)
13:43:28 Adeon joins (sid418992@2a03:5180:f:2::6:64b0)
13:43:28 ProofTechnique joins (sid79547@ilkley.irccloud.com)
13:43:28 ysh joins (sid6017@2a03:5180:f:3::1781)
13:43:28 Boarders_ joins (sid425905@2a03:5180:f:2::6:7fb1)
13:43:29 sa1_ joins (sid7690@2a03:5180:f:3::1e0a)
13:43:29 etrepum joins (sid763@2a03:5180:f:5::2fb)
13:43:29 edmundnoble joins (sid229620@id-229620.helmsley.irccloud.com)
13:43:30 tapas joins (sid467876@ilkley.irccloud.com)
13:43:30 _0x47 joins (sid508683@2a03:5180:f::7:c30b)
13:43:31 mustafa joins (sid502723@2a03:5180:f:4::7:abc3)
13:43:32 kaychaks__ joins (sid236345@2a03:5180:f:1::3:9b39)
13:43:33 angerman joins (sid209936@2a03:5180:f:3::3:3410)
13:43:33 × ubert1 quits (~Thunderbi@2a02:8109:9880:303c:ca5b:76ff:fe29:f233) (Remote host closed the connection)
13:43:33 b20n joins (sid115913@2a03:5180:f:5::1:c4c9)
13:43:33 enemeth79 joins (sid309041@2a03:5180:f:2::4:b731)
13:43:35 ehamberg joins (sid18208@2a03:5180:f:4::4720)
13:43:38 bbhoss joins (sid18216@2a03:5180:f::4728)
13:43:38 systemfault joins (sid267009@uxbridge.irccloud.com)
13:43:40 aria joins (sid380617@2a03:5180:f:2::5:cec9)
13:43:40 awpr joins (uid446117@2a03:5180:f:2::6:cea5)
13:43:41 philpax_ joins (sid516926@2a03:5180:f:2::7:e33e)
13:43:41 stevenxl joins (sid133530@2a03:5180:f:5::2:99a)
13:43:42 scav joins (sid309693@helmsley.irccloud.com)
13:43:44 the_finn joins (uid526334@id-526334.hampstead.irccloud.com)
13:43:47 glowcoil joins (sid3405@id-3405.tinside.irccloud.com)
13:43:54 astra` joins (sid289983@hampstead.irccloud.com)
13:43:55 Firedancer joins (sid336191@hampstead.irccloud.com)
13:43:56 pepeiborra joins (sid443799@id-443799.ilkley.irccloud.com)
13:43:57 SanchayanMaity joins (sid478177@hampstead.irccloud.com)
13:43:57 aarchi joins (sid486183@2a03:5180:f:5::7:6b27)
13:43:58 caasih joins (sid13241@ilkley.irccloud.com)
13:43:59 × mustafa quits (sid502723@2a03:5180:f:4::7:abc3) (Changing host)
13:43:59 mustafa joins (sid502723@rockylinux/releng/mustafa)
13:43:59 joel135 joins (sid136450@hampstead.irccloud.com)
13:44:01 cbarrett joins (sid192934@2a03:5180:f:1::2:f1a6)
13:44:03 <ddb> I'm having some trouble installing djinn, does anyone have experience with haskell on fedora?
13:44:05 bradparker joins (sid262931@id-262931.uxbridge.irccloud.com)
13:44:05 tritlo joins (sid58727@id-58727.hampstead.irccloud.com)
13:44:06 saolsen joins (sid26430@id-26430.lymington.irccloud.com)
13:44:06 kaizen joins (sid501599@helmsley.irccloud.com)
13:44:08 jakesyl_ joins (sid56879@hampstead.irccloud.com)
13:44:10 conjunctive joins (sid433686@id-433686.helmsley.irccloud.com)
13:44:10 iphy joins (sid67735@lymington.irccloud.com)
13:44:13 <ddb> here's the error I'm getting: https://ttm.sh/eKu.txt
13:44:17 degraafk joins (sid71464@id-71464.lymington.irccloud.com)
13:44:18 hook54321 joins (sid149355@user/hook54321)
13:44:19 S11001001 joins (sid42510@ilkley.irccloud.com)
13:44:19 grfn joins (sid449115@helmsley.irccloud.com)
13:44:19 parseval joins (sid239098@id-239098.helmsley.irccloud.com)
13:44:20 lightandlight joins (sid135476@id-135476.helmsley.irccloud.com)
13:44:22 sa joins (sid1055@tinside.irccloud.com)
13:44:25 taktoa[c] joins (sid282096@id-282096.tinside.irccloud.com)
13:44:26 idnar joins (sid12240@id-12240.lymington.irccloud.com)
13:44:26 × astra` quits (sid289983@hampstead.irccloud.com) (Changing host)
13:44:26 astra` joins (sid289983@user/amish)
13:44:26 amir joins (sid22336@id-22336.hampstead.irccloud.com)
13:44:27 sclv joins (sid39734@id-39734.lymington.irccloud.com)
13:44:28 rubin55 joins (sid175221@id-175221.hampstead.irccloud.com)
13:44:37 <geekosaur> right, nobody has updated it in particular for the addition of <> as infix mappend
13:44:49 <geekosaur> you'd have to qualify those two uses of <>
13:44:53 × tritlo quits (sid58727@id-58727.hampstead.irccloud.com) (Changing host)
13:44:53 tritlo joins (sid58727@user/tritlo)
13:45:06 × sclv quits (sid39734@id-39734.lymington.irccloud.com) (Changing host)
13:45:06 sclv joins (sid39734@haskell/developer/sclv)
13:45:08 <ddb> ok, so my real goal is to install lambdabot
13:45:10 × idnar quits (sid12240@id-12240.lymington.irccloud.com) (Changing host)
13:45:10 idnar joins (sid12240@debian/mithrandi)
13:45:10 × amir quits (sid22336@id-22336.hampstead.irccloud.com) (Changing host)
13:45:10 amir joins (sid22336@user/amir)
13:45:14 <geekosaur> (I just tried to install it here)
13:45:47 <ddb> > product [1..5]
13:45:49 <lambdabot> 120
13:46:25 <ddb> I'm trying to follow the instructions here: https://github.com/lambdabot/lambdabot/tree/master/lambdabot
13:46:42 <geekosaur> int-e, do you have any wisdom about installing lambdabot on modern ghc?
13:47:06 × v01d4lph4 quits (~v01d4lph4@user/v01d4lph4) (Remote host closed the connection)
13:47:15 × chomwitt quits (~chomwitt@athedsl-32204.home.otenet.gr) (Ping timeout: 256 seconds)
13:47:48 <int-e> is 8.10.7 still modern
13:48:19 <geekosaur> still a lot of people using it since 9.0.1 and 9.2.1 are still not supported by most of the ecosystem
13:48:43 dsrt^ joins (~dsrt@h50.174.139.63.static.ip.windstream.net)
13:48:56 <geekosaur> and in any case the error they're getting is from the addition of infix mappend conflicting with prettyprinting
13:49:10 <ddb> my local version is 8.10.5, so that seems like a good place to start
13:49:11 <int-e> oh those instructions, that `install` predates new-install, so I'd mentally substitute v1-install.
13:49:29 mcgroin joins (~mcgroin@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
13:49:33 cosimone joins (~user@93-44-184-239.ip98.fastwebnet.it)
13:49:45 <ddb> hah I tried v2-install and new-install, didn't know about v1-install
13:49:57 <ddb> same error, however
13:50:25 <ddb> cabal-install version 3.6.2.0
13:51:26 <int-e> let me see how far it gets for me
13:51:28 <ddb> I am also attempting the install as an unpriviledged user, although that does not seem to be the problem.
13:52:33 <maerwald> 9.0.1 and 9.2.1 both have serious bugs, but I think we'll get 9.0.2
13:53:26 <int-e> Oh it's really `djinn` that fails? Let's see. It seems I patched it: `cabal unpack djinn`, then insert an `import Prelude hiding ((<>))` in src/HTypes.hs, and then cabal v1-install from its source directory.
13:53:52 <int-e> @djinn a -> b -> a
13:53:52 <lambdabot> f a _ = a
13:54:16 <int-e> that's what `djinn` (an executable) is needed for; the rest of lambdabot doesn't use it.
13:54:41 <ddb> well if it's working here, I'd like to keep it if possible
13:55:17 <ddb> if I run lambdabot and try commands I also get errors like
13:55:20 <ddb> lambdabot> > product [1..5]
13:55:22 <ddb> Plugin `eval' failed with: mueval: readCreateProcessWithExitCode: runInteractiveProcess: exec: does not exist (No such file or directory)
13:56:02 × sprout_ quits (~quassel@2a02:a467:ccd6:1:3471:ef4b:ebc8:3b49) (Ping timeout: 246 seconds)
13:56:06 <int-e> right, that probably means that *mumble* ~/.cabal/bin is not in your PATH
13:56:11 yauhsien joins (~yauhsien@118-167-47-187.dynamic-ip.hinet.net)
13:56:35 <geekosaur> or you v2-installed mueval which might break things in other ways
13:56:43 <ddb> it does appear to be in my path, although I do have cabal symlinked elswhere
13:56:47 <int-e> or does mueval have to be installed separately?
13:56:52 <geekosaur> (with your version of cabal, v2-install is the default)
13:57:30 <int-e> I should probably figure out the various quirks of v2-install wrt both libraries and executables :-/
13:57:37 <geekosaur> oh also if it literally shows "~/.cabal/bin" in your PATH then it won't be working; only shells understand ~
13:57:47 <geekosaur> you may have to readd it as $HOME/.cabal/bin
13:58:00 <geekosaur> s/readd/re-add/
13:58:09 <int-e> good point
13:58:21 <ddb> it's the right path, /home/ddb/.cabal/bin
13:58:33 <int-e> is there a mueval executable in there?
13:59:13 <ddb> yes, as you suggested I cabal install mueval and now get this error in lambdabot
13:59:15 <ddb> mueval-core: GhcException "cannot satisfy -trust lambdabot-trusted\n (use -v for more information)"
13:59:22 <ddb> when I try do do
13:59:25 <ddb> > product [1..5]
13:59:27 <lambdabot> 120
14:00:00 × solirc quits (~solirc@ppp-110-168-219-132.revip5.asianet.co.th) (Quit: Client closed)
14:00:50 <ddb> I'm going afk for now but I will be back one of these days to continue debugging this issue
14:00:54 <ddb> thanks for all your help so far!
14:00:59 × yauhsien quits (~yauhsien@118-167-47-187.dynamic-ip.hinet.net) (Ping timeout: 264 seconds)
14:01:11 × epolanski quits (uid312403@2a03:5180:f:1::4:c453) (Quit: Connection closed for inactivity)
14:01:28 <int-e> hmm. does passing --trust=lambdabot-trusted to lambdabot help?
14:04:32 <ddb> nope, same error
14:04:47 chomwitt joins (~chomwitt@2a02:587:dc0f:7c00:12c3:7bff:fe6d:d374)
14:05:51 <int-e> eh let me try this myself...
14:09:29 sprout joins (~quassel@2a02:a467:ccd6:1:5c59:2f73:735:a325)
14:09:51 <int-e> ... https://xkcd.com/303/ ...
14:12:22 <int-e> Huh, it works for me?
14:13:35 slowButPresent joins (~slowButPr@user/slowbutpresent)
14:14:19 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:c075:f6f7:f2c7:7314)
14:16:22 bjs is now known as Guest8959
14:16:22 × Guest8959 quits (sid190364@user/bjs) (Killed (gold.libera.chat (Nickname regained by services)))
14:16:33 × alanz quits (sid110616@uxbridge.irccloud.com) (Ping timeout: 250 seconds)
14:16:35 × whez quits (sid470288@lymington.irccloud.com) (Ping timeout: 264 seconds)
14:16:43 × systemfault quits (sid267009@uxbridge.irccloud.com) (Ping timeout: 256 seconds)
14:16:43 × dmj` quits (sid72307@hampstead.irccloud.com) (Ping timeout: 256 seconds)
14:16:43 × bw quits (sid2730@user/betawaffle) (Ping timeout: 256 seconds)
14:16:59 × jackdk quits (sid373013@cssa/jackdk) (Ping timeout: 250 seconds)
14:17:02 × ProofTechnique quits (sid79547@ilkley.irccloud.com) (Ping timeout: 268 seconds)
14:17:11 × davetapley quits (sid666@uxbridge.irccloud.com) (Ping timeout: 264 seconds)
14:17:11 × ephemient quits (uid407513@lymington.irccloud.com) (Ping timeout: 264 seconds)
14:17:14 × S11001001 quits (sid42510@ilkley.irccloud.com) (Ping timeout: 260 seconds)
14:17:14 × joel135 quits (sid136450@hampstead.irccloud.com) (Ping timeout: 260 seconds)
14:17:14 × scav quits (sid309693@helmsley.irccloud.com) (Ping timeout: 260 seconds)
14:17:14 × cln quits (sid336875@ilkley.irccloud.com) (Ping timeout: 260 seconds)
14:17:17 × sa quits (sid1055@tinside.irccloud.com) (Ping timeout: 256 seconds)
14:17:17 × jmct_ quits (sid160793@tinside.irccloud.com) (Ping timeout: 256 seconds)
14:17:17 × rune quits (sid21167@ilkley.irccloud.com) (Ping timeout: 256 seconds)
14:17:25 × kaizen quits (sid501599@helmsley.irccloud.com) (Ping timeout: 250 seconds)
14:17:25 × caasih quits (sid13241@ilkley.irccloud.com) (Ping timeout: 250 seconds)
14:17:25 × PotatoGim quits (sid99505@lymington.irccloud.com) (Ping timeout: 250 seconds)
14:17:39 × gonz____ quits (sid304396@lymington.irccloud.com) (Ping timeout: 268 seconds)
14:17:47 × rubin55 quits (sid175221@id-175221.hampstead.irccloud.com) (Ping timeout: 264 seconds)
14:17:47 × tnks quits (sid412124@2a03:5180:f:1::6:49dc) (Ping timeout: 264 seconds)
14:17:47 × hamishmack quits (sid389057@2a03:5180:f:4::5:efc1) (Ping timeout: 264 seconds)
14:17:47 × Boarders_ quits (sid425905@2a03:5180:f:2::6:7fb1) (Ping timeout: 264 seconds)
14:17:47 × rtpg quits (sid443069@2a03:5180:f:3::6:c2bd) (Ping timeout: 264 seconds)
14:17:47 × teehemkay quits (sid14792@2a03:5180:f:2::39c8) (Ping timeout: 264 seconds)
14:17:47 × vito quits (sid1962@user/vito) (Ping timeout: 264 seconds)
14:17:48 v01d4lph4 joins (~v01d4lph4@user/v01d4lph4)
14:17:51 × degraafk quits (sid71464@id-71464.lymington.irccloud.com) (Ping timeout: 250 seconds)
14:17:51 × dsal quits (sid13060@lymington.irccloud.com) (Ping timeout: 250 seconds)
14:17:51 × dpratt__ quits (sid193493@id-193493.helmsley.irccloud.com) (Ping timeout: 250 seconds)
14:18:02 × awpr quits (uid446117@2a03:5180:f:2::6:cea5) (Ping timeout: 240 seconds)
14:18:02 × aria quits (sid380617@2a03:5180:f:2::5:cec9) (Ping timeout: 240 seconds)
14:18:02 × bbhoss quits (sid18216@2a03:5180:f::4728) (Ping timeout: 240 seconds)
14:18:02 × b20n quits (sid115913@2a03:5180:f:5::1:c4c9) (Ping timeout: 240 seconds)
14:18:02 × ysh quits (sid6017@2a03:5180:f:3::1781) (Ping timeout: 240 seconds)
14:18:02 × _0x47 quits (sid508683@2a03:5180:f::7:c30b) (Ping timeout: 240 seconds)
14:18:02 × aristid quits (sid1599@2a03:5180:f:5::63f) (Ping timeout: 240 seconds)
14:18:02 × kristjansson_ quits (sid126207@2a03:5180:f::1:ecff) (Ping timeout: 240 seconds)
14:18:02 × edwardk quits (sid47016@haskell/developer/edwardk) (Ping timeout: 240 seconds)
14:18:10 × SanchayanMaity quits (sid478177@hampstead.irccloud.com) (Ping timeout: 260 seconds)
14:18:10 × jakesyl_ quits (sid56879@hampstead.irccloud.com) (Ping timeout: 260 seconds)
14:18:16 × T_S_ quits (sid501726@uxbridge.irccloud.com) (Ping timeout: 268 seconds)
14:18:17 × idnar quits (sid12240@debian/mithrandi) (Ping timeout: 250 seconds)
14:18:17 × bradparker quits (sid262931@id-262931.uxbridge.irccloud.com) (Ping timeout: 250 seconds)
14:18:17 × gmc quits (sid58314@ilkley.irccloud.com) (Ping timeout: 250 seconds)
14:18:17 × alinab quits (sid468903@id-468903.helmsley.irccloud.com) (Ping timeout: 250 seconds)
14:18:17 × AndreasK__ quits (sid320732@uxbridge.irccloud.com) (Ping timeout: 250 seconds)
14:18:17 × mcfilib quits (sid302703@user/mcfilib) (Ping timeout: 250 seconds)
14:18:17 × mrianbloom quits (sid350277@id-350277.ilkley.irccloud.com) (Ping timeout: 250 seconds)
14:18:18 × hubvu quits (sid495858@user/hubvu) (Ping timeout: 250 seconds)
14:18:18 × carter quits (sid14827@id-14827.helmsley.irccloud.com) (Ping timeout: 250 seconds)
14:18:18 × integral quits (sid296274@user/integral) (Ping timeout: 250 seconds)
14:18:18 × NiKaN quits (sid385034@helmsley.irccloud.com) (Ping timeout: 250 seconds)
14:18:18 × JSharp quits (sid4580@lymington.irccloud.com) (Ping timeout: 250 seconds)
14:18:23 × aarchi quits (sid486183@2a03:5180:f:5::7:6b27) (Ping timeout: 264 seconds)
14:18:23 × Adeon quits (sid418992@2a03:5180:f:2::6:64b0) (Ping timeout: 264 seconds)
14:18:25 × grfn quits (sid449115@helmsley.irccloud.com) (Ping timeout: 256 seconds)
14:18:25 × iphy quits (sid67735@lymington.irccloud.com) (Ping timeout: 256 seconds)
14:18:25 × Firedancer quits (sid336191@hampstead.irccloud.com) (Ping timeout: 256 seconds)
14:18:25 × tapas quits (sid467876@ilkley.irccloud.com) (Ping timeout: 256 seconds)
14:18:26 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:c075:f6f7:f2c7:7314) (Ping timeout: 245 seconds)
14:18:28 hippoid joins (~hippoid@c-98-220-13-8.hsd1.il.comcast.net)
14:18:32 × stevenxl quits (sid133530@2a03:5180:f:5::2:99a) (Ping timeout: 240 seconds)
14:18:32 × angerman quits (sid209936@2a03:5180:f:3::3:3410) (Ping timeout: 240 seconds)
14:18:32 × gaze___ quits (sid387101@2a03:5180:f:1::5:e81d) (Ping timeout: 240 seconds)
14:18:32 × elvishjerricco quits (sid237756@2a03:5180:f:1::3:a0bc) (Ping timeout: 240 seconds)
14:18:32 × hook54321 quits (sid149355@user/hook54321) (Ping timeout: 240 seconds)
14:18:32 × SrPx quits (sid108780@id-108780.uxbridge.irccloud.com) (Ping timeout: 240 seconds)
14:18:32 × pjlsergeant quits (sid143467@id-143467.hampstead.irccloud.com) (Ping timeout: 240 seconds)
14:18:32 × acertain_ quits (sid470584@id-470584.hampstead.irccloud.com) (Ping timeout: 240 seconds)
14:18:38 × astra` quits (sid289983@user/amish) (Ping timeout: 260 seconds)
14:18:38 × hongminhee quits (sid295@tinside.irccloud.com) (Ping timeout: 260 seconds)
14:18:38 × obviyus quits (sid415299@user/obviyus) (Ping timeout: 260 seconds)
14:18:43 × taktoa[c] quits (sid282096@id-282096.tinside.irccloud.com) (Ping timeout: 250 seconds)
14:18:43 × edmundnoble quits (sid229620@id-229620.helmsley.irccloud.com) (Ping timeout: 250 seconds)
14:18:53 × christiaanb quits (sid84827@lymington.irccloud.com) (Ping timeout: 268 seconds)
14:18:59 × sclv quits (sid39734@haskell/developer/sclv) (Ping timeout: 264 seconds)
14:18:59 × conjunctive quits (sid433686@id-433686.helmsley.irccloud.com) (Ping timeout: 264 seconds)
14:18:59 × cbarrett quits (sid192934@2a03:5180:f:1::2:f1a6) (Ping timeout: 264 seconds)
14:18:59 × meinside quits (uid24933@2a03:5180:f:1::6165) (Ping timeout: 264 seconds)
14:18:59 × agander_m quits (sid407952@2a03:5180:f::6:3990) (Ping timeout: 264 seconds)
14:19:02 × saolsen quits (sid26430@id-26430.lymington.irccloud.com) (Ping timeout: 240 seconds)
14:19:02 × the_finn quits (uid526334@id-526334.hampstead.irccloud.com) (Ping timeout: 240 seconds)
14:19:02 × philpax_ quits (sid516926@2a03:5180:f:2::7:e33e) (Ping timeout: 240 seconds)
14:19:02 × nrr__ quits (sid20938@2a03:5180:f:2::51ca) (Ping timeout: 240 seconds)
14:19:09 × tritlo quits (sid58727@user/tritlo) (Ping timeout: 250 seconds)
14:19:09 × pepeiborra quits (sid443799@id-443799.ilkley.irccloud.com) (Ping timeout: 250 seconds)
14:19:09 × NemesisD quits (sid24071@id-24071.lymington.irccloud.com) (Ping timeout: 250 seconds)
14:19:17 × sprout quits (~quassel@2a02:a467:ccd6:1:5c59:2f73:735:a325) (Ping timeout: 264 seconds)
14:19:30 × lightandlight quits (sid135476@id-135476.helmsley.irccloud.com) (Ping timeout: 268 seconds)
14:19:32 × amir quits (sid22336@user/amir) (Ping timeout: 240 seconds)
14:19:32 × ehamberg quits (sid18208@2a03:5180:f:4::4720) (Ping timeout: 240 seconds)
14:19:32 × hendi quits (sid489601@id-489601.lymington.irccloud.com) (Ping timeout: 240 seconds)
14:19:35 × enemeth79 quits (sid309041@2a03:5180:f:2::4:b731) (Ping timeout: 264 seconds)
14:19:35 × kaychaks__ quits (sid236345@2a03:5180:f:1::3:9b39) (Ping timeout: 264 seconds)
14:19:35 × etrepum quits (sid763@2a03:5180:f:5::2fb) (Ping timeout: 264 seconds)
14:19:35 × mustafa quits (sid502723@rockylinux/releng/mustafa) (Ping timeout: 264 seconds)
14:19:35 × sa1_ quits (sid7690@2a03:5180:f:3::1e0a) (Ping timeout: 264 seconds)
14:19:35 × jonrh quits (sid5185@2a03:5180:f:3::1441) (Ping timeout: 264 seconds)
14:19:35 × gregberns__ quits (sid315709@2a03:5180:f:1::4:d13d) (Ping timeout: 264 seconds)
14:19:35 × truckasaurus quits (sid457088@2a03:5180:f:1::6:f980) (Ping timeout: 264 seconds)
14:19:35 × supersven quits (sid501114@2a03:5180:f:3::7:a57a) (Ping timeout: 264 seconds)
14:19:35 × typetetris quits (sid275937@2a03:5180:f::4:35e1) (Ping timeout: 264 seconds)
14:19:35 × SethTisue__ quits (sid14912@2a03:5180:f:3::3a40) (Ping timeout: 264 seconds)
14:19:35 × Pent quits (sid313808@2a03:5180:f:2::4:c9d0) (Ping timeout: 264 seconds)
14:19:35 × parseval quits (sid239098@id-239098.helmsley.irccloud.com) (Ping timeout: 250 seconds)
14:19:35 × glowcoil quits (sid3405@id-3405.tinside.irccloud.com) (Ping timeout: 250 seconds)
14:19:36 [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470)
14:20:37 <hippoid> is there a way to search the archives of this channel by username?
14:21:13 <[exa]> hippoid: actually tomsmeding was wondering about adding some such functionality a few days ago :D
14:21:23 × gg quits (~gg@2a01:e0a:819:1510:e434:efd5:edf7:7caa) (Ping timeout: 264 seconds)
14:21:38 × __monty__ quits (~toonn@user/toonn) (Quit: leaving)
14:22:06 bradparker joins (sid262931@uxbridge.irccloud.com)
14:22:07 pepeiborra joins (sid443799@ilkley.irccloud.com)
14:22:07 supersven joins (sid501114@ilkley.irccloud.com)
14:22:09 grfn joins (sid449115@helmsley.irccloud.com)
14:22:09 davetapley joins (sid666@uxbridge.irccloud.com)
14:22:09 Firedancer joins (sid336191@hampstead.irccloud.com)
14:22:12 <hippoid> [exa]: i'd use that! I can see there's an archive, but no easy way to search it
14:22:13 S11001001 joins (sid42510@ilkley.irccloud.com)
14:22:15 teehemkay joins (sid14792@lymington.irccloud.com)
14:22:16 conjunctive joins (sid433686@helmsley.irccloud.com)
14:22:18 alinab joins (sid468903@helmsley.irccloud.com)
14:22:20 integral joins (sid296274@user/integral)
14:22:20 edmundnoble joins (sid229620@helmsley.irccloud.com)
14:22:20 kristjansson_ joins (sid126207@tinside.irccloud.com)
14:22:21 dpratt__ joins (sid193493@helmsley.irccloud.com)
14:22:24 caasih joins (sid13241@ilkley.irccloud.com)
14:22:25 alanz joins (sid110616@uxbridge.irccloud.com)
14:22:26 jackdk joins (sid373013@cssa/jackdk)
14:22:29 AndreasK__ joins (sid320732@uxbridge.irccloud.com)
14:22:30 typetetris joins (sid275937@tinside.irccloud.com)
14:22:31 PotatoGim joins (sid99505@lymington.irccloud.com)
14:22:31 bbhoss joins (sid18216@tinside.irccloud.com)
14:22:37 truckasaurus joins (sid457088@helmsley.irccloud.com)
14:22:45 kaychaks__ joins (sid236345@helmsley.irccloud.com)
14:22:47 nrr__ joins (sid20938@lymington.irccloud.com)
14:22:53 × v01d4lph4 quits (~v01d4lph4@user/v01d4lph4) (Ping timeout: 264 seconds)
14:22:58 Adeon joins (sid418992@lymington.irccloud.com)
14:23:01 SanchayanMaity joins (sid478177@hampstead.irccloud.com)
14:23:02 astra` joins (sid289983@user/amish)
14:23:02 rtpg joins (sid443069@ilkley.irccloud.com)
14:23:03 amir joins (sid22336@user/amir)
14:23:06 degraafk joins (sid71464@lymington.irccloud.com)
14:23:14 cbarrett joins (sid192934@helmsley.irccloud.com)
14:23:14 vito joins (sid1962@user/vito)
14:23:14 glowcoil joins (sid3405@tinside.irccloud.com)
14:23:15 christiaanb joins (sid84827@lymington.irccloud.com)
14:23:16 rubin55 joins (sid175221@hampstead.irccloud.com)
14:23:18 b20n joins (sid115913@uxbridge.irccloud.com)
14:23:19 aristid joins (sid1599@uxbridge.irccloud.com)
14:23:19 hamishmack joins (sid389057@hampstead.irccloud.com)
14:23:20 stevenxl joins (sid133530@uxbridge.irccloud.com)
14:23:21 max22- joins (~maxime@2a01cb08833598008a48d8a24ae7f102.ipv6.abo.wanadoo.fr)
14:23:21 idnar joins (sid12240@debian/mithrandi)
14:23:24 scav joins (sid309693@helmsley.irccloud.com)
14:23:25 xkuru joins (~xkuru@user/xkuru)
14:23:30 gaze___ joins (sid387101@helmsley.irccloud.com)
14:23:34 ysh joins (sid6017@ilkley.irccloud.com)
14:23:34 mrianbloom joins (sid350277@ilkley.irccloud.com)
14:23:36 tnks joins (sid412124@helmsley.irccloud.com)
14:23:37 rune joins (sid21167@ilkley.irccloud.com)
14:23:40 jakesyl_ joins (sid56879@hampstead.irccloud.com)
14:23:45 edwardk joins (sid47016@haskell/developer/edwardk)
14:23:46 jonrh joins (sid5185@ilkley.irccloud.com)
14:23:49 acertain_ joins (sid470584@hampstead.irccloud.com)
14:23:52 sa1_ joins (sid7690@ilkley.irccloud.com)
14:23:52 Boarders_ joins (sid425905@lymington.irccloud.com)
14:23:54 kaizen joins (sid501599@helmsley.irccloud.com)
14:23:56 mcfilib joins (sid302703@user/mcfilib)
14:23:59 lightandlight joins (sid135476@helmsley.irccloud.com)
14:24:04 sclv joins (sid39734@haskell/developer/sclv)
14:24:07 SethTisue__ joins (sid14912@ilkley.irccloud.com)
14:24:10 ehamberg joins (sid18208@hampstead.irccloud.com)
14:24:10 jmct_ joins (sid160793@tinside.irccloud.com)
14:24:11 dmj` joins (sid72307@hampstead.irccloud.com)
14:24:14 NiKaN joins (sid385034@helmsley.irccloud.com)
14:24:23 NemesisD joins (sid24071@lymington.irccloud.com)
14:24:24 hubvu joins (sid495858@user/hubvu)
14:24:30 mustafa joins (sid502723@rockylinux/releng/mustafa)
14:24:32 _0x47 joins (sid508683@tinside.irccloud.com)
14:24:32 ProofTechnique joins (sid79547@ilkley.irccloud.com)
14:24:43 awpr joins (uid446117@lymington.irccloud.com)
14:24:45 gonz____ joins (sid304396@lymington.irccloud.com)
14:24:48 T_S_ joins (sid501726@uxbridge.irccloud.com)
14:24:54 systemfault joins (sid267009@uxbridge.irccloud.com)
14:24:58 dsal joins (sid13060@lymington.irccloud.com)
14:25:01 aria joins (sid380617@lymington.irccloud.com)
14:26:29 teehemkay_ joins (sid14792@lymington.irccloud.com)
14:28:12 <geekosaur> the code has most of the UI side of it already, but is missing the backend functionality (sphinx iirc) to do the actual search
14:28:13 × geekosaur quits (~geekosaur@xmonad/geekosaur) (Remote host closed the connection)
14:29:37 × jollygood2 quits (~bc8165b6@217.29.117.252) (Quit: http://www.okay.uz/ (Ping timeout))
14:29:52 geekosaur joins (~geekosaur@xmonad/geekosaur)
14:30:54 × m1dnight quits (~christoph@xvm-104-119.dc0.ghst.net) (Quit: WeeChat 3.1)
14:31:13 whez joins (sid470288@lymington.irccloud.com)
14:31:36 gg joins (~gg@2a01:e0a:819:1510:4c29:c873:f42e:2b2)
14:32:18 m1dnight joins (~christoph@christophe.dev)
14:32:22 peight joins (~peight@198.35.131.77.rev.sfr.net)
14:32:29 sprout joins (~quassel@2a02:a467:ccd6:1:5c59:2f73:735:a325)
14:33:31 philpax_ joins (sid516926@lymington.irccloud.com)
14:33:51 tritlo joins (sid58727@user/tritlo)
14:34:17 the_finn joins (uid526334@hampstead.irccloud.com)
14:34:18 joel135 joins (sid136450@hampstead.irccloud.com)
14:34:22 agander_m joins (sid407952@tinside.irccloud.com)
14:34:33 gmc joins (sid58314@ilkley.irccloud.com)
14:34:33 sa joins (sid1055@tinside.irccloud.com)
14:34:36 pjlsergeant joins (sid143467@hampstead.irccloud.com)
14:34:45 meinside joins (uid24933@helmsley.irccloud.com)
14:34:52 iphy joins (sid67735@lymington.irccloud.com)
14:35:27 <int-e> ddb: yeah after "cabal update; cabal v1-install lambdabot" in a clean user directory, `lambdabot` works for me. this is a Debian system but I don't see why it would matter?
14:36:19 cln joins (sid336875@ilkley.irccloud.com)
14:36:37 <int-e> ddb: and "works for me" includes simple evaluations like "> product [1..5]" or "> S.fromList [3,1,4,1,5,9,2]"
14:36:45 <tomsmeding> hippoid: eternally busy, but I have to proctor at a 3 hour exam this evening, so we'll see what happens :p
14:36:46 <geekosaur> something about what gets installed with v2-install being symlinks, is what I ran into
14:36:55 × sprout quits (~quassel@2a02:a467:ccd6:1:5c59:2f73:735:a325) (Ping timeout: 250 seconds)
14:37:15 × cfricke quits (~cfricke@user/cfricke) (Quit: WeeChat 3.3)
14:37:25 hook54321 joins (sid149355@user/hook54321)
14:37:26 <geekosaur> I had to mess with my dotfile stuff to make it all work with v2-install
14:37:52 <geekosaur> not that I run lambdabot any more, but it also affected things like pandoc, hledger, and xmonad
14:40:19 <hippoid> tomsmeding: it'll be used right away. I ask questions here and then have to go back and find the answers when I have more time to think about them.
14:41:00 <geekosaur> fwiw I track stuff in utc and mark when I ask stuff, so it's easier to search logs
14:41:08 <int-e> ddb: One thing I can think of is that if you specify *any* package with --trust that disables the default list, so you need to specify all packages that need to be trusted. A minimal list for the default Pristine.hs is: lambdabot --trust=base --trust=random --trust=lambdabot-trusted
14:41:37 <geekosaur> (logs are in utc and I use a wrapper script to run my IRC client in utc. this of course won't work so well if you're using webchat, and may not work well if you're on matrix)
14:41:58 <hippoid> geekosaur: do you use irssi?
14:42:03 <geekosaur> hexchat
14:42:25 <geekosaur> but more or less the same wrapper script would work, I just shove TZ=TUC0 into the environment before running it
14:42:31 <geekosaur> er, TZ=UTC0
14:43:28 angerman joins (sid209936@ilkley.irccloud.com)
14:43:38 enemeth79 joins (sid309041@lymington.irccloud.com)
14:43:42 <geekosaur> int-e, might that be part of what's wrong with using v2-install? I would guess they mark lambdabot-trusted as trusted in the package database, but package databases are kinda weird in "nix-like" mode
14:43:55 × jurjen quits (~jurjen@83.232.63.97) (Ping timeout: 256 seconds)
14:44:07 sprout joins (~quassel@2a02:a467:ccd6:1:5c59:2f73:735:a325)
14:44:08 gregberns__ joins (sid315709@helmsley.irccloud.com)
14:44:22 elvishjerricco joins (sid237756@helmsley.irccloud.com)
14:44:26 hongminhee joins (sid295@tinside.irccloud.com)
14:44:27 bjs joins (sid190364@user/bjs)
14:44:33 <sprout> technically, you can break a lot more than only the type system with unsafePerformIO
14:44:36 etrepum joins (sid763@uxbridge.irccloud.com)
14:44:37 aarchi joins (sid486183@uxbridge.irccloud.com)
14:44:39 obviyus joins (sid415299@user/obviyus)
14:44:41 SrPx joins (sid108780@uxbridge.irccloud.com)
14:44:45 tapas joins (sid467876@ilkley.irccloud.com)
14:44:45 carter joins (sid14827@helmsley.irccloud.com)
14:44:51 bw joins (sid2730@user/betawaffle)
14:44:51 × hippoid quits (~hippoid@c-98-220-13-8.hsd1.il.comcast.net) (Quit: leaving)
14:44:54 <int-e> geekosaur: Do package environments (which I believe substitute the v1- model of installed libraries) even carry trust information?
14:44:57 ephemient joins (uid407513@lymington.irccloud.com)
14:44:58 Pent joins (sid313808@lymington.irccloud.com)
14:45:01 hendi joins (sid489601@lymington.irccloud.com)
14:45:10 JSharp joins (sid4580@lymington.irccloud.com)
14:45:34 <geekosaur> there is ghc-pkg trust <pkgid>
14:45:41 <int-e> geekosaur: though, trust shouldn't be relevant because lambdabot overrides it anyway. but package visibility may be an issue
14:45:57 <int-e> seeing ddb's precise error might yield some clues
14:47:11 hippoid joins (~idris@c-98-220-13-8.hsd1.il.comcast.net)
14:48:56 <geekosaur> and no, I don't think pkgenv carries trust information, which is part of why v1-install would avoid it, it's not just faking package databases with package environments
14:49:15 <geekosaur> v1-install still modifies package databases
14:50:38 × jgeerds quits (~jgeerds@55d41b94.access.ecotel.net) (Ping timeout: 246 seconds)
14:51:21 mimmy joins (~mimmy@72.142.88.18)
14:52:52 Sgeo joins (~Sgeo@user/sgeo)
14:53:05 × chomwitt quits (~chomwitt@2a02:587:dc0f:7c00:12c3:7bff:fe6d:d374) (Ping timeout: 246 seconds)
14:53:52 taktoa[c] joins (sid282096@tinside.irccloud.com)
14:54:03 saolsen joins (sid26430@lymington.irccloud.com)
14:54:41 parseval joins (sid239098@helmsley.irccloud.com)
14:55:17 × CiaoSen quits (~Jura@p200300c95730dd002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 264 seconds)
14:56:11 merijn joins (~merijn@sp10.openwifi.nl)
15:02:31 × robosexual quits (~spaceoyst@88.85.216.62) (Quit: Konversation terminated!)
15:03:02 × mark__ quits (~a@p200300ef973db1dc4086f0a6a24fc4dd.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
15:03:24 mark__ joins (~a@p200300ef973db1b24086f0a6a24fc4dd.dip0.t-ipconnect.de)
15:03:45 betelgeuse joins (~betelgeus@94-225-47-8.access.telenet.be)
15:04:49 <int-e> ah it appears that `hint` (and hence `mueval` and `lambdabot`) does pick up the default GHC environment, so with v2-install, cabal v2-install lambdabot hoogle misfortune mueval unlambda dice; cabal v2-install --lib lambdabot-trusted random mtl show seems to be sufficient to get things working...
15:05:47 × mimmy quits (~mimmy@72.142.88.18) (Ping timeout: 264 seconds)
15:05:57 × mjs2600 quits (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Ping timeout: 250 seconds)
15:09:29 <int-e> oh does the default environment override the package database? if so then that would explain quite a lot
15:10:08 <int-e> And I guess it does. "clear-package-db"
15:10:54 <int-e> So once you use v2-install at all, v1-install-ed libraries will no longer be picked up unless you set GHC_ENVIRONMENT=-
15:10:57 <int-e> ...eww...
15:14:10 × deadmarshal quits (~deadmarsh@95.38.228.177) (Ping timeout: 260 seconds)
15:14:50 <int-e> ddb: ^ I may have figured out what happened to your lambdabot installation attempt.
15:16:07 mjs2600 joins (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net)
15:17:44 mimmy joins (~mimmy@72.142.88.18)
15:19:01 waleee joins (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
15:20:55 chomwitt joins (~chomwitt@athedsl-32204.home.otenet.gr)
15:21:36 deadmarshal joins (~deadmarsh@95.38.228.177)
15:24:18 × Vajb quits (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer)
15:25:09 × waleee quits (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Quit: WeeChat 3.3)
15:26:32 waleee joins (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
15:27:35 × Guest42 quits (~Guest42@eth-west-pareq2-46-193-4-100.wb.wifirst.net) (Ping timeout: 256 seconds)
15:33:32 <geekosaur> mm, I wonder if that's actually true. it'd also lose base if it were
15:34:01 <geekosaur> so I think it only clears the virtual(?) package db used by the package environment
15:35:29 × Pickchea quits (~private@user/pickchea) (Ping timeout: 256 seconds)
15:35:29 × hippoid quits (~idris@c-98-220-13-8.hsd1.il.comcast.net) (Read error: Connection reset by peer)
15:56:31 × lortabac quits (~lortabac@2a01:e0a:541:b8f0:f0a8:ffae:2a2b:16fd) (Quit: WeeChat 2.8)
16:01:02 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds)
16:02:11 × merijn quits (~merijn@sp10.openwifi.nl) (Ping timeout: 264 seconds)
16:02:13 × APic quits (apic@apic.name) (Quit: [TLS] Client upgrade)
16:02:25 APic joins (apic@apic.name)
16:03:08 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
16:04:24 jgeerds joins (~jgeerds@55d41b94.access.ecotel.net)
16:09:20 wootehfoot joins (~wootehfoo@user/wootehfoot)
16:11:11 × boxscape_ quits (~boxscape_@134.171.69.87) (Ping timeout: 256 seconds)
16:12:26 frosch03 joins (~user@2a02:c98:1003:8000:b7c6:b991:b9e3:a54c)
16:14:14 <jlamothe> I'm in the process of writing a Gemini server framework (I'm aware of the gemini-server package). I'm using tcp-streams to handle the TLS stuff, but I needed a way to find out which client certificate (if any) is being used when a connection is opened. Is this approach reasonable, or the ugly hack I suspect it mogjt be? https://codeberg.org/jlamothe/gemserv/src/branch/master/src/Network/GemServ.hs#L181
16:14:59 <jlamothe> The relevent functions are listenLoop and adjustServwrParams
16:15:45 <jlamothe> might be* adjustServerParams*
16:15:51 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:c075:f6f7:f2c7:7314)
16:16:04 <jlamothe> IRC over SSH on mobile is fun.
16:16:17 shidima joins (~shidima@84-104-108-90.cable.dynamic.v4.ziggo.nl)
16:17:26 × acidjnk_new3 quits (~acidjnk@p200300d0c721b739c4928bd7ecc09c55.dip0.t-ipconnect.de) (Ping timeout: 246 seconds)
16:19:13 subdelusional joins (~user@188.249.169.186)
16:19:37 <subdelusional> hello, I have a list [1..10], how can I filter out all the even numbers from it? is there a function for that?
16:20:22 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:c075:f6f7:f2c7:7314) (Ping timeout: 268 seconds)
16:20:25 <jlamothe> subdelusional: Have you looked at the filter function from Data.List?
16:22:33 edro is now known as edr
16:27:05 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
16:28:09 Vajb joins (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi)
16:30:18 × neurocyte0132889 quits (~neurocyte@user/neurocyte) (Quit: The Lounge - https://thelounge.chat)
16:37:10 × wootehfoot quits (~wootehfoo@user/wootehfoot) (Quit: Leaving)
16:38:46 <subdelusional> jlamothe: thanks man I was looking for this
16:38:56 × mbuf quits (~Shakthi@223.184.52.200) (Quit: Leaving)
16:39:58 acidjnk_new3 joins (~acidjnk@p200300d0c721b739c4928bd7ecc09c55.dip0.t-ipconnect.de)
16:39:59 <c_wraith> jlamothe: that will obliterate any existing client certificate hook in params
16:40:12 <c_wraith> jlamothe: that might cause you problems down the line
16:40:21 <c_wraith> (probably not, but it could happen)
16:41:30 CiaoSen joins (~Jura@p5dcc1a24.dip0.t-ipconnect.de)
16:43:43 <c_wraith> Oh, nevermind. You did handle that, just in a different spot than I expected.
16:45:13 <c_wraith> though the `certhook chain` call should probably be moved out one level. It should really always happen if the hook is called.
16:46:02 <c_wraith> fwiw...
16:46:07 <c_wraith> :t print <> print
16:46:09 <lambdabot> Show a => a -> IO ()
16:46:48 <c_wraith> you don't need to call down the chain explicitly, you could just <> the handlers together
16:47:18 burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk)
16:48:28 ec joins (~ec@gateway/tor-sasl/ec)
16:53:13 shidima_ joins (~shidima@84-104-108-90.cable.dynamic.v4.ziggo.nl)
16:55:13 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
16:55:35 × shidima quits (~shidima@84-104-108-90.cable.dynamic.v4.ziggo.nl) (Ping timeout: 246 seconds)
16:56:51 alzgh joins (~alzgh@user/alzgh)
16:58:01 × [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer)
16:58:13 pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
16:59:38 × deadmarshal quits (~deadmarsh@95.38.228.177) (Ping timeout: 260 seconds)
16:59:51 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:c075:f6f7:f2c7:7314)
17:01:45 × subdelusional quits (~user@188.249.169.186) (Remote host closed the connection)
17:03:22 × rkrishnan quits (~user@122.167.19.65) (Ping timeout: 260 seconds)
17:03:25 <jlamothe> c_wraith: It does call tje original hook at the end.
17:04:43 <c_wraith> jlamothe: only if the chain is non-empty
17:09:58 jkachmar joins (~jkachmar@2001:470:69fc:105::c72d)
17:11:57 × frosch03 quits (~user@2a02:c98:1003:8000:b7c6:b991:b9e3:a54c) (Quit: ERC (IRC client for Emacs 27.2))
17:12:00 peight parts (~peight@198.35.131.77.rev.sfr.net) (Leaving)
17:12:23 × mjs2600 quits (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Ping timeout: 256 seconds)
17:13:53 whatsupdoc joins (uid509081@hampstead.irccloud.com)
17:14:39 × waleee quits (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 250 seconds)
17:15:05 waleee joins (~waleee@h-98-128-228-119.NA.cust.bahnhof.se)
17:16:31 × jkachmar quits (~jkachmar@2001:470:69fc:105::c72d) (Quit: Reconnecting)
17:16:45 jkachmar joins (~jkachmar@2001:470:69fc:105::c72d)
17:18:36 lbseale joins (~lbseale@user/ep1ctetus)
17:18:38 econo joins (uid147250@user/econo)
17:18:54 × alzgh quits (~alzgh@user/alzgh) (Remote host closed the connection)
17:19:14 alzgh joins (~alzgh@user/alzgh)
17:24:17 × bontaq quits (~user@ool-45779fe5.dyn.optonline.net) (Ping timeout: 256 seconds)
17:28:30 bontaq` joins (~user@ool-45779fe5.dyn.optonline.net)
17:28:42 bontaq` is now known as bontaq
17:30:05 lavaman joins (~lavaman@98.38.249.169)
17:32:10 neurocyte0132889 joins (~neurocyte@45.131.36.189)
17:32:10 × neurocyte0132889 quits (~neurocyte@45.131.36.189) (Changing host)
17:32:10 neurocyte0132889 joins (~neurocyte@user/neurocyte)
17:34:59 × lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 268 seconds)
17:36:16 deadmarshal joins (~deadmarsh@95.38.228.177)
17:37:53 × mimmy quits (~mimmy@72.142.88.18) (Ping timeout: 256 seconds)
17:41:05 × jgeerds quits (~jgeerds@55d41b94.access.ecotel.net) (Ping timeout: 250 seconds)
17:43:23 jespada joins (~jespada@148.252.129.184)
17:44:38 × jespada quits (~jespada@148.252.129.184) (Read error: Connection reset by peer)
17:45:17 × alzgh quits (~alzgh@user/alzgh) (Remote host closed the connection)
17:45:29 jespada joins (~jespada@181.80.79.251)
17:45:38 alzgh joins (~alzgh@user/alzgh)
17:48:02 × notzmv quits (~zmv@user/notzmv) (Ping timeout: 240 seconds)
17:48:23 × Teacup quits (~teacup@user/teacup) (Ping timeout: 264 seconds)
17:49:35 mimmy joins (~mimmy@72.142.88.18)
17:50:02 × jespada quits (~jespada@181.80.79.251) (Ping timeout: 260 seconds)
17:54:52 Teacup joins (~teacup@user/teacup)
17:57:45 yauhsien joins (~yauhsien@118-167-47-187.dynamic-ip.hinet.net)
17:59:59 × johnjay quits (~pi@192.142.100.50) (Ping timeout: 256 seconds)
18:02:17 × ec quits (~ec@gateway/tor-sasl/ec) (Remote host closed the connection)
18:02:43 ec joins (~ec@gateway/tor-sasl/ec)
18:02:44 × yauhsien quits (~yauhsien@118-167-47-187.dynamic-ip.hinet.net) (Ping timeout: 268 seconds)
18:05:12 mjs2600 joins (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net)
18:09:42 johnjay joins (~pi@192.142.100.50)
18:14:54 × shidima_ quits (~shidima@84-104-108-90.cable.dynamic.v4.ziggo.nl) (Remote host closed the connection)
18:15:12 shidima_ joins (~shidima@84-104-108-90.cable.dynamic.v4.ziggo.nl)
18:16:02 × Feuermagier quits (~Feuermagi@user/feuermagier) (Ping timeout: 240 seconds)
18:20:37 beka joins (~beka@104.193.170.240)
18:22:06 notzmv joins (~zmv@user/notzmv)
18:28:29 × beka quits (~beka@104.193.170.240) (Quit: Leaving)
18:31:21 × johnjay quits (~pi@192.142.100.50) (Ping timeout: 245 seconds)
18:31:46 gaff joins (~gaff@49.207.205.240)
18:31:53 × gaff quits (~gaff@49.207.205.240) (Client Quit)
18:31:55 × chele quits (~chele@user/chele) (Remote host closed the connection)
18:32:02 × dagi53949 quits (~dagit@2001:558:6025:38:6476:a063:d05a:44da) (Ping timeout: 268 seconds)
18:32:20 × lbseale quits (~lbseale@user/ep1ctetus) (Ping timeout: 268 seconds)
18:33:14 dagit joins (~dagit@2001:558:6025:38:6476:a063:d05a:44da)
18:33:23 × dagit quits (~dagit@2001:558:6025:38:6476:a063:d05a:44da) (Remote host closed the connection)
18:35:27 dagit joins (~dagit@2001:558:6025:38:6476:a063:d05a:44da)
18:37:23 × deadmarshal quits (~deadmarsh@95.38.228.177) (Ping timeout: 256 seconds)
18:38:11 desantra joins (~skykanin@user/skykanin)
18:38:20 zincy_ joins (~zincy@host86-181-60-139.range86-181.btcentralplus.com)
18:42:01 bitmapper joins (uid464869@lymington.irccloud.com)
18:47:06 × alzgh quits (~alzgh@user/alzgh) (Remote host closed the connection)
18:47:25 alzgh joins (~alzgh@user/alzgh)
18:48:09 johnjay joins (~pi@192.142.100.50)
18:49:37 × drownbes quits (~drownbes@200-149-20-81.sta.estpak.ee) (Ping timeout: 268 seconds)
18:51:08 drownbes joins (~drownbes@200-149-20-81.sta.estpak.ee)
18:51:34 tfeb joins (~tfb@88.98.95.237)
18:53:49 × CiaoSen quits (~Jura@p5dcc1a24.dip0.t-ipconnect.de) (Ping timeout: 256 seconds)
18:59:16 × johnjay quits (~pi@192.142.100.50) (Remote host closed the connection)
19:03:51 lavaman joins (~lavaman@98.38.249.169)
19:06:12 × tfeb quits (~tfb@88.98.95.237) (Quit: died)
19:06:42 × zincy_ quits (~zincy@host86-181-60-139.range86-181.btcentralplus.com) (Remote host closed the connection)
19:07:59 tzh joins (~tzh@c-24-21-73-154.hsd1.or.comcast.net)
19:16:47 × ec quits (~ec@gateway/tor-sasl/ec) (Remote host closed the connection)
19:20:32 zincy_ joins (~zincy@host86-181-60-139.range86-181.btcentralplus.com)
19:23:14 × shidima_ quits (~shidima@84-104-108-90.cable.dynamic.v4.ziggo.nl) (Remote host closed the connection)
19:23:19 shidima__ joins (~shidima@84-104-108-90.cable.dynamic.v4.ziggo.nl)
19:29:41 ec joins (~ec@gateway/tor-sasl/ec)
19:31:21 × img quits (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in)
19:32:11 yin is now known as zzz
19:32:44 img joins (~img@user/img)
19:36:13 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:c075:f6f7:f2c7:7314) (Remote host closed the connection)
19:36:28 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:c075:f6f7:f2c7:7314)
19:41:25 × danso quits (~danso@23-233-111-52.cpe.pppoe.ca) (Quit: WeeChat 3.3)
19:45:23 aliosablack joins (~chomwitt@2a02:587:dc0f:7c00:12c3:7bff:fe6d:d374)
19:45:50 v01d4lph4 joins (~v01d4lph4@user/v01d4lph4)
19:45:50 × chomwitt quits (~chomwitt@athedsl-32204.home.otenet.gr) (Read error: Connection reset by peer)
19:46:05 johnny_sitar joins (~artur@078088015209.bialystok.vectranet.pl)
19:51:03 <koz> I'm trying to write a newtype wrapper for lists, whose goal is to define an Arbitrary instance generating lists whose size is no more than some constant n.
19:51:08 <koz> How would I write this in a sensible way?
19:51:10 fendor joins (~fendor@77.119.192.182.wireless.dyn.drei.com)
19:55:38 × burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Remote host closed the connection)
19:55:38 × jle` quits (~jle`@cpe-23-240-75-236.socal.res.rr.com) (Read error: Connection reset by peer)
19:57:02 <tomsmeding> koz: is that constant actually compile-time constant?
19:57:50 <tomsmeding> newtype ConstSizeList a = ConstSizeList [a] ; instance Arbitrary a => Arbitrary (ConstSizeList a) where arbitrary = ConstSizeList <$> replicateM n arbitrary
19:57:55 <tomsmeding> from Control.Monad
19:58:29 <koz> tomsmeding: That's _already_ wrong, because it ignores the size parameter.
19:58:44 <koz> Also, this will _always_ give lists of length n, whereas I need _up to_ n.
19:58:47 <tomsmeding> ah
19:58:54 <koz> There's a reason why I'm asking: QuickCheck is a delicate beast.
19:59:03 wootehfoot joins (~wootehfoo@user/wootehfoot)
19:59:05 × alzgh quits (~alzgh@user/alzgh) (Remote host closed the connection)
19:59:13 <koz> I'll try cribbing off the list instance maybe.
19:59:15 alzgh joins (~alzgh@user/alzgh)
19:59:27 <tomsmeding> does it ignore the size parameter though?
19:59:34 <tomsmeding> I concede it always generates size n
20:00:08 <tomsmeding> but the elements will inherit the size parameter
20:00:09 <koz> Yes, it _must_ ignore it.
20:00:18 <koz> Because the size _must_ affect the length too, and here it won't.
20:00:29 <koz> Simply-put, if it were that simple, I wouldn't be asking.
20:00:32 <hpc> you can probably use an arbitrary Int (constrained appropriately) for the list length
20:00:40 <koz> I guess that _might_ work.
20:00:48 <koz> Again, I'll crib off the [] instance.
20:00:54 <koz> Since it has to determine length _somehow_.
20:01:15 <koz> Yep, it does exactly what hpc says.
20:01:24 × ec quits (~ec@gateway/tor-sasl/ec) (Remote host closed the connection)
20:01:28 <koz> It uses the size directly to determine length, then fills it.
20:01:29 jle` joins (~jle`@2603-8001-3b02-84d4-0000-0000-0000-025d.res6.spectrum.com)
20:01:29 × wootehfoot quits (~wootehfoo@user/wootehfoot) (Remote host closed the connection)
20:01:37 <koz> So for a capped size, I guess scaling?
20:01:48 ec joins (~ec@gateway/tor-sasl/ec)
20:01:52 <koz> I could do like, max size n I guess.
20:02:00 <koz> So large sizes just always produce bigger lists.
20:02:04 <koz> That's simpler.
20:02:15 <koz> (this is how listOf1 works)
20:02:30 × zincy_ quits (~zincy@host86-181-60-139.range86-181.btcentralplus.com) (Remote host closed the connection)
20:03:50 kenran joins (~kenran@200116b82b539f00f3f309ebb0e24d35.dip.versatel-1u1.de)
20:04:16 × lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 245 seconds)
20:05:13 × juhp quits (~juhp@128.106.188.220) (Ping timeout: 256 seconds)
20:05:26 zincy_ joins (~zincy@2a00:23c8:970c:4801:350f:7ee:191a:6f65)
20:07:21 <dsal> You just feed `choose (1,n)` into `listOf`
20:08:13 <koz> dsal: Yeah, I figured that out now. Thanks.
20:08:30 juhp joins (~juhp@128.106.188.220)
20:09:47 × DNH quits (~DNH@8.44.0.72) (Quit: My MacBook has gone to sleep. ZZZzzz…)
20:09:57 × zincy_ quits (~zincy@2a00:23c8:970c:4801:350f:7ee:191a:6f65) (Remote host closed the connection)
20:10:32 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
20:11:32 DNH joins (~DNH@8.44.0.72)
20:11:45 × gg quits (~gg@2a01:e0a:819:1510:4c29:c873:f42e:2b2) (Remote host closed the connection)
20:13:28 × johnny_sitar quits (~artur@078088015209.bialystok.vectranet.pl) (Read error: Connection reset by peer)
20:14:22 zincy_ joins (~zincy@2a00:23c8:970c:4801:350f:7ee:191a:6f65)
20:15:19 johnny_sitar joins (~artur@078088015209.bialystok.vectranet.pl)
20:15:19 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
20:16:07 _ht joins (~quassel@82-169-194-8.biz.kpn.net)
20:16:16 burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk)
20:19:36 × johnny_sitar quits (~artur@078088015209.bialystok.vectranet.pl) (Read error: Connection reset by peer)
20:20:28 × teddyc quits (theodorc@cassarossa.samfundet.no) (Ping timeout: 260 seconds)
20:20:36 johnny_sitar joins (~artur@078088015209.bialystok.vectranet.pl)
20:22:02 × desantra quits (~skykanin@user/skykanin) (Quit: WeeChat 3.3)
20:22:14 Topsi1 joins (~Tobias@2001:638:708:1a::3f)
20:22:45 Topsi2 joins (~Tobias@dyndsl-091-249-082-100.ewe-ip-backbone.de)
20:22:45 × Topsi1 quits (~Tobias@2001:638:708:1a::3f) (Read error: Connection reset by peer)
20:22:51 yauhsien joins (~yauhsien@118-167-47-187.dynamic-ip.hinet.net)
20:23:34 × Topsi quits (~Tobias@dyndsl-091-249-082-100.ewe-ip-backbone.de) (Ping timeout: 260 seconds)
20:24:19 <mark__> The core dump of "x :: Num a => Maybe a; x = Just 42" looks like this: "x = \ @ a_aaUF $dNum_aaUH -> Just (fromInteger $dNum_aaUH 42)". Why is there an additional argument befor ethe dictionary. It's not even used in the body?
20:24:31 desantra joins (~skykanin@user/skykanin)
20:24:53 × ozzymcduff quits (~mathieu@81-234-151-21-no94.tbcn.telia.com) (Remote host closed the connection)
20:24:56 <tomjaguarpaw> That's a type argument
20:25:22 <mark__> So the $dNum has to match the type arg?
20:25:34 <tomjaguarpaw> Yes, I'm not sure why it doesn't appear there
20:25:50 <tomjaguarpaw> But apparently it doesn't
20:26:06 <tomjaguarpaw> If you can see where $dNum_aaUH is created then maybe a_aaUF features there
20:26:14 <tomjaguarpaw> Oh, no because it's bound right there
20:26:24 <tomsmeding> % :set -fprint-explicit-foralls
20:26:24 <yahb> tomsmeding:
20:26:24 <mark__> Yes this is the binding site.
20:26:26 <tomjaguarpaw> Yeah I'm not sure exactly how that all fits together.
20:26:27 <tomsmeding> % f :: Num a => Maybe a ; f = Just 42
20:26:27 <yahb> tomsmeding:
20:26:29 <tomsmeding> % :t f
20:26:29 <yahb> tomsmeding: forall {a}. Num a => Maybe a
20:27:08 <tomsmeding> note that that first argument, a_aaUF, is tagged with a @
20:27:11 × yauhsien quits (~yauhsien@118-167-47-187.dynamic-ip.hinet.net) (Ping timeout: 245 seconds)
20:27:30 <tomsmeding> I don't know for sure, but I would be surprised if that doesn't mean "this is a type argument" a la TypeApplications
20:28:18 <geekosaur> I believe it does, and that's in fact where TypeApplications syntax came from
20:28:21 <mark__> Like a capital lambda?
20:28:29 <monochrom> I bet you suppressed type annotations in the dump.
20:28:34 <tomsmeding> $dNum_aaUH isn't a polymorphic thing, right? it's a dictionary for this one particular type
20:28:47 <tomsmeding> so there's no forall in its type, so no reason to apply anything to a_aaUF
20:28:52 <mark__> monochrom: Yes I did suppress all.
20:28:55 ozzymcduff joins (~mathieu@81-234-151-21-no94.tbcn.telia.com)
20:28:56 <monochrom> Because the full version is x = \ (@ a_aAT) ($dNum_aAV :: Num a_aAT) -> GHC.Maybe.Just @ a_aAT (fromInteger @ a_aAT $dNum_aAV N.x1)
20:29:08 <monochrom> See how a_aAT is all over the place.
20:29:09 <tomjaguarpaw> Ah that makes more sense
20:29:12 <tomsmeding> heh
20:29:38 <mark__> I thought it would be more readable but then it doesn't tell the whole story.
20:29:41 <tomsmeding> my remark about $dNum not needing the type argument is still valid though *phew*
20:30:00 <monochrom> Also, clearly, the type argument is useless except in type annotations. See also System F.
20:31:21 <tomjaguarpaw> c
20:31:38 jgeerds joins (~jgeerds@55d41b94.access.ecotel.net)
20:32:48 <maerwald> what do you think about a GHC plugin that applies a function with flipped argument when you write it backwards, such as `pamf`
20:33:12 <tomjaguarpaw> I think it would be taerg
20:33:20 <geekosaur> sounds like a type fest waiting to happen
20:33:26 <geekosaur> *typo fest
20:33:47 <maerwald> of course you rais ambiguity errors when the same thing is in scope
20:33:57 <maerwald> although silently shadowing could be fun
20:34:04 <monochrom> Let's take it one step further.
20:34:21 deadmarshal joins (~deadmarsh@95.38.228.177)
20:34:23 <tomsmeding> what about (>>)
20:34:31 <monochrom> Suppose I have "abcd :: A -> B -> C -> D -> Z".
20:34:32 <geekosaur> it already is
20:34:53 <monochrom> Then acbd :: A -> C -> B -> D -> Z.
20:35:45 <maerwald> That migh work if camelcase is an index for the type position
20:35:50 <tomsmeding> unclear what to do with famp though
20:36:24 × shidima__ quits (~shidima@84-104-108-90.cable.dynamic.v4.ziggo.nl) (Remote host closed the connection)
20:36:39 × zincy_ quits (~zincy@2a00:23c8:970c:4801:350f:7ee:191a:6f65) (Remote host closed the connection)
20:36:51 <maerwald> soGreatIsThat :: A -> B -> C -> D
20:36:51 <tomsmeding> alternative: `fmap` is the normal thing, ´fmap´ is the flipped version
20:36:58 <maerwald> thatIsSoGreat :: D -> C -> A -> B
20:37:18 <tomsmeding> (U+00B4 ACUTE ACCENT)
20:39:28 <koz> If I have a type Foo a which is a wrapper around [a] ensuring a limit on the length of [a], can I derive its Function instance via the underlying [a], or will this cause trouble>
20:39:31 <koz> ?*
20:39:31 <lambdabot> Maybe you meant: v @ ? .
20:39:32 zincy_ joins (~zincy@2a00:23c8:970c:4801:350f:7ee:191a:6f65)
20:39:42 <koz> By which I mean this Function here: https://hackage.haskell.org/package/QuickCheck-2.14.2/docs/Test-QuickCheck-Function.html
20:40:00 <monochrom> Function? Functor?
20:40:14 <koz> monochrom: See my link - it's a QuickCheck thing.
20:40:28 <koz> I've read the paper about Function and how it works and don't have a good answer to this question.
20:41:09 × DNH quits (~DNH@8.44.0.72) (Quit: My MacBook has gone to sleep. ZZZzzz…)
20:43:46 × v01d4lph4 quits (~v01d4lph4@user/v01d4lph4) (Read error: Connection reset by peer)
20:43:47 <tomsmeding> not sure, but this is public API: https://hackage.haskell.org/package/QuickCheck-2.14/docs/Test-QuickCheck-Function.html#v:functionMap
20:44:02 shidima joins (~shidima@84-104-108-90.cable.dynamic.v4.ziggo.nl)
20:44:02 × aliosablack quits (~chomwitt@2a02:587:dc0f:7c00:12c3:7bff:fe6d:d374) (Read error: Connection reset by peer)
20:44:14 <tomsmeding> though that doesn't answer the question because what to put in the [a] -> Foo a thing
20:44:21 <koz> That's exactly my issue.
20:44:33 <koz> I _can_ crib a translation; I have no idea if it makes any sense or not.
20:48:05 Pickchea joins (~private@user/pickchea)
20:49:15 <koz> I think they all project into Either, and then use that to label the different kinds of case, but I'm not sure how this works in my case.
20:49:31 <koz> Bool and Ordering both do this, and what I have can be thought of as a (very large) sum.
20:50:12 <tomsmeding> hm, that should be valid: it _is_ a very large sum, after all
20:50:26 <koz> Yeah, the big question is _how_ to do this projection.
20:50:49 × mc47 quits (~mc47@xmonad/TheMC47) (Remote host closed the connection)
20:51:59 <tomsmeding> if you know how to deal with large sums up to n long, then you can deal with large sums up to n+1 long with a single Either
20:52:05 <tomsmeding> that's also what the [] instance seems to do
20:52:28 DNH joins (~DNH@8.43.122.53)
20:52:36 <koz> Well, the smallest is where the limit is 0, since the only valid value is [].
20:52:47 <koz> I'm not sure how to phrase the recursion properly here.
20:52:58 × burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Remote host closed the connection)
20:53:21 <tomsmeding> you can deal with sums up to 0 long by mapping into the type (), right?
20:53:27 <koz> Yes.
20:53:38 <koz> I get the idea - I'm not sure how to spell it.
20:53:40 <tomsmeding> ah, but the length is not a type index
20:53:44 <koz> Correct.
20:53:45 <tomsmeding> if it was, this could work
20:53:52 <koz> I mean, I actually _can_ have a type index.
20:53:58 <koz> So it'd be Foo n a.
20:54:13 <koz> So then I write 'Function (Foo 0 a)', and then the recursive step?
20:54:25 <koz> OK, thanks, that did it!
20:54:34 <tomsmeding> if you have a type index, then 'instance Function (Foo 0 a) where function = functionMap (\(Foo []) -> ()) (\() -> Foo [])'
20:54:49 <tomsmeding> and yeah, what you just figured out probably :p
20:55:02 sprout_ joins (~quassel@2a02:a467:ccd6:1:9825:20f3:f69:55d5)
20:55:23 <koz> Then you have (Function (Foo n a)) => Function (Foo (n + 1) a)
20:55:33 <koz> (or 1 + n I guess.
20:55:34 <koz> )
20:55:38 <tomsmeding> I wonder whether the fact that this works with the (phantom) type index, implies that it would also work without the type index
20:55:54 <koz> Probably.
20:55:58 <tomsmeding> i.e. the stupid thing where you error on getting a Right in the second function for []
20:55:58 <koz> It's just much more partial I think.
20:56:22 <tomsmeding> but this is better!
20:57:12 <tomsmeding> or hm, perhaps not, because the point of Function is that everything is made inspectable; so who knows whether some logic sees "hey I can Either here, so let's put a Right in it!"
20:58:29 × sprout quits (~quassel@2a02:a467:ccd6:1:5c59:2f73:735:a325) (Ping timeout: 268 seconds)
21:05:45 × _ht quits (~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection)
21:08:58 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
21:09:03 unit73e joins (~emanuel@2001:818:e8dd:7c00:32b5:c2ff:fe6b:5291)
21:11:50 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
21:13:54 × neurocyte0132889 quits (~neurocyte@user/neurocyte) (Ping timeout: 268 seconds)
21:26:49 × shidima quits (~shidima@84-104-108-90.cable.dynamic.v4.ziggo.nl) (Ping timeout: 256 seconds)
21:26:51 fresheyeball joins (~fresheyeb@c-76-25-93-164.hsd1.co.comcast.net)
21:30:38 burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk)
21:34:09 aegon joins (~mike@174.127.249.180)
21:36:18 zebrag joins (~chris@user/zebrag)
21:36:43 × burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 268 seconds)
21:37:18 michalz joins (~michalz@185.246.204.37)
21:37:42 × michalz quits (~michalz@185.246.204.37) (Remote host closed the connection)
21:38:02 michalz joins (~michalz@185.246.204.62)
21:40:46 zer0bitz_ joins (~zer0bitz@2001:2003:f6e3:7400:d4e2:b355:67fe:933c)
21:41:27 mestre joins (~mestre@191.177.175.57)
21:43:17 Tuplanolla joins (~Tuplanoll@91-159-69-50.elisa-laajakaista.fi)
21:43:30 × zer0bitz quits (~zer0bitz@2001:2003:f6e3:7400:9c57:4715:1ac5:a700) (Ping timeout: 268 seconds)
21:45:04 × aplainzetakind quits (~johndoe@captainludd.powered.by.lunarbnc.net) (Quit: Free ZNC ~ Powered by LunarBNC: https://LunarBNC.net)
21:45:19 aplainzetakind joins (~johndoe@captainludd.powered.by.lunarbnc.net)
21:45:40 × gehmehgeh quits (~user@user/gehmehgeh) (Quit: Leaving)
21:48:30 jkaye joins (~jkaye@2601:281:8300:7530:abba:ebaf:fffa:714f)
21:52:29 × michalz quits (~michalz@185.246.204.62) (Remote host closed the connection)
21:53:31 × kenran quits (~kenran@200116b82b539f00f3f309ebb0e24d35.dip.versatel-1u1.de) (Quit: WeeChat info:version)
21:55:33 jmorris joins (uid433911@hampstead.irccloud.com)
22:00:48 <maerwald> do forM and forM_ have some significant laziness differences? I'm experiencing odd behavior
22:01:19 × quintasan quits (~quassel@quintasan.pl) (Quit: quintasan)
22:01:23 × mouseghost quits (~draco@user/mouseghost) (Quit: mew wew)
22:02:09 burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk)
22:02:14 quintasan joins (~quassel@quintasan.pl)
22:03:00 × mestre quits (~mestre@191.177.175.57) (Quit: Lost terminal)
22:03:49 <maerwald> `void $ forM [1,2] $ \i -> putStrLn (show i) >> throwSomeError Foo` runs both loops and then errors, while `forM_` will only run the first iteration
22:04:47 × deadmarshal quits (~deadmarsh@95.38.228.177) (Ping timeout: 256 seconds)
22:05:18 × zincy_ quits (~zincy@2a00:23c8:970c:4801:350f:7ee:191a:6f65) (Remote host closed the connection)
22:05:27 deadmarshal joins (~deadmarsh@95.38.228.222)
22:05:45 × desantra quits (~skykanin@user/skykanin) (Quit: WeeChat 3.3)
22:06:40 mrckndt3 joins (~mrckndt@user/mrckndt)
22:08:58 × mrckndt quits (~mrckndt@user/mrckndt) (Ping timeout: 260 seconds)
22:08:58 mrckndt3 is now known as mrckndt
22:09:51 × zer0bitz_ quits (~zer0bitz@2001:2003:f6e3:7400:d4e2:b355:67fe:933c) (Read error: Connection reset by peer)
22:12:10 <monochrom> I can't reproduce that. Unless I misunderstand "throwSomeError". WTH is it anyway?
22:12:28 falafel joins (~falafel@2603-8000-d800-688c-2092-0e6f-020e-f136.res6.spectrum.com)
22:14:05 <maerwald> yeah, it's not ExceptT
22:14:14 <maerwald> but similar, I'm trying to create a minimal reproducer
22:14:30 <monochrom> I used ioError (userError "hi") very simply.
22:16:30 <maerwald> ok, reproduced
22:16:32 <maerwald> wow
22:16:37 <maerwald> this is scary
22:17:43 <maerwald> https://github.com/hasufell/except-bug/blob/master/app/Main.hs
22:18:03 <maerwald> this print 1, 2, 1 to stdout
22:19:03 <maerwald> the forM version runs both
22:21:13 × deadmarshal quits (~deadmarsh@95.38.228.222) (Ping timeout: 256 seconds)
22:23:29 × [Kalisto] quits (~nico@user/kalisto/x-8968079) (Ping timeout: 256 seconds)
22:23:48 falafel_ joins (~falafel@2603-8000-d800-688c-2092-0e6f-020e-f136.res6.spectrum.com)
22:24:14 pavonia joins (~user@user/siracusa)
22:25:37 × cosimone quits (~user@93-44-184-239.ip98.fastwebnet.it) (Quit: ERC (IRC client for Emacs 27.1))
22:27:04 <dolio> I'm going to bet on the library you're using that uses unsafeCoerce to implement Either being at fault. :þ
22:27:23 × falafel quits (~falafel@2603-8000-d800-688c-2092-0e6f-020e-f136.res6.spectrum.com) (Ping timeout: 264 seconds)
22:28:00 <ddb> int-e: O RLY? lay it on me
22:28:02 <maerwald> I don't see unsafeCoerce there
22:28:58 <dolio> It's in the code for variants.
22:29:29 <maerwald> dolio: https://hackage.haskell.org/package/haskus-utils-variant-3.2/docs/src/Haskus.Utils.Variant.html#toVariantHead
22:29:32 <maerwald> at there
22:29:44 <maerwald> but what's going on here
22:29:48 <dolio> The unsafeCoerce isn't the likely problem. It's probably the accompanying manual arithmetic for figuring out which number is left vs. right.
22:30:35 <dolio> And somehow the first iteration of the loop, it thinks your error isn't actually an error or something.
22:31:21 <dolio> I guess it could be a lot of different things, really. (>>) vs. (>>=).
22:32:31 × pooryorick quits (~pooryoric@87-119-174-173.tll.elisa.ee) (Ping timeout: 260 seconds)
22:33:44 <int-e> ddb: check the context... the upshot is that v2-install (which you used) creates an environment for ghc and that will hide any libraries installed by v1-install by default
22:33:45 pooryorick joins (~pooryoric@87-119-174-173.tll.elisa.ee)
22:37:13 <sclv> what's the most convenient way to get "the underlying bytes of an Int as a ByteString" and to go back? i can see a bunch of options here...
22:37:35 <sclv> honestly makes more sense on an Integer, so lets say that instead
22:38:12 <sclv> like we can think of an Integer as encoding a sequence of bytes in a natural way, and it would be good to have access to that, conceptually, even if representationwise its not exactly the same thing
22:38:39 <maerwald> dolio: if you figure it out, please comment here https://github.com/haskus/packages/issues/39
22:39:19 <monochrom> I have narrowed it down to >> (which forM_ uses) vs <*>/liftA2 (which forM uses).
22:39:40 <maerwald> so the applicative instance?
22:39:51 <monochrom> Perhaps.
22:40:03 <dolio> I'm probably not going to look long enough to find it. The arithmetic seems like the most likely candidate unless one of the instances is just wrong.
22:40:44 <maerwald> https://hackage.haskell.org/package/haskus-utils-variant-3.2/docs/src/Haskus.Utils.Variant.Excepts.html#line-143
22:40:57 <dolio> The instances are pretty boring, though.
22:41:00 [Kalisto] joins (~nico@user/kalisto/x-8968079)
22:42:19 <dolio> maerwald: It might be interesting to come up with a test that does something after the error.
22:42:34 <dolio> Maybe you can get it to unsafe coerce you a value.
22:43:19 <ddb> int-e: Heyo! Thank you. Now I guess I need to download/patch djinn and it'll be fixed eh? Is there a reason that djinn hasn't been updated since 2014?
22:43:35 <jkaye> sclv, https://hackage.haskell.org/package/bytestring-0.11.1.0/docs/Data-ByteString-Builder.html ?
22:43:58 <jkaye> Lots of functions there to go from various numeric types into a ByteString Biulder
22:44:00 <dolio> Oh wait.
22:44:02 <jkaye> Builder**
22:44:16 <dolio> maerwald: Are you sure this isn't like 'Validation' or whatever?
22:44:38 <sclv> jkaye: oh that's not bad for the encoding side, not sure what to do for the decoding side
22:44:41 <dolio> I think it might be that.
22:44:54 <sclv> i.e. Bytestring -> Integer
22:45:06 <sclv> its not too hard to hand roll, just I'd think it might be lying around
22:45:22 <dolio> (<*>) runs both things and aggregates the errors. (>>=) can't do that, and (*>) and (>>) are implemented in terms of (>>=).
22:45:26 <maerwald> dolio: Excepts is an open sum type in the error
22:45:54 <dolio> Well, look at that (<*>) definition.
22:46:07 <maerwald> yeah
22:46:17 <dolio> It doesn't care if the first thing fails.
22:46:28 <monochrom> Ah.
22:46:52 <dolio> I guess it's the worst of both Validation and Either. :)
22:47:07 <dolio> Only one error, but no short circuiting. :)
22:47:35 <jkaye> sclv, is it possible to choose an encoding scheme to do this for you, or is it a requirement that you do it directly?
22:47:50 <monochrom> Well, one of <*>, >>= is broken because they differ.
22:47:58 <jkaye> For example (silly example, but still) aeson would do this for you using json as the encoding
22:48:04 <sclv> jkaye: i'm just trying to look at the most straightforward way to do this, pulling in as few libs as possible :-)
22:48:14 <jkaye> Ah okay, so looking for minimal deps
22:48:18 <jkaye> Makes sense
22:48:25 × cheater quits (~Username@user/cheater) (Ping timeout: 256 seconds)
22:48:52 <sclv> guess i'll just write my own for now. thanks for the pointer!
22:51:10 <jkaye> Yeah I think the issue with that being available in base (generically) is that a ByteString can't really be guaranteed to be an Int (or anything else)
22:51:19 <jkaye> Someone else might know more about this stuff
22:56:09 <maerwald> dolio: yep... I fixed the instances and now it works
22:56:12 <maerwald> monochrom: good catch
22:56:36 <maerwald> just looked at the ExceptT applicative instance, which just does explicit pattern matching
22:57:07 <maerwald> maybe because it looked less elegant, they tried to make it shorter
22:58:22 <monochrom> IMO "(<*>) = Control.Monad.ap" is the most elegant and the safest and the least work, too.
23:00:43 cheater joins (~Username@user/cheater)
23:02:47 <maerwald> but it's surprising that forM_ is not `void . forM`
23:04:07 <monochrom> Using IO for example, "forM [0..] print" takes infinite memory, and void does not save it, void comes in too late.
23:04:17 severen joins (~severen@202.36.179.72)
23:04:46 <monochrom> forM_ is carefully crafted to solve that.
23:05:41 <monochrom> Since this is IO's >>=, yes tail recursion matters in this case.
23:07:21 <monochrom> "forM_ (x:xs) f = f x >>= \_ -> forM_ xs f" is a tail recursion, "forM (x:xs) f = f x >>= \y -> forM xs f >>= oh now I have to return something" is a non-tail recursion.
23:07:54 <monochrom> OK, except that modern forM uses <*> instead of >>=
23:08:48 <maerwald> sequenceA
23:12:11 × mimmy quits (~mimmy@72.142.88.18) (Quit: WeeChat 3.3)
23:12:35 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Remote host closed the connection)
23:13:06 ChaiTRex joins (~ChaiTRex@user/chaitrex)
23:13:54 <maerwald> meh... sequence default impl is sequenceA
23:14:02 <monochrom> :)
23:14:04 <maerwald> trying to dive around this bug isn't that easy
23:14:11 × falafel_ quits (~falafel@2603-8000-d800-688c-2092-0e6f-020e-f136.res6.spectrum.com) (Ping timeout: 264 seconds)
23:14:23 <monochrom> Roll your own forM :)
23:15:28 × _xor quits (~xor@72.49.199.147) (Quit: WeeChat 3.3)
23:16:37 × sudden quits (~cat@user/sudden) (Ping timeout: 268 seconds)
23:17:22 hippoid joins (~idris@c-98-220-13-8.hsd1.il.comcast.net)
23:17:33 <int-e> /lastlog ddb 3
23:17:46 <int-e> (darn space bar)
23:23:25 sudden joins (~cat@h-98-128-128-173.A351.priv.bahnhof.se)
23:23:50 sudden is now known as Guest6295
23:28:04 AlexNoo_ joins (~AlexNoo@178.34.163.122)
23:28:13 Cale joins (~cale@cpef48e38ee8583-cm30b7d4b3fc20.cpe.net.cable.rogers.com)
23:29:13 × Guest6295 quits (~cat@h-98-128-128-173.A351.priv.bahnhof.se) (Ping timeout: 256 seconds)
23:30:01 teddyc joins (theodorc@cassarossa.samfundet.no)
23:30:18 deadmarshal joins (~deadmarsh@95.38.228.222)
23:30:42 × Alex_test quits (~al_test@178.34.163.82) (Ping timeout: 260 seconds)
23:30:42 × AlexZenon quits (~alzenon@178.34.163.82) (Ping timeout: 260 seconds)
23:31:39 × AlexNoo quits (~AlexNoo@178.34.163.82) (Ping timeout: 250 seconds)
23:34:25 AlexZenon joins (~alzenon@178.34.163.122)
23:34:25 Alex_test joins (~al_test@178.34.163.122)
23:34:53 × deadmarshal quits (~deadmarsh@95.38.228.222) (Ping timeout: 256 seconds)
23:34:53 × mcgroin quits (~mcgroin@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 256 seconds)
23:35:02 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
23:35:11 × Pickchea quits (~private@user/pickchea) (Quit: Leaving)
23:36:11 sudden joins (~cat@h-98-128-128-173.A351.priv.bahnhof.se)
23:36:36 sudden is now known as Guest4609
23:37:11 × Guest4609 quits (~cat@h-98-128-128-173.A351.priv.bahnhof.se) (Changing host)
23:37:11 Guest4609 joins (~cat@user/sudden)
23:41:34 kupi joins (uid212005@hampstead.irccloud.com)
23:43:11 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Remote host closed the connection)
23:43:35 ChaiTRex joins (~ChaiTRex@user/chaitrex)
23:49:52 lbseale joins (~lbseale@user/ep1ctetus)
23:50:28 × lbseale quits (~lbseale@user/ep1ctetus) (Client Quit)
23:50:51 MasseR5 joins (~MasseR@51.15.143.128)
23:51:27 × orcus quits (~orcus@user/brprice) (Quit: ZNC 1.8.1 - https://znc.in)
23:51:32 × defanor quits (~defanor@tart.uberspace.net) (Quit: .)
23:51:46 orcus joins (~orcus@user/brprice)
23:51:47 defanor joins (~defanor@tart.uberspace.net)
23:52:48 × MasseR quits (~MasseR@51.15.143.128) (Ping timeout: 260 seconds)
23:52:48 MasseR5 is now known as MasseR
23:55:37 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
23:55:38 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host)
23:55:38 wroathe joins (~wroathe@user/wroathe)

All times are in UTC on 2021-11-11.