Home liberachat/#haskell: Logs Calendar

Logs on 2022-07-27 (liberachat/#haskell)

00:00:06 × alternateved quits (~user@staticline-31-183-144-54.toya.net.pl) (Remote host closed the connection)
00:00:46 × argento quits (~argent0@168-227-98-91.ptr.westnet.com.ar) (Client Quit)
00:01:09 argento joins (~argent0@168-227-98-91.ptr.westnet.com.ar)
00:01:42 × argento quits (~argent0@168-227-98-91.ptr.westnet.com.ar) (Client Quit)
00:04:10 mikoto-chan joins (~mikoto-ch@164.5.249.78)
00:05:01 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
00:06:11 × drlkf quits (~drlkf@drlkf.net) (Quit: q+)
00:06:42 drlkf joins (~drlkf@drlkf.net)
00:08:31 wroathe joins (~wroathe@206-55-188-8.fttp.usinternet.com)
00:08:31 × wroathe quits (~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
00:08:31 wroathe joins (~wroathe@user/wroathe)
00:12:18 × califax quits (~califax@user/califx) (Remote host closed the connection)
00:12:46 × noteness quits (~noteness@user/noteness) (Ping timeout: 268 seconds)
00:12:55 mvk joins (~mvk@2607:fea8:5ce3:8500::909a)
00:14:43 tompaw joins (~tompaw@static-47-206-100-136.tamp.fl.frontiernet.net)
00:14:53 <tompaw> Hi.
00:15:04 <Axman6> Hello!
00:15:20 talismanick joins (~talismani@campus-019-177.ucdavis.edu)
00:15:40 <talismanick> Is there a list of (maintained) Haskell-family languages?
00:16:25 <dsal> The point of type families is that they're open and anyone can add to them without having to update a central registry.
00:16:37 <talismanick> languages intended to be used, not research one-offs - think Elm, PureScript, etc
00:16:58 <dsal> Used is a weird metric. Idris? Agda?
00:16:59 <Axman6> would yoyu consider Agda and Idris to fall into that category?
00:17:00 × xff0x quits (~xff0x@ae133174.dynamic.ppp.asahi-net.or.jp) (Ping timeout: 268 seconds)
00:17:05 × adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Ping timeout: 268 seconds)
00:17:05 × stiell quits (~stiell@gateway/tor-sasl/stiell) (Ping timeout: 268 seconds)
00:17:07 <talismanick> Axman6: sure
00:17:27 <talismanick> Forgot to mention those. Just, anything Haskell-like which you can write "real programs" in.
00:17:34 <Axman6> I'm not sure what you're excluding with that statement then :P
00:17:37 <talismanick> I'll draw the line at Coq
00:17:46 <talismanick> Axman6: "You know what I mean"
00:17:52 <dsal> Coq is used to write real haskell code that's used to write real haskell programs.
00:17:53 <Axman6> Coq is probably the most useful of the three
00:17:55 <talismanick> practical languages
00:18:10 <talismanick> Yeah, but you've left the realm of Haskell-like languages by then, IMO
00:18:23 xff0x joins (~xff0x@ae130207.dynamic.ppp.asahi-net.or.jp)
00:18:51 <talismanick> I can count any number of Rust clones, it seems, but if I try to tally up Haskell-likes, it seems I'm perpetually one short
00:19:03 <talismanick> (e.g. I haven't mentioned Unison yet)
00:19:31 pavonia joins (~user@user/siracusa)
00:19:37 <Axman6> I think the answer to youre question is probably no (though if Wikipedia's inspired by tags on language pages can be aggregated then you might be able to get a pretty decent list)
00:20:15 <dsal> What do you consider "haskell-like"? I guess it's fair to say elm is Haskell-like, but there are a lot of fairly core Haskell features it lacks in frustrating ways, but you can find some of those features in languages you'd probably not considered Haskell like at all.
00:21:22 <talismanick> dsal: Oh, 100%, but I tag it as "Haskell-like" because it obviously falls under (typed) functional languages and is closer to Haskell than it is to the broader ML family
00:22:13 <talismanick> Axman6: I found Wikipedia to not be a good match for this... I came across some interesting research languages like Hume, but it's not the best resource to find "living" software
00:24:31 <talismanick> In a similar vein, I've used hopl.info (sadly dead, it appears) for historical language research, but don't know how much it applies to modern languages
00:25:05 × simpleauthority quits (~simpleaut@user/simpleauthority) (Quit: ZNC 1.8.2 - https://znc.in)
00:25:18 <talismanick> oh, Ur/Web should still be at large
00:25:58 simpleauthority joins (~simpleaut@user/simpleauthority)
00:26:15 × xff0x quits (~xff0x@ae130207.dynamic.ppp.asahi-net.or.jp) (Ping timeout: 268 seconds)
00:26:19 noteness joins (~noteness@user/noteness)
00:26:25 × maroloccio quits (~marolocci@151.70.135.76) (Quit: WeeChat 3.0)
00:26:30 stiell joins (~stiell@gateway/tor-sasl/stiell)
00:28:07 <geekosaur> also, how about the other direction? Miranda's still out there
00:28:11 adanwan joins (~adanwan@gateway/tor-sasl/adanwan)
00:28:21 merijn joins (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
00:28:23 <geekosaur> I think Gofer's dead though
00:28:25 califax joins (~califax@user/califx)
00:28:30 × AlexZenon quits (~alzenon@178.34.150.131) (Ping timeout: 260 seconds)
00:30:15 × Alex_test quits (~al_test@178.34.150.131) (Ping timeout: 260 seconds)
00:30:27 × segfaultfizzbuzz quits (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Ping timeout: 245 seconds)
00:30:41 × mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 252 seconds)
00:30:44 xff0x joins (~xff0x@ae129129.dynamic.ppp.asahi-net.or.jp)
00:32:17 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
00:32:52 mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475)
00:32:57 × matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection)
00:32:59 segfaultfizzbuzz joins (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net)
00:33:04 matthewmosior joins (~matthewmo@173.170.253.91)
00:33:55 AlexZenon joins (~alzenon@178.34.150.131)
00:34:09 Alex_test joins (~al_test@178.34.150.131)
00:34:55 <matthewmosior> What about Agda and Idris? These are more in the dependent type realm, Agda stylistically and syntactically seems very similar to Haskell.
00:35:45 <Axman6> we started of with that point
00:35:54 <matthewmosior> Sorry just saw that lol
00:38:15 <matthewmosior> Clean comes to mind, but haven't really tried it out.
00:38:42 <Axman6> talismanick: if you do come up with a good list, feel free to add it to the HAskell wiki, so the next person can also come across an outdated and incomplete list to speed up their process :P
00:39:58 <Axman6> dsal: was there some background to your comment about type families?
00:40:54 <dsal> Axman6: Not really. Just asking about a central registry of things in the haskell family (presumably related to type systems) which made me think of type families and how they let you add stuff without telling anyone.
00:41:23 <Axman6> heh, right, i felt unconnected but I get it now
00:41:27 <Axman6> it*
00:47:47 × alp__ quits (~alp@user/alp) (Ping timeout: 272 seconds)
00:47:57 × segfaultfizzbuzz quits (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Ping timeout: 245 seconds)
00:48:17 × xff0x quits (~xff0x@ae129129.dynamic.ppp.asahi-net.or.jp) (Ping timeout: 252 seconds)
00:50:10 xff0x joins (~xff0x@ae128171.dynamic.ppp.asahi-net.or.jp)
00:54:23 segfaultfizzbuzz joins (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net)
00:58:05 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2)
00:58:50 × segfaultfizzbuzz quits (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Remote host closed the connection)
00:59:16 kaskal- joins (~kaskal@213-225-33-152.nat.highway.a1.net)
01:00:14 × kaskal quits (~kaskal@2001:4bb8:2c0:3963:7278:d0d4:9479:4919) (Ping timeout: 268 seconds)
01:01:17 × talismanick quits (~talismani@campus-019-177.ucdavis.edu) (Ping timeout: 245 seconds)
01:01:42 × merijn quits (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 245 seconds)
01:06:17 × machinedgod quits (~machinedg@d172-219-86-154.abhsia.telus.net) (Ping timeout: 245 seconds)
01:08:48 × Colere quits (~colere@about/linux/staff/sauvin) (Ping timeout: 276 seconds)
01:09:40 × simpleauthority quits (~simpleaut@user/simpleauthority) (Quit: ZNC 1.8.2 - https://znc.in)
01:09:56 Colere joins (~colere@about/linux/staff/sauvin)
01:10:46 × matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection)
01:11:03 × albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
01:11:54 Furor joins (~colere@about/linux/staff/sauvin)
01:12:42 simpleauthority joins (~simpleaut@user/simpleauthority)
01:12:51 × xff0x quits (~xff0x@ae128171.dynamic.ppp.asahi-net.or.jp) (Ping timeout: 252 seconds)
01:14:41 × Colere quits (~colere@about/linux/staff/sauvin) (Ping timeout: 252 seconds)
01:14:55 matthewmosior joins (~matthewmo@173.170.253.91)
01:15:09 Furor is now known as Colere
01:17:10 albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8)
01:19:12 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 245 seconds)
01:19:50 talismanick joins (~talismani@2601:200:c100:3850::dd64)
01:21:11 × gregberns__ quits (sid315709@helmsley.irccloud.com) (Ping timeout: 255 seconds)
01:24:20 gregberns__ joins (sid315709@id-315709.helmsley.irccloud.com)
01:24:20 × dextaa quits (~DV@user/dextaa) (Read error: Connection reset by peer)
01:26:32 dextaa joins (~DV@user/dextaa)
01:34:05 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
01:34:05 × califax quits (~califax@user/califx) (Remote host closed the connection)
01:34:05 × stiell quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection)
01:34:05 × adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
01:34:05 × noteness quits (~noteness@user/noteness) (Remote host closed the connection)
01:34:32 segfaultfizzbuzz joins (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net)
01:34:56 [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470)
01:35:04 adanwan joins (~adanwan@gateway/tor-sasl/adanwan)
01:35:15 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
01:35:16 califax joins (~califax@user/califx)
01:36:22 noteness joins (~noteness@user/noteness)
01:38:52 stiell joins (~stiell@gateway/tor-sasl/stiell)
01:44:37 × zaquest quits (~notzaques@5.130.79.72) (Remote host closed the connection)
01:48:39 matthewmosior joins (~matthewmo@173.170.253.91)
01:53:05 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds)
01:53:38 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
01:55:21 matthewmosior joins (~matthewmo@173.170.253.91)
01:56:25 × matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection)
01:57:20 matthewmosior joins (~matthewmo@173.170.253.91)
01:58:27 jargon joins (~jargon@184.101.188.251)
01:58:40 merijn joins (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
02:01:42 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 245 seconds)
02:01:56 xff0x joins (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp)
02:03:47 notzmv joins (~zmv@user/notzmv)
02:04:38 Kaladin joins (~Kaladin@157-131-169-214.fiber.dynamic.sonic.net)
02:06:05 zaquest joins (~notzaques@5.130.79.72)
02:07:31 × Kaladin quits (~Kaladin@157-131-169-214.fiber.dynamic.sonic.net) (Client Quit)
02:07:53 Kaladin joins (~Kaladin@157-131-169-214.fiber.dynamic.sonic.net)
02:08:49 × Kaladin quits (~Kaladin@157-131-169-214.fiber.dynamic.sonic.net) (Remote host closed the connection)
02:11:14 zxx7529 joins (~Thunderbi@user/zxx7529)
02:13:14 <pavonia> Axman6: If you recall our discussion about Fermat's factorization, you said exactSquareRoot is more efficent because it uses integerSquareRootRem to avoid checking (sqrt n)^2 == n. Looks like it's internally doing exactly the same test, i.e. n - (sqrt n)^2 == 0
02:13:41 <pavonia> I'm wondering if we can calculate the root and get the information for free, if it is an exact root or not
02:15:23 × bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
02:15:34 matthewmosior joins (~matthewmo@173.170.253.91)
02:15:48 × matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection)
02:15:55 matthewmosior joins (~matthewmo@173.170.253.91)
02:17:18 × matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection)
02:17:39 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
02:17:57 × Haskelytic quits (~Haskelyti@118.179.211.17) (Quit: Client closed)
02:19:17 <Axman6> I mostly meant that it first does the efficient test so see if it could possible be a square before going through the calculation of the square root, but it also doesn't go as far as what isSquare does to check that possibility and waste doing some work twice
02:20:51 <Axman6> like, isSquare does all the work of finding the root and then throws it away, so if you use exactSquareRoot you get the isSquare test and thecomputation of the square at the same time
02:20:59 yangby joins (~secret@115.206.18.110)
02:21:16 <Axman6> Did you take a look at that paper I linked?
02:21:46 <pavonia> Yeah, but I haven't had the time to read though it yet
02:21:58 × bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
02:22:37 <Axman6> the idea of producing the square root from the low digits to the high seems like it would be usefun in Haskell if integers were represented with lazy lists of digits
02:23:17 matthewmosior joins (~matthewmo@173.170.253.91)
02:23:25 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
02:25:01 <Axman6> pavonia: also, I think the answer to your question of where those numbers come from is answered in the comment: "After that, the remainders modulo 9, 25, 7, 11 and 13 are tested"
02:27:03 <pavonia> Those numbers look a bit random at first glance, but they are all of the form p^k where p is a prime
02:27:17 <pavonia> 16 too
02:28:57 <pavonia> Btw, I discovered that it is a major speedup for Fermat if you don't calculate the facors of n only, but of n and a product of the first k primes that equals approximately n, then return the gcd of n and the found factor
02:29:41 <pavonia> This way there's a much higher chance to find an arrangement of factors where both are close together early
02:29:57 bontaq joins (~user@ool-45779fe5.dyn.optonline.net)
02:29:58 <Axman6> I'd need to see the code
02:30:15 <Axman6> sounds like something that would be useful in arithmoi or something though
02:30:49 <Axman6> I was using the fermat factorisation to find the private key for poorly generated RSA keys
02:30:52 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 245 seconds)
02:32:03 × merijn quits (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 252 seconds)
02:32:17 <pavonia> https://bpa.st/CKLQ
02:33:20 matthewmosior joins (~matthewmo@173.170.253.91)
02:33:58 yauhsien joins (~yauhsien@61-231-60-109.dynamic-ip.hinet.net)
02:34:44 × matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection)
02:36:36 × meinside quits (uid24933@id-24933.helmsley.irccloud.com) (Quit: Connection closed for inactivity)
02:37:41 × jpds quits (~jpds@gateway/tor-sasl/jpds) (Ping timeout: 268 seconds)
02:40:01 matthewmosior joins (~matthewmo@173.170.253.91)
02:40:50 jpds joins (~jpds@gateway/tor-sasl/jpds)
02:40:50 × [Leary] quits (~Leary]@122-58-224-198-vdsl.sparkbb.co.nz) (Remote host closed the connection)
02:40:55 × waleee quits (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 260 seconds)
02:41:10 [Leary] joins (~Leary]@122-58-224-198-vdsl.sparkbb.co.nz)
02:41:58 × [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection)
02:41:59 × pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.5)
02:44:27 × mcglk quits (~mcglk@131.191.49.120) (Ping timeout: 268 seconds)
02:46:18 × yauhsien quits (~yauhsien@61-231-60-109.dynamic-ip.hinet.net) (Ping timeout: 240 seconds)
02:46:22 <pavonia> I guess for really big numbers it's more efficent to just add a few smaller extra factors instead of the full product, otherwise the numbers become too big
02:47:49 × td_ quits (~td@muedsl-82-207-238-218.citykom.de) (Ping timeout: 252 seconds)
02:48:02 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 255 seconds)
02:48:50 mcglk joins (~mcglk@131.191.49.120)
02:49:38 td_ joins (~td@muedsl-82-207-238-210.citykom.de)
02:51:33 × califax quits (~califax@user/califx) (Remote host closed the connection)
02:52:05 califax joins (~califax@user/califx)
03:02:47 matthewmosior joins (~matthewmo@173.170.253.91)
03:06:13 × winny quits (~weechat@user/winny) (Remote host closed the connection)
03:07:34 winny joins (~weechat@user/winny)
03:11:58 × jpds quits (~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
03:12:21 jpds joins (~jpds@gateway/tor-sasl/jpds)
03:13:22 × mstksg quits (~jle`@cpe-23-240-75-236.socal.res.rr.com) (Ping timeout: 245 seconds)
03:14:09 × bitmapper quits (uid464869@id-464869.lymington.irccloud.com) (Quit: Connection closed for inactivity)
03:15:10 yauhsien joins (~yauhsien@61-231-60-109.dynamic-ip.hinet.net)
03:19:01 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
03:19:02 × califax quits (~califax@user/califx) (Remote host closed the connection)
03:19:52 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
03:19:55 × nek0 quits (~nek0@2a01:4f8:222:2b41::12) (Quit: The Lounge - https://thelounge.chat)
03:22:03 califax joins (~califax@user/califx)
03:23:49 nek0 joins (~nek0@2a01:4f8:222:2b41::12)
03:26:41 × yauhsien quits (~yauhsien@61-231-60-109.dynamic-ip.hinet.net) (Ping timeout: 252 seconds)
03:27:31 × winny quits (~weechat@user/winny) (Remote host closed the connection)
03:28:08 winny joins (~weechat@user/winny)
03:28:54 merijn joins (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
03:29:29 × adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Ping timeout: 268 seconds)
03:32:34 × bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 268 seconds)
03:32:34 × stiell quits (~stiell@gateway/tor-sasl/stiell) (Ping timeout: 268 seconds)
03:34:13 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
03:35:23 adanwan joins (~adanwan@gateway/tor-sasl/adanwan)
03:36:34 stiell joins (~stiell@gateway/tor-sasl/stiell)
03:39:09 × segfaultfizzbuzz quits (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Ping timeout: 252 seconds)
03:39:46 × jargon quits (~jargon@184.101.188.251) (Remote host closed the connection)
03:43:09 bilegeek joins (~bilegeek@2600:1008:b054:82f1:8d4a:1bbe:285e:bf1a)
03:45:35 × jpds quits (~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
03:45:57 jpds joins (~jpds@gateway/tor-sasl/jpds)
03:47:50 × yin quits (~yin@user/zero) (Ping timeout: 240 seconds)
03:49:20 polyphem joins (~polyphem@2a02:810d:840:8754:35b0:d95e:2ca3:cacd)
03:51:17 × jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 245 seconds)
03:55:41 × polyphem quits (~polyphem@2a02:810d:840:8754:35b0:d95e:2ca3:cacd) (Read error: Connection reset by peer)
03:56:01 × adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
03:56:45 adanwan joins (~adanwan@gateway/tor-sasl/adanwan)
03:56:45 × Vajb quits (~Vajb@n1zigc3rgo9mpde2w-1.v6.elisa-mobile.fi) (Read error: Connection reset by peer)
03:57:43 Vajb joins (~Vajb@hag-jnsbng11-58c3ad-40.dhcp.inet.fi)
04:00:04 × zxx7529 quits (~Thunderbi@user/zxx7529) (Remote host closed the connection)
04:00:17 zxx7529 joins (~Thunderbi@user/zxx7529)
04:01:12 stanrifkin_ joins (~stanrifki@p200300dbcf0c9d00b433ce3cd423749b.dip0.t-ipconnect.de)
04:01:50 × stiell quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection)
04:01:54 <stanrifkin_> is it normal to have 2.5 gb install under ~/.ghcup and 1.5 gb under ~/.cabal?
04:02:00 yauhsien joins (~yauhsien@61-231-60-109.dynamic-ip.hinet.net)
04:02:33 stiell joins (~stiell@gateway/tor-sasl/stiell)
04:03:47 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 245 seconds)
04:03:56 × merijn quits (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 268 seconds)
04:05:43 × Vajb quits (~Vajb@hag-jnsbng11-58c3ad-40.dhcp.inet.fi) (Read error: Connection reset by peer)
04:06:02 nunggu joins (~q@user/nunggu)
04:07:04 Vajb joins (~Vajb@n1zigc3rgo9mpde2w-1.v6.elisa-mobile.fi)
04:07:30 × funkyindieeee1 quits (~funkyindi@user/funkyindieeee1) (Quit: The Lounge - https://thelounge.chat)
04:07:41 × yangby quits (~secret@115.206.18.110) (Quit: Go out for a walk and buy a drink.)
04:07:45 <dolio> No, that's probably smaller than normal.
04:08:31 <stanrifkin_> hm...
04:08:38 <dolio> Unless you do a lot of cleaning.
04:08:42 <stanrifkin_> it was a fresh install.
04:08:57 <stanrifkin_> then i installed hoogle with cabal
04:09:10 <stanrifkin_> i thought it's somewhat big
04:09:10 <dolio> Then it's probably normal.
04:09:13 <stanrifkin_> ok
04:10:06 × nunggu quits (~q@user/nunggu) (Remote host closed the connection)
04:10:33 nunggu joins (~q@user/nunggu)
04:15:44 × bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 268 seconds)
04:17:13 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
04:20:13 × adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
04:20:41 adanwan joins (~adanwan@gateway/tor-sasl/adanwan)
04:33:04 matthewmosior joins (~matthewmo@173.170.253.91)
04:34:39 polyphem joins (~polyphem@2a00:20:c046:aadb:ba2:f39f:aaa5:3556)
04:35:33 × polyphem quits (~polyphem@2a00:20:c046:aadb:ba2:f39f:aaa5:3556) (Client Quit)
04:36:01 × defanor quits (~defanor@tart.uberspace.net) (Quit: .)
04:36:05 × stiell quits (~stiell@gateway/tor-sasl/stiell) (Ping timeout: 268 seconds)
04:36:40 defanor joins (~defanor@tart.uberspace.net)
04:37:18 × stanrifkin_ quits (~stanrifki@p200300dbcf0c9d00b433ce3cd423749b.dip0.t-ipconnect.de) (Quit: Leaving)
04:37:22 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds)
04:39:48 mbuf joins (~Shakthi@122.165.55.71)
04:50:29 matthewmosior joins (~matthewmo@173.170.253.91)
04:51:25 stiell joins (~stiell@gateway/tor-sasl/stiell)
04:56:59 kadobanana joins (~mud@user/kadoban)
04:57:18 × mud quits (~mud@user/kadoban) (Read error: Connection reset by peer)
04:58:54 × nunggu quits (~q@user/nunggu) (Ping timeout: 268 seconds)
04:59:27 merijn joins (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
05:08:42 × zebrag quits (~chris@user/zebrag) (Quit: Konversation terminated!)
05:13:26 × foul_owl quits (~kerry@23.82.194.108) (Ping timeout: 255 seconds)
05:17:07 × xff0x quits (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 245 seconds)
05:19:11 xff0x joins (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp)
05:19:40 segfaultfizzbuzz joins (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net)
05:21:18 coot joins (~coot@213.134.190.95)
05:28:53 foul_owl joins (~kerry@23.82.194.108)
05:32:49 × segfaultfizzbuzz quits (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Ping timeout: 252 seconds)
05:34:35 × merijn quits (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 268 seconds)
05:34:37 × wroathe quits (~wroathe@user/wroathe) (Ping timeout: 245 seconds)
05:34:48 segfaultfizzbuzz joins (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net)
05:37:55 × chexum quits (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
05:37:55 × califax quits (~califax@user/califx) (Write error: Connection reset by peer)
05:37:55 × noteness quits (~noteness@user/noteness) (Read error: Connection reset by peer)
05:37:55 × azimut_ quits (~azimut@gateway/tor-sasl/azimut) (Read error: Connection reset by peer)
05:37:55 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Read error: Connection reset by peer)
05:37:55 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Write error: Connection reset by peer)
05:37:55 × winny quits (~weechat@user/winny) (Write error: Connection reset by peer)
05:38:30 ChaiTRex joins (~ChaiTRex@user/chaitrex)
05:38:40 califax joins (~califax@user/califx)
05:38:42 noteness joins (~noteness@user/noteness)
05:39:02 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
05:39:24 chexum joins (~quassel@gateway/tor-sasl/chexum)
05:39:45 winny joins (~weechat@user/winny)
05:39:56 azimut joins (~azimut@gateway/tor-sasl/azimut)
05:49:15 × segfaultfizzbuzz quits (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Remote host closed the connection)
05:52:27 chexum_ joins (~quassel@gateway/tor-sasl/chexum)
05:52:33 × chexum quits (~quassel@gateway/tor-sasl/chexum) (Ping timeout: 268 seconds)
05:54:47 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 255 seconds)
06:02:28 × kmein quits (~weechat@user/kmein) (Quit: ciao kakao)
06:06:05 kmein joins (~weechat@user/kmein)
06:06:34 azimut_ joins (~azimut@gateway/tor-sasl/azimut)
06:06:44 × califax quits (~califax@user/califx) (Ping timeout: 268 seconds)
06:07:15 × chexum_ quits (~quassel@gateway/tor-sasl/chexum) (Quit: No Ping reply in 180 seconds.)
06:07:16 × azimut quits (~azimut@gateway/tor-sasl/azimut) (Quit: ZNC - https://znc.in)
06:08:06 jinsun is now known as Guest7126
06:08:06 jinsun__ joins (~jinsun@user/jinsun)
06:08:06 × Guest7126 quits (~jinsun@user/jinsun) (Killed (copper.libera.chat (Nickname regained by services)))
06:08:06 jinsun__ is now known as jinsun
06:08:44 chexum joins (~quassel@gateway/tor-sasl/chexum)
06:08:53 matthewmosior joins (~matthewmo@173.170.253.91)
06:09:27 vglfr joins (~vglfr@145.224.94.245)
06:11:31 benin0 joins (~benin@183.82.24.82)
06:13:22 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 245 seconds)
06:14:03 × vglfr quits (~vglfr@145.224.94.245) (Ping timeout: 268 seconds)
06:15:10 chomwitt joins (~chomwitt@2a02:587:dc00:5a00:c97f:27e8:7d82:f5a7)
06:15:24 Pickchea joins (~private@user/pickchea)
06:17:48 × russruss quits (~russruss@my.russellmcc.com) (Quit: Ping timeout (120 seconds))
06:18:11 russruss joins (~russruss@my.russellmcc.com)
06:18:11 califax joins (~califax@user/califx)
06:18:32 × russruss quits (~russruss@my.russellmcc.com) (Client Quit)
06:19:06 michalz joins (~michalz@185.246.204.89)
06:20:31 russruss joins (~russruss@my.russellmcc.com)
06:22:04 × mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 268 seconds)
06:23:31 mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475)
06:25:14 alternateved joins (~user@staticline-31-183-144-54.toya.net.pl)
06:25:34 × benin0 quits (~benin@183.82.24.82) (Quit: The Lounge - https://thelounge.chat)
06:27:17 matthewmosior joins (~matthewmo@173.170.253.91)
06:27:25 acidjnk joins (~acidjnk@p5dd87aad.dip0.t-ipconnect.de)
06:30:07 merijn joins (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
06:30:48 dschrempf joins (~dominik@2a01-036d-0118-8956-029b-7129-dcbd-b481.pool6.digikabel.hu)
06:34:18 × chomwitt quits (~chomwitt@2a02:587:dc00:5a00:c97f:27e8:7d82:f5a7) (Ping timeout: 264 seconds)
06:36:13 × mvk quits (~mvk@2607:fea8:5ce3:8500::909a) (Ping timeout: 244 seconds)
06:36:34 × monochrom quits (trebla@216.138.220.146) (Ping timeout: 272 seconds)
06:38:20 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Remote host closed the connection)
06:38:20 × noteness quits (~noteness@user/noteness) (Remote host closed the connection)
06:38:20 × winny quits (~weechat@user/winny) (Remote host closed the connection)
06:38:20 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
06:39:05 winny joins (~weechat@user/winny)
06:39:06 ChaiTRex joins (~ChaiTRex@user/chaitrex)
06:39:10 noteness joins (~noteness@user/noteness)
06:39:19 monochrom joins (trebla@216.138.220.146)
06:40:12 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
06:43:23 × bilegeek quits (~bilegeek@2600:1008:b054:82f1:8d4a:1bbe:285e:bf1a) (Remote host closed the connection)
06:43:33 × rembo10 quits (~rembo10@main.remulis.com) (Quit: ZNC 1.8.2 - https://znc.in)
06:43:47 bilegeek joins (~bilegeek@2600:1008:b054:82f1:8d4a:1bbe:285e:bf1a)
06:44:20 gurkenglas joins (~gurkengla@p200300d1470e7f0003884691c0eb896c.dip0.t-ipconnect.de)
06:44:34 rembo10 joins (~rembo10@main.remulis.com)
06:47:45 × Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer)
06:51:50 yoneda joins (~mike@193.206.102.122)
06:57:35 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
07:00:23 mmhat joins (~mmh@p200300f1c70b4552ee086bfffe095315.dip0.t-ipconnect.de)
07:00:51 Tuplanolla joins (~Tuplanoll@91-159-68-5.elisa-laajakaista.fi)
07:00:52 <Axman6> pavonia: you still understanding the code, but you might find MultiwayIf useful, it's basically what you're doing with that case expression on ()
07:01:35 chele joins (~chele@user/chele)
07:03:45 × merijn quits (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 252 seconds)
07:08:30 × noteness quits (~noteness@user/noteness) (Remote host closed the connection)
07:08:48 noteness joins (~noteness@user/noteness)
07:15:23 × bilegeek quits (~bilegeek@2600:1008:b054:82f1:8d4a:1bbe:285e:bf1a) (Remote host closed the connection)
07:15:47 bilegeek joins (~bilegeek@2600:1008:b054:82f1:8d4a:1bbe:285e:bf1a)
07:17:56 zeenk joins (~zeenk@2a02:2f04:a311:2d00:6865:d863:4c93:799f)
07:22:20 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Remote host closed the connection)
07:22:20 × winny quits (~weechat@user/winny) (Write error: Connection reset by peer)
07:22:20 × califax quits (~califax@user/califx) (Write error: Connection reset by peer)
07:22:20 × chexum quits (~quassel@gateway/tor-sasl/chexum) (Write error: Connection reset by peer)
07:22:20 × noteness quits (~noteness@user/noteness) (Write error: Connection reset by peer)
07:22:20 × azimut_ quits (~azimut@gateway/tor-sasl/azimut) (Read error: Connection reset by peer)
07:22:46 noteness joins (~noteness@user/noteness)
07:22:49 ChaiTRex joins (~ChaiTRex@user/chaitrex)
07:22:58 winny joins (~weechat@user/winny)
07:23:10 chexum joins (~quassel@gateway/tor-sasl/chexum)
07:23:27 azimut joins (~azimut@gateway/tor-sasl/azimut)
07:24:02 califax joins (~califax@user/califx)
07:26:32 coco joins (~coco@212-51-146-199.fiber7.init7.net)
07:26:38 zachel joins (~zachel@user/zachel)
07:27:07 × zachel_ quits (~zachel@user/zachel) (Ping timeout: 245 seconds)
07:28:35 × jinsun quits (~jinsun@user/jinsun) (Read error: Connection reset by peer)
07:29:26 jinsun joins (~jinsun@user/jinsun)
07:30:27 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds)
07:31:50 jinsun__ joins (~jinsun@user/jinsun)
07:31:50 jinsun is now known as Guest6151
07:31:50 jinsun__ is now known as jinsun
07:33:38 alp__ joins (~alp@user/alp)
07:35:08 × Guest6151 quits (~jinsun@user/jinsun) (Ping timeout: 255 seconds)
07:36:07 kuribas joins (~user@ptr-17d51epd7nbmqsvhr5i.18120a2.ip6.access.telenet.be)
07:36:56 zaenalmengaji joins (~a@36.72.156.240)
07:39:41 × zxx7529 quits (~Thunderbi@user/zxx7529) (Remote host closed the connection)
07:39:52 zxx7529 joins (~Thunderbi@user/zxx7529)
07:41:37 × Pickchea quits (~private@user/pickchea) (Quit: Leaving)
07:42:08 chomwitt joins (~chomwitt@2a02:587:dc00:5a00:46c5:b74b:2b21:d09f)
07:42:12 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
07:43:23 × califax quits (~califax@user/califx) (Quit: ZNC 1.8.2 - https://znc.in)
07:43:23 × adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Quit: _)
07:44:17 × winny quits (~weechat@user/winny) (Remote host closed the connection)
07:45:03 adanwan joins (~adanwan@gateway/tor-sasl/adanwan)
07:46:00 winny joins (~weechat@user/winny)
07:46:04 califax joins (~califax@user/califx)
07:52:00 × shriekingnoise quits (~shrieking@186.137.167.202) (Quit: Quit)
07:53:05 × kuribas quits (~user@ptr-17d51epd7nbmqsvhr5i.18120a2.ip6.access.telenet.be) (Remote host closed the connection)
07:53:26 kuribas joins (~user@ptr-17d51epd7nbmqsvhr5i.18120a2.ip6.access.telenet.be)
07:56:10 machinedgod joins (~machinedg@d172-219-86-154.abhsia.telus.net)
07:56:41 × adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
07:57:09 adanwan joins (~adanwan@gateway/tor-sasl/adanwan)
07:58:06 matthewmosior joins (~matthewmo@173.170.253.91)
07:59:10 × jespada quits (~jespada@190.7.36.46) (Ping timeout: 240 seconds)
08:00:32 merijn joins (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
08:00:42 dcoutts__ joins (~duncan@host213-122-124-158.range213-122.btcentralplus.com)
08:00:44 × dcoutts quits (~duncan@host86-163-164-210.range86-163.btcentralplus.com) (Ping timeout: 268 seconds)
08:02:32 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 245 seconds)
08:02:48 jpds1 joins (~jpds@gateway/tor-sasl/jpds)
08:03:15 finn_elija joins (~finn_elij@user/finn-elija/x-0085643)
08:03:15 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija)))
08:03:15 finn_elija is now known as FinnElija
08:03:17 × stiell quits (~stiell@gateway/tor-sasl/stiell) (Ping timeout: 268 seconds)
08:03:17 × bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 268 seconds)
08:03:17 × jpds quits (~jpds@gateway/tor-sasl/jpds) (Ping timeout: 268 seconds)
08:05:37 dcoutts_ joins (~duncan@host86-153-247-247.range86-153.btcentralplus.com)
08:05:40 × robbert-vdh quits (~robbert@robbertvanderhelm.nl) (Ping timeout: 268 seconds)
08:05:47 ubert joins (~Thunderbi@91.141.60.163.wireless.dyn.drei.com)
08:06:42 LeifTalkshowRhen joins (~LeifTalks@2001:9b0:1:1601:94:254:51:197)
08:06:51 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
08:07:35 × LeifTalkshowRhen quits (~LeifTalks@2001:9b0:1:1601:94:254:51:197) (Client Quit)
08:07:36 dcoutts joins (~duncan@host86-153-247-247.range86-153.btcentralplus.com)
08:08:17 × dcoutts__ quits (~duncan@host213-122-124-158.range213-122.btcentralplus.com) (Ping timeout: 252 seconds)
08:08:59 sandydoo joins (~sandydoo@185.209.196.166)
08:09:50 × dcoutts_ quits (~duncan@host86-153-247-247.range86-153.btcentralplus.com) (Ping timeout: 240 seconds)
08:09:50 MajorBiscuit joins (~MajorBisc@wlan-145-94-167-213.wlan.tudelft.nl)
08:12:53 × bilegeek quits (~bilegeek@2600:1008:b054:82f1:8d4a:1bbe:285e:bf1a) (Remote host closed the connection)
08:13:22 bilegeek joins (~bilegeek@2600:1008:b054:82f1:8d4a:1bbe:285e:bf1a)
08:13:39 × yauhsien quits (~yauhsien@61-231-60-109.dynamic-ip.hinet.net) (Read error: Connection reset by peer)
08:13:46 meinside joins (uid24933@id-24933.helmsley.irccloud.com)
08:14:06 yauhsien joins (~yauhsien@61-231-60-109.dynamic-ip.hinet.net)
08:15:29 stiell joins (~stiell@gateway/tor-sasl/stiell)
08:16:26 × bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
08:17:32 × mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 245 seconds)
08:17:47 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
08:18:32 mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475)
08:19:48 nunggu joins (~q@user/nunggu)
08:20:07 dcoutts_ joins (~duncan@host86-153-247-247.range86-153.btcentralplus.com)
08:20:18 × stiell quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection)
08:20:18 × noteness quits (~noteness@user/noteness) (Remote host closed the connection)
08:20:18 × adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
08:20:18 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Remote host closed the connection)
08:20:18 × azimut quits (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection)
08:20:18 × chexum quits (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
08:20:18 × winny quits (~weechat@user/winny) (Remote host closed the connection)
08:20:18 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
08:20:45 azimut joins (~azimut@gateway/tor-sasl/azimut)
08:20:55 stiell joins (~stiell@gateway/tor-sasl/stiell)
08:20:57 winny joins (~weechat@user/winny)
08:21:00 ChaiTRex joins (~ChaiTRex@user/chaitrex)
08:21:02 adanwan joins (~adanwan@gateway/tor-sasl/adanwan)
08:21:14 noteness joins (~noteness@user/noteness)
08:21:15 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
08:21:16 chexum joins (~quassel@gateway/tor-sasl/chexum)
08:22:30 × dcoutts quits (~duncan@host86-153-247-247.range86-153.btcentralplus.com) (Ping timeout: 240 seconds)
08:23:08 christiansen joins (~christian@83-95-137-75-dynamic.dk.customer.tdc.net)
08:23:09 × talismanick quits (~talismani@2601:200:c100:3850::dd64) (Ping timeout: 272 seconds)
08:24:08 dcoutts__ joins (~duncan@host86-153-247-247.range86-153.btcentralplus.com)
08:24:56 × winny quits (~weechat@user/winny) (Remote host closed the connection)
08:25:06 ccntrq joins (~Thunderbi@exit-3.office.han.de.mhd.medondo.com)
08:25:22 winny joins (~weechat@user/winny)
08:25:29 × nunggu quits (~q@user/nunggu) (Ping timeout: 268 seconds)
08:26:37 × dcoutts_ quits (~duncan@host86-153-247-247.range86-153.btcentralplus.com) (Ping timeout: 252 seconds)
08:27:40 eod|fserucas joins (~eod|fseru@89.214.149.92)
08:29:07 dcoutts_ joins (~duncan@host213-122-143-14.range213-122.btcentralplus.com)
08:30:25 matthewmosior joins (~matthewmo@173.170.253.91)
08:31:09 vglfr joins (~vglfr@145.224.94.245)
08:31:40 gmg joins (~user@user/gehmehgeh)
08:31:45 × dcoutts__ quits (~duncan@host86-153-247-247.range86-153.btcentralplus.com) (Ping timeout: 252 seconds)
08:32:05 dcoutts joins (~duncan@host86-184-129-143.range86-184.btcentralplus.com)
08:33:35 × dcoutts_ quits (~duncan@host213-122-143-14.range213-122.btcentralplus.com) (Ping timeout: 252 seconds)
08:37:15 × dcoutts quits (~duncan@host86-184-129-143.range86-184.btcentralplus.com) (Ping timeout: 252 seconds)
08:44:21 × mikoto-chan quits (~mikoto-ch@164.5.249.78) (Ping timeout: 244 seconds)
08:44:58 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2) (Remote host closed the connection)
08:45:02 × yauhsien quits (~yauhsien@61-231-60-109.dynamic-ip.hinet.net) (Remote host closed the connection)
08:47:33 yauhsien joins (~yauhsien@61-231-60-109.dynamic-ip.hinet.net)
08:48:02 × use-value quits (~Thunderbi@2a00:23c6:8a03:2f01:484d:b4da:8443:3fc3) (Ping timeout: 255 seconds)
08:55:06 × jpds1 quits (~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
08:56:19 jpds1 joins (~jpds@gateway/tor-sasl/jpds)
08:56:48 × bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
08:57:25 × vglfr quits (~vglfr@145.224.94.245) (Ping timeout: 252 seconds)
08:57:45 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
08:59:01 jespada joins (~jespada@190.7.36.46)
09:00:06 × polykernel[m] quits (~polykerne@user/polykernel) (Quit: You have been kicked for being idle)
09:00:06 × SridharRatnakuma quits (~sridmatri@2001:470:69fc:105::1c2) (Quit: You have been kicked for being idle)
09:00:27 vglfr joins (~vglfr@145.224.94.245)
09:02:27 × MajorBiscuit quits (~MajorBisc@wlan-145-94-167-213.wlan.tudelft.nl) (Quit: WeeChat 3.5)
09:03:22 × yauhsien quits (~yauhsien@61-231-60-109.dynamic-ip.hinet.net) (Remote host closed the connection)
09:04:24 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
09:04:45 × vglfr quits (~vglfr@145.224.94.245) (Ping timeout: 252 seconds)
09:05:36 yauhsien joins (~yauhsien@61-231-60-109.dynamic-ip.hinet.net)
09:08:31 MajorBiscuit joins (~MajorBisc@wlan-145-94-167-213.wlan.tudelft.nl)
09:16:51 × cheater quits (~Username@user/cheater) (Ping timeout: 252 seconds)
09:16:59 × mmhat quits (~mmh@p200300f1c70b4552ee086bfffe095315.dip0.t-ipconnect.de) (Ping timeout: 272 seconds)
09:17:17 cheater joins (~Username@user/cheater)
09:19:31 × notzmv quits (~zmv@user/notzmv) (Ping timeout: 272 seconds)
09:22:59 radhika joins (uid560836@id-560836.helmsley.irccloud.com)
09:23:35 janvogt joins (~janvogt@ip-046-005-021-186.um12.pools.vodafone-ip.de)
09:28:19 notzmv joins (~zmv@user/notzmv)
09:30:09 mmhat joins (~mmh@p200300f1c70b45dfee086bfffe095315.dip0.t-ipconnect.de)
09:30:50 × merijn quits (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds)
09:33:00 × coot quits (~coot@213.134.190.95) (Quit: coot)
09:34:28 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds)
09:35:10 <janvogt> Hello everybody, I am no IRC expert, so I hope to be in the right spot for this question. I have a Cabal (lib + exe) & Haskell project that I build using IOHKs haskell.nix. Unfortunately, the dependency closure is really large because it contains GHC itself. My current understanding as to why is that the projects‘s library somehow links dynamically to libraries shipped with GHC. I failed to bu
09:35:10 <janvogt> ild a small repro that exhibits this problem. I would be happy for any hints when GHC decides to link libraries dynamically vs. statically. Alternatively, if someone could minimize the nix closure size on a freelance basis, I‘d gladly pay for it.
09:37:15 merijn joins (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
09:37:16 coot joins (~coot@213.134.190.95)
09:38:12 sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
09:38:27 <[exa]> janvogt: can you pastebin some relevant parts of your configs? many people here use nix so I guess someone could give a hint
09:39:18 <[exa]> btw you enabled this right? https://input-output-hk.github.io/haskell.nix/reference/modules.html#enablestatic
09:40:28 <[exa]> (looking at the defaults you may better set enableShared=false :] )
09:44:35 <janvogt> exa: I could paste all nix and cabal files would that help?
09:44:47 jakalx parts (~jakalx@base.jakalx.net) (Error from remote client)
09:45:25 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2)
09:46:15 <janvogt> I‘ve not tried enableShared=false but only enableStatic=true. I will try it, and give feedback.
09:48:11 × janvogt quits (~janvogt@ip-046-005-021-186.um12.pools.vodafone-ip.de) (Remote host closed the connection)
09:49:38 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2) (Ping timeout: 240 seconds)
09:49:40 janvogt joins (~janvogt@ip-046-005-021-186.um12.pools.vodafone-ip.de)
09:50:48 × jpds1 quits (~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
09:51:17 × merijn quits (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 245 seconds)
09:51:20 jpds1 joins (~jpds@gateway/tor-sasl/jpds)
09:51:33 <[exa]> janvogt: btw which precise libraries are linked dynamically? (use `ldd`)
09:51:37 × econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity)
09:56:01 benin0 joins (~benin@106.198.93.171)
09:57:21 × benin0 quits (~benin@106.198.93.171) (Client Quit)
09:58:30 × jmdaemon quits (~jmdaemon@user/jmdaemon) (Ping timeout: 240 seconds)
10:01:53 benin0 joins (~benin@2401:4900:2323:8926:3ee4:d73a:b2a1:effe)
10:02:17 <janvogt> [exa]: ok, interesting. using enableShared=false now the exe instead of the library depends on GHC.
10:02:26 merijn joins (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
10:05:24 × benin0 quits (~benin@2401:4900:2323:8926:3ee4:d73a:b2a1:effe) (Client Quit)
10:05:25 <[exa]> janvogt: good, disable more shared stuff :D
10:05:28 <janvogt> I have to check again but rts and text where among the libraries being depended on. In the moment I am on macOS (so ldd wont work) but the problem seems not to be plattform related: With a colleague we extensively researched it on both darwin and linux.
10:05:59 matthewmosior joins (~matthewmo@173.170.253.91)
10:06:01 <janvogt> [exa]: 😅
10:06:09 <[exa]> janvogt: might be useful to have a look at compile logs to see exact ghc commands used to build the libraries and binaries
10:06:12 Pickchea joins (~private@user/pickchea)
10:06:33 benin0 joins (~benin@2401:4900:2323:8926:3ee4:d73a:b2a1:effe)
10:06:55 <[exa]> if there isn't -static, add more. :]
10:08:01 jakalx joins (~jakalx@base.jakalx.net)
10:08:40 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
10:09:44 <janvogt> is there a way to get to the exact ghc commands in a cabal build using nix? I‘m sorry if this is a stupid question, but I am researching this problem on and off for over 4 weeks. I even tried doing complete static builds, but this opened another completely different can of worms.
10:10:51 × jpds1 quits (~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
10:11:19 benin03 joins (~benin@2401:4900:2321:7f42:281b:cb15:2dba:437c)
10:11:27 jpds1 joins (~jpds@gateway/tor-sasl/jpds)
10:12:11 <albet70> how to check if all elements are equal in a list?
10:12:43 × dschrempf quits (~dominik@2a01-036d-0118-8956-029b-7129-dcbd-b481.pool6.digikabel.hu) (Ping timeout: 272 seconds)
10:13:35 × benin0 quits (~benin@2401:4900:2323:8926:3ee4:d73a:b2a1:effe) (Ping timeout: 260 seconds)
10:13:36 benin03 is now known as benin0
10:13:47 × mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 245 seconds)
10:15:15 <[exa]> albet70: as in "the list is like [1,1,1,1,1,1]" ?
10:15:23 <albet70> yes
10:15:41 <albet70> I think it's a special fold
10:15:50 × gmg quits (~user@user/gehmehgeh) (Remote host closed the connection)
10:15:55 mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475)
10:16:35 <[exa]> the empty list should return True or False? (I vote for True)
10:16:37 × merijn quits (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 252 seconds)
10:16:47 Haskelytic joins (~Haskelyti@118.179.211.17)
10:16:49 <albet70> allEqual :: Ord a => [a] -> Bool
10:16:49 gmg joins (~user@user/gehmehgeh)
10:17:20 <[exa]> hm do you really need Ord there?
10:17:46 <[exa]> anyway one nice solution can be done with `tail`, `zipWith`, (==) and `all`
10:17:55 <albet70> that a need to be compared, no need for Ord?
10:18:02 <[exa]> Eq is enough
10:18:12 <albet70> roght
10:18:14 <[exa]> Ord is for ordering, as in <, <=, >, >=
10:18:27 <[exa]> Eq gives == and /=, which should be sufficient
10:18:32 <[exa]> (in this case)
10:18:43 <albet70> did Ord contain Eq?
10:19:38 <janvogt> albet70: yes class Eq a => Ord a
10:20:16 lisbeths joins (uid135845@id-135845.lymington.irccloud.com)
10:20:26 <janvogt> see ghci> :info Ord
10:21:11 benin02 joins (~benin@183.82.30.220)
10:22:16 × zaenalmengaji quits (~a@36.72.156.240) (Remote host closed the connection)
10:23:29 × benin0 quits (~benin@2401:4900:2321:7f42:281b:cb15:2dba:437c) (Ping timeout: 272 seconds)
10:23:29 benin02 is now known as benin0
10:25:02 × sandydoo quits (~sandydoo@185.209.196.166) (Ping timeout: 245 seconds)
10:28:30 × ubert quits (~Thunderbi@91.141.60.163.wireless.dyn.drei.com) (Ping timeout: 240 seconds)
10:30:10 × burakcank quits (~burakcank@has.arrived.and.is.ready-to.party) (Remote host closed the connection)
10:31:46 <fendor[m]> there is no type-level equivalent of `($)` in base, right?
10:31:53 × bilegeek quits (~bilegeek@2600:1008:b054:82f1:8d4a:1bbe:285e:bf1a) (Quit: Leaving)
10:34:17 × xff0x quits (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 268 seconds)
10:36:00 burakcank joins (burakcank@has.arrived.and.is.ready-to.party)
10:36:01 pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
10:42:22 <[exa]> fendor[m]: no
10:43:05 <fendor[m]> thanks!
10:43:21 <[exa]> (as far as "preventing parentheses" goes. You can ofcourse implement a type family that would do the same (Identity!) but I don't think you'd like the result)
10:44:44 <albet70> > all (\a -> a == True) $ fmap (\(x,y) -> x == y) $ zip <*> tail $ [1..6]
10:44:46 <lambdabot> False
10:44:56 <[exa]> also actually the last time I checked is like 2 years ago, someone could have invented some kind of shortcut already, but I don't recall any
10:45:15 <albet70> > all (\a -> a == True) $ fmap (\(x,y) -> x == y) $ zip <*> tail $ [1,1,1]
10:45:17 <lambdabot> True
10:46:46 <[exa]> albet70: ok cool, let's simplify a bit
10:47:13 <[exa]> first, (\x->x==True) doesn't really "do anything" on bools, so we could replace it, right?
10:47:30 × yauhsien quits (~yauhsien@61-231-60-109.dynamic-ip.hinet.net) (Remote host closed the connection)
10:48:08 <[exa]> second, map (uncurry somehting) $ zip .... is usually equivalent to just `zipWith something`
10:48:14 <[exa]> btw nice trick with the <*>
10:50:03 dcoutts joins (~duncan@host81-156-211-151.range81-156.btcentralplus.com)
10:51:27 × Pickchea quits (~private@user/pickchea) (Ping timeout: 252 seconds)
10:56:44 <[Leary]> Honestly, rather than messing around with zip/zipWith/<*>/tail, you can just pattern match once and it becomes really simple.
10:56:45 × mmhat quits (~mmh@p200300f1c70b45dfee086bfffe095315.dip0.t-ipconnect.de) (Quit: WeeChat 3.6)
10:57:26 <albet70> your version?
11:00:15 dschrempf joins (~dominik@2a01-036d-0118-8956-afb4-81b9-b731-dc5d.pool6.digikabel.hu)
11:01:36 × gurkenglas quits (~gurkengla@p200300d1470e7f0003884691c0eb896c.dip0.t-ipconnect.de) (Ping timeout: 276 seconds)
11:02:36 merijn joins (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
11:03:57 × janvogt quits (~janvogt@ip-046-005-021-186.um12.pools.vodafone-ip.de) (Remote host closed the connection)
11:08:39 <albet70> > all id $ zipWith (==) <*> tail $ [1..6]
11:08:41 <lambdabot> False
11:08:59 <albet70> > all id $ zipWith (==) <*> tail $ [1,1,1]
11:09:01 <lambdabot> True
11:10:07 × gmg quits (~user@user/gehmehgeh) (Remote host closed the connection)
11:10:14 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 255 seconds)
11:11:27 gmg joins (~user@user/gehmehgeh)
11:11:28 Neuromancer joins (~Neuromanc@user/neuromancer)
11:12:07 <geekosaur> `all id` is `and`
11:16:36 <albet70> allEqual xs = and $ zipWith (==) <*> tail $ xs
11:16:45 × merijn quits (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 252 seconds)
11:17:18 <albet70> allEqual = and $ zipWith (==) <*> tail
11:17:31 <albet70> any suggestions?
11:19:11 × joo-_ quits (~joo-_@fsf/member/joo--) (Remote host closed the connection)
11:20:33 yauhsien joins (~yauhsien@61-231-60-109.dynamic-ip.hinet.net)
11:21:25 × mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 244 seconds)
11:23:16 mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475)
11:24:08 × Haskelytic quits (~Haskelyti@118.179.211.17) (Ping timeout: 252 seconds)
11:24:24 × causal quits (~user@50.35.83.177) (Quit: WeeChat 3.5)
11:28:07 <yushyin> i liked the pattern match suggestion
11:28:11 merijn joins (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
11:28:45 × califax quits (~califax@user/califx) (Remote host closed the connection)
11:30:30 califax joins (~califax@user/califx)
11:30:34 pagnol joins (~me@213-205-209-87.ftth.glasoperator.nl)
11:31:10 xff0x joins (~xff0x@ae128185.dynamic.ppp.asahi-net.or.jp)
11:31:21 <pagnol> is there a word for function like min :: Num a => a -> a -> a and max :: Num a => a -> a -> a?
11:31:25 <pagnol> *functions
11:31:39 <[exa]> extrema?
11:31:44 <pagnol> hmm.. intersting one
11:32:12 <[exa]> maybe bounds but that may have a bias in certain areas
11:32:45 × radhika quits (uid560836@id-560836.helmsley.irccloud.com) (Quit: Connection closed for inactivity)
11:32:52 × merijn quits (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 268 seconds)
11:34:06 × yauhsien quits (~yauhsien@61-231-60-109.dynamic-ip.hinet.net) (Ping timeout: 268 seconds)
11:34:28 <geekosaur> afaik those are the words. because you have e.g. local minima/maxima
11:35:40 <geekosaur> ranges, perhaps
11:36:10 yauhsien joins (~yauhsien@61-231-60-109.dynamic-ip.hinet.net)
11:36:40 × PiDelport quits (uid25146@id-25146.lymington.irccloud.com) (Quit: Connection closed for inactivity)
11:38:13 matthewmosior joins (~matthewmo@173.170.253.91)
11:39:28 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
11:40:32 × yauhsien quits (~yauhsien@61-231-60-109.dynamic-ip.hinet.net) (Ping timeout: 244 seconds)
11:40:53 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 268 seconds)
11:42:27 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
11:42:35 × matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds)
11:46:17 × acidjnk quits (~acidjnk@p5dd87aad.dip0.t-ipconnect.de) (Ping timeout: 245 seconds)
11:47:21 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2)
11:47:40 joo-_ joins (~joo-_@172-105-65-159.ip.linodeusercontent.com)
11:47:40 × joo-_ quits (~joo-_@172-105-65-159.ip.linodeusercontent.com) (Changing host)
11:47:40 joo-_ joins (~joo-_@fsf/member/joo--)
11:49:50 Haskelytic joins (~Haskelyti@118.179.211.17)
11:50:36 nunggu joins (~q@user/nunggu)
11:52:06 acidjnk joins (~acidjnk@p200300d6e7058698f05c6af7f97c583a.dip0.t-ipconnect.de)
11:52:10 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2) (Ping timeout: 260 seconds)
11:54:54 × alp__ quits (~alp@user/alp) (Ping timeout: 276 seconds)
11:56:38 × Haskelytic quits (~Haskelyti@118.179.211.17) (Quit: Client closed)
11:59:24 <kuribas> albet70: all id == and
11:59:48 sandydoo joins (~sandydoo@185.209.196.166)
12:00:28 <kuribas> oh geekosaur already told you
12:01:36 Pickchea joins (~private@user/pickchea)
12:01:42 vglfr joins (~vglfr@145.224.94.245)
12:03:29 __monty__ joins (~toonn@user/toonn)
12:03:43 <hpc> welcome to #haskell, where your questions are answered with delayed reverberation?
12:04:55 sandy_doo joins (~sandydoo@185.209.196.166)
12:05:53 × vglfr quits (~vglfr@145.224.94.245) (Ping timeout: 252 seconds)
12:06:58 × sandydoo quits (~sandydoo@185.209.196.166) (Ping timeout: 240 seconds)
12:08:10 × nunggu quits (~q@user/nunggu) (Remote host closed the connection)
12:08:43 nunggu joins (~q@user/nunggu)
12:08:58 × bontaq quits (~user@ool-45779fe5.dyn.optonline.net) (Ping timeout: 240 seconds)
12:09:38 vglfr joins (~vglfr@145.224.94.245)
12:09:44 <darkling> (...ation ... ation ... ation)
12:10:54 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
12:11:40 dvdrw joins (~dvdrw@user/dvdrw)
12:11:45 × yoneda quits (~mike@193.206.102.122) (Ping timeout: 252 seconds)
12:12:39 yoneda joins (~mike@193.206.102.122)
12:15:52 matthewmosior joins (~matthewmo@173.170.253.91)
12:16:09 yin joins (~yin@user/zero)
12:20:37 PiDelport joins (uid25146@id-25146.lymington.irccloud.com)
12:26:43 × Pickchea quits (~private@user/pickchea) (Quit: Leaving)
12:29:07 × lisbeths quits (uid135845@id-135845.lymington.irccloud.com) (Quit: Connection closed for inactivity)
12:35:18 × bliminse quits (~bliminse@user/bliminse) (Ping timeout: 240 seconds)
12:37:05 × nunggu quits (~q@user/nunggu) (Ping timeout: 268 seconds)
12:37:20 bliminse joins (~bliminse@user/bliminse)
12:39:07 dcoutts_ joins (~duncan@host81-156-211-151.range81-156.btcentralplus.com)
12:39:55 nunggu joins (~q@user/nunggu)
12:41:42 × dcoutts quits (~duncan@host81-156-211-151.range81-156.btcentralplus.com) (Ping timeout: 245 seconds)
12:45:41 ubert joins (~Thunderbi@91.141.60.163.wireless.dyn.drei.com)
12:46:06 × bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
12:47:19 <kuribas> albet70: IMO you should not use tail and the (->) Applicative.
12:47:52 <kuribas> not ever in fact
12:48:19 <kuribas> because tail is partial, and the (->) monad is obfuscation.
12:49:59 merijn joins (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
12:51:40 <int-e> > fmap succ succ 0 -- is the functor okay? ;-)
12:51:42 <lambdabot> 2
12:52:46 <int-e> > (tail . inits) [1,2,3]
12:52:47 <lambdabot> [[1],[1,2],[1,2,3]]
12:52:48 <[Leary]> Well, `zip <*> tail` is total, and as an established idiom it's also comprehensible. Its use would fine if it were actually justified---the problem is that it isn't.
12:52:56 <[Leary]> would be*
12:53:11 <maerwald> established idiom?
12:53:21 <kuribas> [Leary]: first time I see it.
12:53:30 <maerwald> me too... in 10 years of Haskell
12:53:31 <int-e> (I know that some people advocate Nonempty, but without subtypes (which are there own can of worms) that just feels cumbersome.)
12:53:58 × nunggu quits (~q@user/nunggu) (Remote host closed the connection)
12:53:59 <[Leary]> Not idiom in the sense of idiomatic, but in the sense that it's used enough to be understood in combination, if not by parts. Probably because it's commonly used for fibs.
12:54:00 <int-e> ugh, typos. NonEmpty, their.
12:54:03 <kuribas> > (zip <*> tail) []
12:54:04 <lambdabot> []
12:54:28 <kuribas> > zip [] undefined
12:54:29 <jackdk> never seen it before, but I can guess from the type
12:54:30 <lambdabot> []
12:54:30 × dschrempf quits (~dominik@2a01-036d-0118-8956-afb4-81b9-b731-dc5d.pool6.digikabel.hu) (Ping timeout: 240 seconds)
12:54:39 nunggu joins (~q@user/nunggu)
12:54:40 <jackdk> (zip <*> tail) [1..5]
12:54:46 <jackdk> > (zip <*> tail) [1..5]
12:54:48 <lambdabot> [(1,2),(2,3),(3,4),(4,5)]
12:55:41 <kuribas> int-e: but you can just avoid both with pattern matching.
12:56:29 <yin> @type zip <*> tail
12:56:30 <lambdabot> [a] -> [(a, a)]
12:56:44 × mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 268 seconds)
12:56:50 jakalx parts (~jakalx@base.jakalx.net) (Error from remote client)
12:57:43 <geekosaur> the form you usually see, for historical reasons, is zip `ap` tail
12:57:57 <geekosaur> but ap is just the old monadic version of <*>
12:58:14 <geekosaur> @quote Aztec
12:58:14 <lambdabot> alpounet says: map succ/pred is a scandinavian name generator or what? ... well, scandinavian and aztec
12:58:17 <geekosaur> @quote Aztec
12:58:17 <lambdabot> quicksilver says: zip`ap`tail - the Aztec god of consecutive numbers
12:59:09 <yin> @type (zip <*>)
12:59:10 <lambdabot> ([a] -> [b]) -> [a] -> [(a, b)]
12:59:14 <yin> oooh
13:00:09 <[Leary]> % fix $ (0:) . (1:) . (zipWith (+) <*> tail)
13:00:10 <yahb2> [0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368,75025,121393,196418,317811,514229,832040,1346269,2178309,3524578,5702887,9227465,14930352,24157817,3908...
13:00:10 <int-e> In this context, `ap` is the S combinator.
13:00:50 <int-e> > fix $ (0:) . scanl (+) 1
13:00:52 <lambdabot> [0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,10946,...
13:01:01 mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475)
13:02:48 jakalx joins (~jakalx@base.jakalx.net)
13:02:50 janvogt joins (~janvogt@ip-046-005-021-186.um12.pools.vodafone-ip.de)
13:03:50 × merijn quits (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds)
13:04:03 × janvogt quits (~janvogt@ip-046-005-021-186.um12.pools.vodafone-ip.de) (Remote host closed the connection)
13:04:10 × matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection)
13:04:16 matthewmosior joins (~matthewmo@173.170.253.91)
13:05:49 × matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection)
13:06:28 matthewmosior joins (~matthewmo@173.170.253.91)
13:07:02 × matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection)
13:07:08 matthewmosior joins (~matthewmo@173.170.253.91)
13:10:16 alp__ joins (~alp@user/alp)
13:10:46 × nunggu quits (~q@user/nunggu) (Remote host closed the connection)
13:10:57 × CiaoSen quits (~Jura@p200300c9570ffb002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Quit: CiaoSen)
13:11:17 nunggu joins (~q@user/nunggu)
13:12:37 × juri_ quits (~juri@84-19-175-179.pool.ovpn.com) (Ping timeout: 252 seconds)
13:14:44 bitmapper joins (uid464869@id-464869.lymington.irccloud.com)
13:15:56 tstat joins (~user@user/tstat)
13:18:16 dschrempf joins (~dominik@2a01-036d-0118-8956-5f46-e560-7403-2332.pool6.digikabel.hu)
13:19:38 × chexum quits (~quassel@gateway/tor-sasl/chexum) (Ping timeout: 268 seconds)
13:19:55 × raym quits (~raym@user/raym) (Remote host closed the connection)
13:19:55 chexum joins (~quassel@gateway/tor-sasl/chexum)
13:20:48 nschoe joins (~quassel@2a01:e0a:8e:a190:f3a0:8db3:24a8:2dc4)
13:24:41 naso joins (~naso@193-116-244-197.tpgi.com.au)
13:26:51 × matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection)
13:29:18 bontaq joins (~user@ool-45779fe5.dyn.optonline.net)
13:29:55 × naso quits (~naso@193-116-244-197.tpgi.com.au) ()
13:30:30 jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
13:30:32 × adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
13:30:53 adanwan joins (~adanwan@gateway/tor-sasl/adanwan)
13:33:15 matthewmosior joins (~matthewmo@173.170.253.91)
13:33:59 raym joins (~raym@user/raym)
13:36:09 × matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection)
13:36:16 matthewmosior joins (~matthewmo@173.170.253.91)
13:43:32 tremon joins (~tremon@83-84-18-241.cable.dynamic.v4.ziggo.nl)
13:44:35 juri_ joins (~juri@84-19-175-179.pool.ovpn.com)
13:48:57 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2)
13:50:02 × sandy_doo quits (~sandydoo@185.209.196.166) (Ping timeout: 245 seconds)
13:51:45 hasbae joins (~hippoid@c-98-220-13-8.hsd1.il.comcast.net)
13:52:40 jakalx parts (~jakalx@base.jakalx.net) ()
13:52:49 use-value joins (~Thunderbi@2a00:23c6:8a03:2f01:2cec:3cb3:dd6:44cd)
13:53:35 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2) (Ping timeout: 255 seconds)
13:54:38 <hasbae> the parser chapter from the Richard Bird book "Thinking Functionally With Haskell" states if we have `data Parser a = Parser (String -> [(a, String)])`, Parser a is not isomorphic to the right hand side, because of 'Parser undefined'
13:54:53 jakalx joins (~jakalx@base.jakalx.net)
13:55:13 <hasbae> wouldn't the right hand said also have the possibility of a being undefined, making it isomorphic?
13:55:38 <hasbae> in other words, why do you need to use newtype to make it isomorphic
13:55:51 <geekosaur> only in that case. but (String -> [(a, String)]) can also be undefined
13:55:56 × mncheckm quits (~mncheck@193.224.205.254) (Ping timeout: 268 seconds)
13:56:01 × califax quits (~califax@user/califx) (Ping timeout: 268 seconds)
13:56:01 × noteness quits (~noteness@user/noteness) (Ping timeout: 268 seconds)
13:56:13 <geekosaur> just like `undefined` and `Just undefined` are not isomorphic
13:56:38 × azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 268 seconds)
13:56:49 <hasbae> Parser undefined and undefined are not isomorphic. That's the reason?
13:56:51 <geekosaur> with the newtype, there is no way to distinguish `Parser undefined` from `undefined`
13:57:15 × jpds1 quits (~jpds@gateway/tor-sasl/jpds) (Ping timeout: 268 seconds)
13:57:15 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Ping timeout: 268 seconds)
13:57:16 noteness joins (~noteness@user/noteness)
13:57:18 <hasbae> because newtype strips out the constructor
13:57:52 × nunggu quits (~q@user/nunggu) (Ping timeout: 268 seconds)
13:57:52 × stiell quits (~stiell@gateway/tor-sasl/stiell) (Ping timeout: 268 seconds)
13:58:11 <geekosaur> more correctly, the constructor is a figment of the typechecker's imagination
13:58:19 <geekosaur> it's not really there
13:58:29 × gmg quits (~user@user/gehmehgeh) (Ping timeout: 268 seconds)
13:58:29 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 268 seconds)
13:58:44 <hasbae> very cool, thanks
13:59:06 × winny quits (~weechat@user/winny) (Ping timeout: 268 seconds)
13:59:30 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
13:59:35 winny joins (~weechat@user/winny)
13:59:47 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
14:00:03 jpds1 joins (~jpds@gateway/tor-sasl/jpds)
14:00:04 gmg joins (~user@user/gehmehgeh)
14:00:14 ChaiTRex joins (~ChaiTRex@user/chaitrex)
14:00:34 nunggu joins (~q@user/nunggu)
14:00:41 stiell joins (~stiell@gateway/tor-sasl/stiell)
14:00:43 azimut joins (~azimut@gateway/tor-sasl/azimut)
14:00:59 califax joins (~califax@user/califx)
14:02:05 <hasbae> why are undefined and Just undefined not isomorphic?
14:02:42 <hasbae> something about cardinality?
14:03:39 <[exa]> hasbae: you can patternmatch the `Just` from `Just undefined`, getting a (partial) bit
14:04:03 <geekosaur> > case Just undefined of { Just x -> "ok"; _ -> "nope" }
14:04:04 <lambdabot> "ok"
14:04:19 mncheckm joins (~mncheck@193.224.205.254)
14:04:22 <geekosaur> as long as you don't reach inside the Just, you're fine
14:04:36 <hasbae> because of lazy evaluation?
14:04:38 × matthewmosior quits (~matthewmo@173.170.253.91) ()
14:04:58 <geekosaur> yes, more specifically bvecause patterns only evaluate as far as they need to
14:05:10 <hasbae> TIL!
14:05:13 <geekosaur> I didn't do anything with the `x` there so it didn't matter that it was bottom
14:09:24 dudem joins (~dudem@a95-93-162-124.cpe.netcabo.pt)
14:10:16 <dudem> hi everyone, it's my second time here. First time round I fugured out that VS code was the probably the best IDE for a beginner (and better haskell support than IntelliJ)
14:10:39 <geekosaur> hello
14:10:47 <dudem> my question today is if anyone can recommend a Haskell Cookbook ?
14:11:11 <dudem> something similar to https://wiki.haskell.org/Cookbook , but more extensive
14:11:33 sandy_doo joins (~sandydoo@185.209.196.166)
14:11:45 <geekosaur> not really. look at code.
14:12:16 <geekosaur> (with some care; lens is a bit impenetrable for beginners…)
14:14:19 <yushyin> not a cookbook but i liked "What I Wish I Knew When Learning Haskell", however this no longer gets any updates
14:15:00 <yushyin> https://github.com/sdiehl/wiwinwlh
14:15:20 <geekosaur> but you can look at hledger source, for example. xmonad is good if you want to see something that does lots of IO
14:15:50 <geekosaur> there are a lot of different coding styles out there, unlike (say) Python there's no One True Way to do things
14:16:32 × azimut quits (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection)
14:17:19 azimut joins (~azimut@gateway/tor-sasl/azimut)
14:19:20 jakalx parts (~jakalx@base.jakalx.net) (Error from remote client)
14:19:22 × MajorBiscuit quits (~MajorBisc@wlan-145-94-167-213.wlan.tudelft.nl) (Ping timeout: 268 seconds)
14:20:11 × sayola1 quits (~sayola@dslb-088-064-186-217.088.064.pools.vodafone-ip.de) (Read error: Connection reset by peer)
14:20:43 × coot quits (~coot@213.134.190.95) (Quit: coot)
14:21:31 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
14:21:47 <albet70> I never comprehend that use fixed point to express fibonacci sequence
14:22:45 <dudem> yushyin: thanks, but the html and the pdf at that repo don't generate for some reason
14:22:48 jakalx joins (~jakalx@base.jakalx.net)
14:22:50 <dudem> but looks promissing
14:23:26 <dudem> i've had good experience in other languages in learning at basics and then going through the cookbooks
14:27:18 hasbae parts (~hippoid@c-98-220-13-8.hsd1.il.comcast.net) (WeeChat 3.5)
14:30:28 × dschrempf quits (~dominik@2a01-036d-0118-8956-5f46-e560-7403-2332.pool6.digikabel.hu) (Quit: WeeChat 3.6)
14:34:09 dschrempf joins (~dominik@2a01-036d-0118-8956-0974-616d-624d-bd5c.pool6.digikabel.hu)
14:39:21 × dschrempf quits (~dominik@2a01-036d-0118-8956-0974-616d-624d-bd5c.pool6.digikabel.hu) (Ping timeout: 276 seconds)
14:43:29 × catern quits (~sbaugh@2604:2000:8fc0:b:a9c7:866a:bf36:3407) (Remote host closed the connection)
14:44:55 yauhsien joins (~yauhsien@61-231-60-109.dynamic-ip.hinet.net)
14:45:13 catern joins (~sbaugh@2604:2000:8fc0:b:a9c7:866a:bf36:3407)
14:46:35 coot joins (~coot@213.134.190.95)
14:46:57 × azimut quits (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection)
14:47:19 azimut joins (~azimut@gateway/tor-sasl/azimut)
14:52:32 × mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 245 seconds)
14:54:32 mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475)
14:54:33 × vglfr quits (~vglfr@145.224.94.245) (Ping timeout: 252 seconds)
14:55:39 shriekingnoise joins (~shrieking@186.137.167.202)
14:57:45 × pagnol quits (~me@213-205-209-87.ftth.glasoperator.nl) (Quit: Leaving)
14:58:54 × yauhsien quits (~yauhsien@61-231-60-109.dynamic-ip.hinet.net) (Remote host closed the connection)
14:59:38 rekahsoft joins (~rekahsoft@bras-base-wdston4533w-grc-02-142-113-160-8.dsl.bell.ca)
15:00:28 merijn joins (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
15:04:30 × alternateved quits (~user@staticline-31-183-144-54.toya.net.pl) (Ping timeout: 240 seconds)
15:05:03 Marco joins (~user@2a02:1210:18fa:5900:a235:adab:297c:fca6)
15:05:08 × merijn quits (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 244 seconds)
15:05:48 × dudem quits (~dudem@a95-93-162-124.cpe.netcabo.pt) (Quit: Client closed)
15:06:37 <Marco> Hi folks - Newbie here with a question
15:07:17 <geekosaur> generally you should just ask
15:07:52 <Marco> I am struggling with translating a recursive function to use foldr.
15:08:04 <Marco> Here is what I have:
15:08:23 <Marco> type Assoc k v = [(k, v)]
15:08:40 <Marco> checkLut :: Eq k => Assoc k v -> Bool
15:08:47 <Marco> checkLut [] = True
15:08:56 <Marco> checkLut' (x:xs) = (fst x) `elem` (fst (unzip xs)) && checkLut xs
15:09:05 LordRishav joins (~LordRisha@user/lordrishav)
15:10:03 × califax quits (~califax@user/califx) (Remote host closed the connection)
15:10:13 <Marco> checkLut checks if the keys in my lut are unique. As an exercise I want to implement it using foldr. My problem seems to be that with foldr I do not have acces to xs for unzipping anymore...
15:10:27 califax joins (~califax@user/califx)
15:12:23 <int-e> right, this isn't a natural use case for foldr.
15:12:24 szkl joins (uid110435@id-110435.uxbridge.irccloud.com)
15:13:00 <Marco> Am I correct that it is not possible to implement using fold at all?
15:13:05 <int-e> You can still make it work if you change the return type to include extra information.
15:13:26 <int-e> Like (Bool, [k])
15:14:04 <int-e> So it would look like checkLut xs = fst (foldr ... ... xs)
15:15:08 <Marco> Let me try :-) I might come back with questions...
15:15:18 <int-e> The `checkLut'` line (typo) seems to be missing a negation btw.
15:19:15 × chomwitt quits (~chomwitt@2a02:587:dc00:5a00:46c5:b74b:2b21:d09f) (Ping timeout: 260 seconds)
15:20:53 phma_ joins (~phma@2001:5b0:211c:7568:2d02:29c3:9a41:69e9)
15:20:58 <Marco> Good point
15:21:27 × phma quits (~phma@host-67-44-208-28.hnremote.net) (Read error: Connection reset by peer)
15:25:09 phma_ is now known as phma
15:28:45 <Marco> That's going to be a hard lambda
15:31:32 user__ joins (~user@bzq-110-168-31-106.red.bezeqint.net)
15:31:47 yauhsien joins (~yauhsien@61-231-60-109.dynamic-ip.hinet.net)
15:32:07 mc47 joins (~mc47@xmonad/TheMC47)
15:33:18 × user__ quits (~user@bzq-110-168-31-106.red.bezeqint.net) (Client Quit)
15:33:38 <Marco> How would fst (foldr ... ... xs) return a (Bool, [k]) ?
15:34:46 × ccntrq quits (~Thunderbi@exit-3.office.han.de.mhd.medondo.com) (Quit: ccntrq)
15:37:32 × yauhsien quits (~yauhsien@61-231-60-109.dynamic-ip.hinet.net) (Ping timeout: 245 seconds)
15:38:16 × yoneda quits (~mike@193.206.102.122) (Quit: leaving)
15:38:17 <int-e> Marco: No, the `fst` is there to turn that (Bool,[k]) into just a Bool.
15:38:50 <int-e> So I kind of did two steps at once there, 1) change the return type, and 2) fix up the funciton so the return type is Bool again.
15:40:15 <Marco> Ah, I see. So in your last statement "change the return type to (Bool, [k])" you mean the return type for foldr? Sorry, comming from Turing-Land...
15:41:16 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Remote host closed the connection)
15:41:32 morrow joins (~user@31.168.110.106)
15:41:48 ChaiTRex joins (~ChaiTRex@user/chaitrex)
15:41:59 <int-e> Marco: yes, that's what I meant
15:48:15 × azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 268 seconds)
15:48:52 hasbae joins (~hippoid@c-98-220-13-8.hsd1.il.comcast.net)
15:49:17 <hasbae> :k Monad
15:49:18 <lambdabot> (* -> *) -> Constraint
15:49:24 vglfr joins (~vglfr@91.192.47.10)
15:49:32 <hasbae> is there a way in ghci to make that show (Type -> Type) -> Constraint
15:49:46 <geekosaur> not currently, I think there's a bug report for it
15:50:31 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2)
15:51:01 yauhsien joins (~yauhsien@61-231-60-109.dynamic-ip.hinet.net)
15:52:36 <geekosaur> mm, I don't see one
15:53:43 × christiansen quits (~christian@83-95-137-75-dynamic.dk.customer.tdc.net) (Ping timeout: 268 seconds)
15:54:25 × jespada quits (~jespada@190.7.36.46) (Quit: My MacBook has gone to sleep. ZZZzzz…)
15:54:27 <hasbae> ok, i thought I remembered seeing some option flag to turn that on
15:55:15 <geekosaur> hm, actually it looks like it works in 9.2.3
15:55:25 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2) (Ping timeout: 260 seconds)
15:55:46 <geekosaur> skkukuk «work+410:master@6e0572b» Z$ ghci-9.2.3 -XNoStarIsType
15:55:46 <geekosaur> GHCi, version 9.2.3: https://www.haskell.org/ghc/ :? for help
15:55:46 <geekosaur> ghci> :k Monad
15:55:46 <geekosaur> Monad :: (Type -> Type) -> Constraint
15:56:13 <geekosaur> (note that lambdabot is still on 9.0)
15:56:21 <hasbae> i was using 8.10.7. I'll try upgrading
15:57:10 <hasbae> with that flag it works on 8.10.7 too
15:57:13 <hasbae> thanks!
15:57:32 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
15:57:54 <geekosaur> hm, pretty sure we had someone in here around a week ago who claimed it didn't
15:58:20 <hasbae> works on my machine lol
15:58:39 × yauhsien quits (~yauhsien@61-231-60-109.dynamic-ip.hinet.net) (Ping timeout: 268 seconds)
15:59:04 <geekosaur> yeh, works here too
16:00:08 × bitonic quits (~bitonic@2001:470:69fc:105::1812) (Quit: You have been kicked for being idle)
16:02:07 <geekosaur> hm
16:02:23 <geekosaur> @let {-# LANGUAGE NoStarIsType #-}
16:02:25 <lambdabot> Defined.
16:02:29 <geekosaur> :k Monad
16:02:30 <lambdabot> (* -> *) -> Constraint
16:02:46 <geekosaur> guess lambdabot is "special"
16:04:10 merijn joins (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
16:08:47 × mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 245 seconds)
16:09:02 × sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Ping timeout: 255 seconds)
16:09:46 <fgaz> is there a way to check if two values refer to the same data? Not ==, I want to know if they point to the same thunk
16:09:58 × benin0 quits (~benin@183.82.30.220) (Quit: The Lounge - https://thelounge.chat)
16:10:43 mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475)
16:10:45 MajorBiscuit joins (~MajorBisc@2a02-a461-129d-1-6d4c-38a4-18b7-4b48.fixed6.kpn.net)
16:10:49 <fgaz> just for debugging purposes, like :print in ghci
16:10:52 <Marco> int-e: Still struggling... I have '(True, fst (unzip xs)' for the z argument to foldr. But cannot figure out the lambda.
16:11:05 <dolio> fgaz: Yeah, it's called reallyUnsafePtrEquality#
16:11:29 <Marco> Sorry, '(True, fst (unzip xs))' missing paren there...
16:12:27 × LordRishav quits (~LordRisha@user/lordrishav) (Ping timeout: 272 seconds)
16:12:31 × winny quits (~weechat@user/winny) (Remote host closed the connection)
16:12:39 <int-e> > map fst [(1,()),(2,())]
16:12:40 <lambdabot> [1,2]
16:12:52 <fgaz> dolio: thanks!
16:13:35 winny joins (~weechat@user/winny)
16:13:49 sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
16:14:10 × ubert quits (~Thunderbi@91.141.60.163.wireless.dyn.drei.com) (Ping timeout: 240 seconds)
16:15:26 × MajorBiscuit quits (~MajorBisc@2a02-a461-129d-1-6d4c-38a4-18b7-4b48.fixed6.kpn.net) (Client Quit)
16:15:44 <fgaz> hmm... what was the extension that allows to use primops?
16:16:05 <int-e> Marco: Have you considered giving the step function a name? checkLut xs = fst (foldr step ... xs) where step = ...; the advantage of this is that it's slightly less messy and that you can give `step` a type signature, which may help you to think about what it should do
16:16:17 × merijn quits (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 245 seconds)
16:16:21 <dolio> fgaz: You mean # in the name? MagicHash.
16:16:27 <fgaz> found it, magichash
16:16:43 <Marco> int-e: Good tip! I'll try...
16:16:49 <dolio> fgaz: Note also that that function might not give reliable answers.
16:17:15 <int-e> Marco: There's also an easier (well, to my mind) value to start from.
16:17:54 <Marco> Let me now what is in your mind. Might make my mind grow :-)
16:18:48 dschrempf joins (~dominik@2a01-036d-0118-8956-3704-b7bc-7a1e-769a.pool6.digikabel.hu)
16:19:19 <fgaz> dolio: why is that?
16:20:13 <int-e> Marco: well, [] is the simplest list value.
16:20:35 <geekosaur> a GC could conceivably happen in between, in which case the address will change
16:21:00 <geekosaur> or one or the other might get forced
16:21:12 <geekosaur> (think threads)
16:21:13 <Marco> int-e: Yes, that's the base case in my recursive implementation.
16:22:14 <Marco> int-e: But I can't find out how that would help me using foldr.
16:23:41 <geekosaur> so there's a low chance of a false negative and a very low chance of a false positive (if a value that is different just happens to move the wrong way). which is why ot's reallyUnsafe
16:23:44 <geekosaur> *it's
16:24:21 × adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
16:24:21 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
16:24:21 × stiell quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection)
16:24:21 × nunggu quits (~q@user/nunggu) (Remote host closed the connection)
16:24:51 <int-e> Marco: Well, you need that `fst (unzip xs)` value, right, but foldr doesn't give that to you directly... but what if you were to compute it on the fly? That is, the second element of the (Bool,[k]) pair will be the whole list of keys...
16:24:55 <fgaz> geekosaur: gc makes sense, but why would forcing make a difference?
16:25:12 stiell joins (~stiell@gateway/tor-sasl/stiell)
16:25:18 <geekosaur> because a thunk at one address is replaced by a value possibly at a different address
16:25:20 <int-e> Marco: That's what I'd aim for here.
16:25:30 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
16:25:34 × stiell quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection)
16:26:16 nunggu joins (~q@user/nunggu)
16:26:20 <geekosaur> (the pointer is overwritten, the thing pointed to is not usually mutated)
16:26:29 stiell joins (~stiell@gateway/tor-sasl/stiell)
16:27:02 <Marco> int-e: That's what I am trying to achive with 'checkLut'' xs = fst (foldr step (True, fst (unzip xs)) xs)'
16:27:42 × zxx7529 quits (~Thunderbi@user/zxx7529) (Remote host closed the connection)
16:27:47 alternateved joins (~user@staticline-31-183-144-54.toya.net.pl)
16:28:51 <int-e> Marco: But the second argument of `foldr` corresponds to the base case, when the list is empty.
16:29:08 <int-e> Marco: so you should have an empty list there then
16:29:17 × alp__ quits (~alp@user/alp) (Ping timeout: 255 seconds)
16:29:58 <int-e> And `step` will be responsible for adding elements to the result.
16:31:08 × raym quits (~raym@user/raym) (Remote host closed the connection)
16:31:15 <Marco> int-e: So the second argument to foldr would be '(True, [])' then. Sorry for not understanding, torturing my head since hours with this problem.
16:31:23 × yin quits (~yin@user/zero) (Quit: Lost terminal)
16:31:29 × alternateved quits (~user@staticline-31-183-144-54.toya.net.pl) (Remote host closed the connection)
16:32:32 merijn joins (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
16:32:39 <int-e> That's not unexpected... recursion is hard, and foldr adds a level of abstraction on top of that. It's learnable, of course :)
16:32:44 adanwan joins (~adanwan@gateway/tor-sasl/adanwan)
16:32:53 <geekosaur> fgaz, and if it's not clear, this can happen between looking at one pointer and looking at the other, so they may both get updated but it's too late
16:33:03 <geekosaur> hence my comment about threads
16:33:39 <int-e> reallyUnsafePtrEquality# does not have false positives.
16:33:48 <int-e> It's a primop, there's no intervening GC.
16:34:18 <geekosaur> there was at one point some locking to ensure two threads couldn't contend over a thunk, it was found to slow things down more than just letting both threads do the update since it was pure and therefore both would get the same result
16:34:35 <int-e> It can do crazy things, in particular it can be true, then false again.
16:34:37 yin joins (~yin@user/zero)
16:35:52 gok joins (~gok@2601:282:d00:a110:1483:7467:3a7f:8d4b)
16:35:56 <int-e> You can lose sharing later, sure.
16:37:52 tzh joins (~tzh@c-24-21-73-154.hsd1.or.comcast.net)
16:38:10 econo joins (uid147250@user/econo)
16:38:46 <Marco> int-e: If I am not totally wrong then type signature for step would be: 'step :: Eq k => Assoc k v -> [(Bool, [k])] -> (Bool, [k])'
16:38:46 <Marco>
16:39:17 <int-e> Marco: hmm, no.
16:39:17 <fgaz> geekosaur: i vaguely remember hearing about that slowdown in a lecture
16:39:20 <int-e> :t foldr
16:39:21 <lambdabot> Foldable t => (a -> b -> b) -> b -> t a -> b
16:39:29 <fgaz> is there a document with all the details?
16:39:40 LordRishav joins (~LordRisha@user/lordrishav)
16:39:58 <int-e> Marco: the second argument and the result need to be the same. and the first argument will be a list element (from the Assoc k v type)
16:40:03 × adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Ping timeout: 268 seconds)
16:40:03 × nunggu quits (~q@user/nunggu) (Ping timeout: 268 seconds)
16:40:45 <geekosaur> fgaz, I imagine it's a Note somewhere in the RTS source
16:41:49 × vglfr quits (~vglfr@91.192.47.10) (Ping timeout: 268 seconds)
16:42:06 × nschoe quits (~quassel@2a01:e0a:8e:a190:f3a0:8db3:24a8:2dc4) (Ping timeout: 264 seconds)
16:42:09 <int-e> geekosaur: I guess you have loss of sharing in mind when you speak of a false positive. While my view on reallyUnsafePtrEquality# is as an approximation of equality, so loss of sharing isn't really an issue as long as nobody violates purity. (Which, ironically, is easy to accomplish when reallyUnsafePtrEquality# is being used because that function *is* impure)
16:42:31 × stiell quits (~stiell@gateway/tor-sasl/stiell) (Ping timeout: 268 seconds)
16:42:31 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Ping timeout: 268 seconds)
16:42:36 vglfr joins (~vglfr@91.192.47.10)
16:42:39 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2)
16:42:43 <geekosaur> true, because it can observe what shouldn't be observable
16:46:37 alternateved joins (~user@staticline-31-183-144-54.toya.net.pl)
16:46:42 × merijn quits (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 245 seconds)
16:47:13 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
16:47:30 × eod|fserucas quits (~eod|fseru@89.214.149.92) (Quit: Leaving)
16:48:30 × sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Ping timeout: 240 seconds)
16:49:58 × mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 240 seconds)
16:52:09 mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475)
16:52:37 gurkenglas joins (~gurkengla@p548ac3c5.dip0.t-ipconnect.de)
16:52:57 ChaiTRex joins (~ChaiTRex@user/chaitrex)
16:53:37 × abrar quits (~abrar@static-108-2-152-54.phlapa.fios.verizon.net) (Ping timeout: 272 seconds)
16:57:19 nunggu joins (~q@user/nunggu)
16:57:39 × coot quits (~coot@213.134.190.95) (Quit: coot)
16:58:33 <Marco> int-e: Got to go for dinner now. Thanks for your generous help! Hope I'll be able to solve my puzzle tomorrow.
16:58:53 × alternateved quits (~user@staticline-31-183-144-54.toya.net.pl) (Read error: Connection reset by peer)
16:59:07 raym joins (~raym@user/raym)
16:59:18 alternateved joins (~user@staticline-31-183-144-54.toya.net.pl)
16:59:38 × cyphase quits (~cyphase@user/cyphase) (Ping timeout: 240 seconds)
17:00:03 joo-__ joins (~joo-_@172-105-65-159.ip.linodeusercontent.com)
17:00:03 × joo-__ quits (~joo-_@172-105-65-159.ip.linodeusercontent.com) (Changing host)
17:00:03 joo-__ joins (~joo-_@fsf/member/joo--)
17:00:36 adanwan joins (~adanwan@gateway/tor-sasl/adanwan)
17:02:33 × Marco quits (~user@2a02:1210:18fa:5900:a235:adab:297c:fca6) (Remote host closed the connection)
17:02:35 christiansen joins (~christian@83-95-137-75-dynamic.dk.customer.tdc.net)
17:05:47 × chele quits (~chele@user/chele) (Remote host closed the connection)
17:07:11 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 268 seconds)
17:08:04 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
17:09:45 stiell joins (~stiell@gateway/tor-sasl/stiell)
17:11:19 × raym quits (~raym@user/raym) (Ping timeout: 252 seconds)
17:12:52 × mbuf quits (~Shakthi@122.165.55.71) (Quit: Leaving)
17:13:46 × califax quits (~califax@user/califx) (Remote host closed the connection)
17:15:45 califax joins (~califax@user/califx)
17:24:23 × zeenk quits (~zeenk@2a02:2f04:a311:2d00:6865:d863:4c93:799f) (Quit: Konversation terminated!)
17:27:07 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
17:27:51 Guest25 joins (~Guest25@047-227-172-200.res.spectrum.com)
17:28:24 × notzmv quits (~zmv@user/notzmv) (Read error: Connection reset by peer)
17:29:19 × vglfr quits (~vglfr@91.192.47.10) (Read error: Connection reset by peer)
17:29:57 vglfr joins (~vglfr@91.192.47.10)
17:30:06 × vglfr quits (~vglfr@91.192.47.10) (Read error: Connection reset by peer)
17:30:29 vglfr joins (~vglfr@91.192.47.10)
17:33:56 <qrpnxz> til i can do Constraint n => Constraint m => instead of (Constraint n, Constraint m) =>. That just made my life surprisingly better
17:34:41 × Guest25 quits (~Guest25@047-227-172-200.res.spectrum.com) (Quit: Client closed)
17:35:09 coot joins (~coot@213.134.190.95)
17:35:51 <geekosaur> not sure I'd want to trust that too far since it's technically a violation
17:37:26 × stiell quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection)
17:37:33 cyphase joins (~cyphase@user/cyphase)
17:37:48 stiell joins (~stiell@gateway/tor-sasl/stiell)
17:37:55 × mc47 quits (~mc47@xmonad/TheMC47) (Remote host closed the connection)
17:38:50 × LordRishav quits (~LordRisha@user/lordrishav) (Ping timeout: 240 seconds)
17:40:17 × coot quits (~coot@213.134.190.95) (Ping timeout: 252 seconds)
17:40:42 × marquis_andras quits (~marquis_a@202-161-119-113.tpgi.com.au) (Ping timeout: 276 seconds)
17:42:05 marquis_andras joins (~marquis_a@124-150-76-210.tpgi.com.au)
17:50:21 × PiDelport quits (uid25146@id-25146.lymington.irccloud.com) (Quit: Connection closed for inactivity)
17:50:52 <qrpnxz> if they fix this "bug", i will cry
17:52:41 notzmv joins (~zmv@user/notzmv)
17:53:28 × gok quits (~gok@2601:282:d00:a110:1483:7467:3a7f:8d4b) (Quit: Client closed)
17:53:35 <qrpnxz> man, i can't meaningfully understand the billion categories that Pipes exposes. The only that i think i get are the producer and consumer ones, the other seem might be useful to model some kind of server client relation, but hard to reason about.
17:55:32 <geekosaur> aren't producer and consumer endpoints, and the others various kinds of stream filters or splitters/combiners?
17:55:33 <monochrom> Personally, and generally and vaguely speaking, I would just want to know producers, transducers, and consumers, and that's it.
17:55:57 <monochrom> (Corollary: I might just go with the machines package :)
17:56:15 WaxCPU is now known as Andrew
17:56:28 <qrpnxz> i'm mostling using the streaming package atm. I can do consumer by choosing the reader monad, it's kind of mind blowing
17:56:54 <monochrom> Hrm, that's sounds surprising, yeah :)
17:57:15 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
17:57:44 <monochrom> Then again the way "Functor f => (s -> f t) -> (a -> f b)" can become a getter by giving it a Const functor was surprising too :)
17:58:16 <qrpnxz> heh yes that's neat-o
17:58:48 causal joins (~user@50.35.83.177)
17:58:57 <monochrom> <Layperson> Dear Mathematician, how do you visualize 6 dimensions? <Mathematician> Visualize n dimensions, then let n=6.
17:58:59 Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915)
17:59:09 <qrpnxz> traversals are just 10000 IQ, you can get a zipper from any traversal. mapAccum* gives you the state you'd expect in traditional languages
17:59:10 <tomsmeding> qrpnxz: that double => trick already doesn't work with pattern synonyms, where double => have a different, specific meaning
17:59:37 × Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 245 seconds)
17:59:45 <qrpnxz> mmm, alright, good to know
18:00:14 Lord_of_Life_ is now known as Lord_of_Life
18:00:29 <tomsmeding> (required constraints (when using in an expression) and provided constraints (resulting from a pattern match on it))
18:00:33 talismanick joins (~talismani@campus-019-177.ucdavis.edu)
18:00:51 <qrpnxz> lol
18:01:04 <qrpnxz> kind of a syntax smell in patterns, but useful
18:01:15 <tomsmeding> Provided constraints are basically gadt-like behaviour
18:01:18 <monochrom> Uhhh that is going to be confusing...
18:01:32 <tomsmeding> Yeah the pattern synonym type signature syntax is confusing
18:01:49 <monochrom> In particular everyone has a 50% chance of misremembering that order!
18:02:42 <monochrom> I have had enough hard time getting through the skulls of my students that x86 uses little endian :)
18:03:03 <mesaoptimizer> hey, I recall registering on gitlab.haskell.org with my IRC nick as my username to report a failure of GHC on arch linux. I think my application for an account is still stuck in the mod queue
18:03:20 <monochrom> And to think that 8 days from now I will be teaching TCP sockets so there will be big endian too.
18:03:20 <mesaoptimizer> (by which I mean I didn't get any notification that an account has been made)
18:04:11 <geekosaur> mesaoptimizer, try #ghc but I don't know if anyone with mod queue perms is around today
18:04:18 <geekosaur> (Ben at least is on holiday)
18:04:46 <mesaoptimizer> thanks and yes, that isn't a big deal, I'm just preparing for later
18:05:02 × vglfr quits (~vglfr@91.192.47.10) (Read error: Connection reset by peer)
18:05:16 vglfr joins (~vglfr@91.192.47.10)
18:07:32 × talismanick quits (~talismani@campus-019-177.ucdavis.edu) (Ping timeout: 245 seconds)
18:07:47 zebrag joins (~chris@user/zebrag)
18:10:01 zer0bitz_ joins (~zer0bitz@2001:2003:f748:2000:7961:dddf:faaf:d83c)
18:12:06 × zer0bitz quits (~zer0bitz@2001:2003:f748:2000:ccfe:106b:4731:3eea) (Ping timeout: 264 seconds)
18:14:24 zer0bitz joins (~zer0bitz@2001:2003:f748:2000:98f8:2cf6:f3d:5610)
18:16:18 × zer0bitz_ quits (~zer0bitz@2001:2003:f748:2000:7961:dddf:faaf:d83c) (Ping timeout: 264 seconds)
18:22:42 misterfish joins (~misterfis@ip214-130-173-82.adsl2.static.versatel.nl)
18:26:17 × vglfr quits (~vglfr@91.192.47.10) (Ping timeout: 245 seconds)
18:27:17 vglfr joins (~vglfr@91.192.47.10)
18:29:13 mvk joins (~mvk@2607:fea8:5ce3:8500::909a)
18:30:18 <EvanR> monochrom, you're lucky you're not teaching tcp plus ethernet, so there is endianness and bit order xD
18:35:37 Andrew is now known as WaxCPU
18:35:45 <koala_man> I got a "Prelude.foldl1: empty list" with no backtrace and no foldl1 in my code. Eventually found it happened in the fgl dominator algorithm, but I wasn't able to reproduce it via repl when invoking on the exact same graph
18:36:33 <koala_man> finally figured out I had gotten the internal representation into a bad state by using the graph builder operator (&) on a node that already existed
18:36:51 <koala_man> "Behaviour is undefined if the specified 'Node' already exists" the docs say, and indeed
18:37:02 <dsal> Yeah, that's why if you need something like that, you want semigroupoids
18:37:54 <dsal> "undefined for" && "compiles" isn't a great mix if you can avoid it.
18:39:10 <koala_man> "runtime that only allows print debugging" && "misrepresenting Show instances" was also not the best combo
18:39:23 × vglfr quits (~vglfr@91.192.47.10) (Ping timeout: 272 seconds)
18:39:59 <dsal> Heh. Yep.
18:41:16 vglfr joins (~vglfr@91.192.47.10)
18:44:31 × bitmapper quits (uid464869@id-464869.lymington.irccloud.com) (Quit: Connection closed for inactivity)
18:55:17 <qrpnxz> regarding pipes request response, this SO question helped!: https://stackoverflow.com/questions/59333006/using-request-and-response-in-with-the-pipes-library-for-bidirectional-communica
18:57:08 dcoutts__ joins (~duncan@host81-156-211-151.range81-156.btcentralplus.com)
18:58:45 × vglfr quits (~vglfr@91.192.47.10) (Ping timeout: 252 seconds)
18:59:57 × dcoutts_ quits (~duncan@host81-156-211-151.range81-156.btcentralplus.com) (Ping timeout: 268 seconds)
19:01:13 × dcoutts__ quits (~duncan@host81-156-211-151.range81-156.btcentralplus.com) (Remote host closed the connection)
19:01:19 yauhsien joins (~yauhsien@61-231-60-109.dynamic-ip.hinet.net)
19:01:36 dcoutts__ joins (~duncan@host81-156-211-151.range81-156.btcentralplus.com)
19:01:50 vglfr joins (~vglfr@91.192.47.10)
19:02:47 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 252 seconds)
19:04:45 × adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
19:04:45 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Remote host closed the connection)
19:04:46 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
19:05:21 ChaiTRex joins (~ChaiTRex@user/chaitrex)
19:05:22 adanwan joins (~adanwan@gateway/tor-sasl/adanwan)
19:05:23 Pickchea joins (~private@user/pickchea)
19:06:44 × yauhsien quits (~yauhsien@61-231-60-109.dynamic-ip.hinet.net) (Ping timeout: 268 seconds)
19:08:37 dcoutts_ joins (~duncan@host81-156-211-151.range81-156.btcentralplus.com)
19:09:37 × sandy_doo quits (~sandydoo@185.209.196.166) (Ping timeout: 245 seconds)
19:10:01 × nunggu quits (~q@user/nunggu) (Remote host closed the connection)
19:10:01 × califax quits (~califax@user/califx) (Remote host closed the connection)
19:10:01 × stiell quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection)
19:10:01 × winny quits (~weechat@user/winny) (Remote host closed the connection)
19:10:01 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
19:10:29 × vglfr quits (~vglfr@91.192.47.10) (Ping timeout: 252 seconds)
19:10:37 stiell joins (~stiell@gateway/tor-sasl/stiell)
19:10:40 nunggu joins (~q@user/nunggu)
19:11:13 × dcoutts__ quits (~duncan@host81-156-211-151.range81-156.btcentralplus.com) (Ping timeout: 252 seconds)
19:11:53 dcoutts joins (~duncan@host86-151-9-96.range86-151.btcentralplus.com)
19:12:13 winny joins (~weechat@user/winny)
19:12:17 vglfr joins (~vglfr@91.192.47.10)
19:12:59 califax joins (~califax@user/califx)
19:13:05 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
19:13:30 × dcoutts_ quits (~duncan@host81-156-211-151.range81-156.btcentralplus.com) (Ping timeout: 240 seconds)
19:19:30 × vglfr quits (~vglfr@91.192.47.10) (Read error: Connection reset by peer)
19:19:41 vglfr joins (~vglfr@91.192.47.10)
19:22:09 × mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 268 seconds)
19:23:47 mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475)
19:36:35 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2) (Remote host closed the connection)
19:37:22 jinsun__ joins (~jinsun@user/jinsun)
19:37:22 jinsun is now known as Guest7049
19:37:22 jinsun__ is now known as jinsun
19:40:32 × Guest7049 quits (~jinsun@user/jinsun) (Ping timeout: 255 seconds)
19:41:47 sandy_doo joins (~sandydoo@185.209.196.166)
19:46:03 × vglfr quits (~vglfr@91.192.47.10) (Ping timeout: 252 seconds)
19:47:32 codaraxis joins (~codaraxis@user/codaraxis)
19:48:26 vglfr joins (~vglfr@91.192.47.10)
19:50:11 <catern> hi #haskell, is there a standard length + index function on lists which, if the passed index is too large, returns the length of the list? I want this for indexing into lists of lists
19:50:49 × tstat quits (~user@user/tstat) (Ping timeout: 252 seconds)
19:52:16 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:357f:5f50:899a:d5a4)
19:53:12 <monochrom> No.
19:53:49 chomwitt joins (~chomwitt@2a02:587:dc00:5a00:7b16:6292:46ec:6d6d)
19:54:18 <kuribas> :t \n -> (!!) n . concatMap
19:54:19 <lambdabot> error:
19:54:19 <lambdabot> • Couldn't match type ‘t0 a -> [b]’ with ‘Int’
19:54:20 <lambdabot> Expected type: (a -> [b]) -> Int
19:54:30 <kuribas> :t \n -> (!! n) . concatMap
19:54:31 <lambdabot> error:
19:54:31 <lambdabot> • Couldn't match type ‘t0 a -> [b]’ with ‘[c]’
19:54:32 <lambdabot> Expected type: (a -> [b]) -> [c]
19:55:15 <kuribas> :t \n -> (!! n) . concat
19:55:16 <lambdabot> Foldable t => Int -> t [c] -> c
19:55:24 <kuribas> -- catern?
19:56:11 <kuribas> > (!! 5) . concat $ [[2, 1, 3], [5, 4, 7]]
19:56:13 <lambdabot> 7
19:57:51 <catern> yes that works, but I also am just curious about the function I described
20:07:49 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:357f:5f50:899a:d5a4) (Remote host closed the connection)
20:07:52 × adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Ping timeout: 268 seconds)
20:09:07 adanwan joins (~adanwan@gateway/tor-sasl/adanwan)
20:12:32 × phma quits (~phma@2001:5b0:211c:7568:2d02:29c3:9a41:69e9) (Read error: Connection reset by peer)
20:12:40 × Pickchea quits (~private@user/pickchea) (Quit: Leaving)
20:12:58 Pickchea joins (~private@user/pickchea)
20:13:11 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 252 seconds)
20:14:23 × dschrempf quits (~dominik@2a01-036d-0118-8956-3704-b7bc-7a1e-769a.pool6.digikabel.hu) (Ping timeout: 272 seconds)
20:19:16 sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
20:24:32 wrengr joins (~wrengr@201.59.83.34.bc.googleusercontent.com)
20:26:22 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:357f:5f50:899a:d5a4)
20:30:56 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:357f:5f50:899a:d5a4) (Ping timeout: 255 seconds)
20:35:59 × Tuplanolla quits (~Tuplanoll@91-159-68-5.elisa-laajakaista.fi) (Quit: Leaving.)
20:36:41 × ralu1 quits (~ralu@static.211.245.203.116.clients.your-server.de) (Quit: Ping timeout (120 seconds))
20:36:50 ralu1 joins (~ralu@static.211.245.203.116.clients.your-server.de)
20:44:52 dschrempf joins (~dominik@2a01-036d-0118-8956-e876-60fa-f5d5-ad0b.pool6.digikabel.hu)
20:45:08 × coco quits (~coco@212-51-146-199.fiber7.init7.net) (Quit: WeeChat 3.5)
20:47:18 × dschrempf quits (~dominik@2a01-036d-0118-8956-e876-60fa-f5d5-ad0b.pool6.digikabel.hu) (Client Quit)
20:48:30 × hgolden quits (~hgolden2@cpe-172-251-233-141.socal.res.rr.com) (Quit: Konversation terminated!)
20:49:37 × gurkenglas quits (~gurkengla@p548ac3c5.dip0.t-ipconnect.de) (Ping timeout: 245 seconds)
20:51:28 gurkenglas joins (~gurkengla@p548ac65f.dip0.t-ipconnect.de)
20:52:37 <dsal> catern: If you need that, you probably need a different data structure.
20:52:40 <[exa]> catern: one of the reasons is that you shouldn't really index into lists.
20:52:59 <[exa]> (also, infinite lists)
20:53:52 <[exa]> what type should it be? returning an Either?
20:54:19 <dsal> > repeat 1 !! ∞
20:54:21 <lambdabot> <hint>:1:13: error: parse error on input ‘∞’
20:54:24 phma joins (~phma@host-67-44-208-69.hnremote.net)
20:56:08 sonologico joins (~raphael@dhcp-077-251-118-129.chello.nl)
20:56:32 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:357f:5f50:899a:d5a4)
20:58:19 × drlkf quits (~drlkf@drlkf.net) (Quit: q=)
20:58:49 drlkf joins (~drlkf@drlkf.net)
21:00:36 × Pickchea quits (~private@user/pickchea) (Quit: Leaving)
21:02:41 × christiansen quits (~christian@83-95-137-75-dynamic.dk.customer.tdc.net) (Ping timeout: 252 seconds)
21:04:14 hgolden joins (~hgolden2@cpe-172-251-233-141.socal.res.rr.com)
21:07:07 × sandy_doo quits (~sandydoo@185.209.196.166) (Ping timeout: 245 seconds)
21:07:55 retropikzel joins (9d1a4f9f46@2604:bf00:561:2000::ce)
21:08:01 king_gs joins (~Thunderbi@2806:103e:29:a1b3:d33d:90f:3255:af90)
21:09:55 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
21:10:40 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
21:16:07 dcoutts_ joins (~duncan@host86-151-9-96.range86-151.btcentralplus.com)
21:18:57 <tomsmeding> > (∞) = (∞) + 1
21:18:59 <lambdabot> <hint>:1:5: error: parse error on input ‘=’
21:19:12 × dcoutts quits (~duncan@host86-151-9-96.range86-151.btcentralplus.com) (Ping timeout: 245 seconds)
21:19:58 <monochrom> yahb2 has a much better chance with that.
21:20:12 <monochrom> for lambdabot you have to do a "let ... in ..." thing.
21:20:13 × __monty__ quits (~toonn@user/toonn) (Quit: leaving)
21:20:20 <geekosaur> or @let
21:20:23 <tomsmeding> @let (∞) = (∞) + 1
21:20:24 <lambdabot> Defined.
21:20:34 <tomsmeding> > repeat 1 !! (∞)
21:20:37 <lambdabot> *Exception: <<loop>>
21:21:45 <monochrom> communist everyone looks towards upper-right-corner infinity meme :)
21:22:22 <monochrom> Wait a second why are they all upper-right not upper-left?!
21:23:23 <darkling> They're looking to *their* left...
21:23:38 <monochrom> Oh I missed that heh
21:23:52 <monochrom> I guess that's dialectic double-speak for us.
21:23:55 <darkling> *Do* pay attention, 007...
21:27:38 × nunggu quits (~q@user/nunggu) (Remote host closed the connection)
21:28:56 nunggu joins (~q@user/nunggu)
21:34:28 × stiell quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection)
21:35:02 stiell joins (~stiell@gateway/tor-sasl/stiell)
21:35:23 × gmg quits (~user@user/gehmehgeh) (Quit: Leaving)
21:39:38 bollu joins (~bollu@159.65.151.13)
21:48:17 <qrpnxz> codensity really do wonders for replicateM... 😊
21:48:50 × michalz quits (~michalz@185.246.204.89) (Remote host closed the connection)
21:49:21 <monochrom> Does it save memory?
21:52:34 jmdaemon joins (~jmdaemon@user/jmdaemon)
21:55:51 <qrpnxz> yes a lot. In particular, if you want to replicate a Stream action, definitely definitely do (lowerCodensity . replicateM n . lift). Turns a quadratic into linear
21:55:54 <qrpnxz> monochrom:
21:56:26 <monochrom> Nice.
21:56:37 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
21:56:41 <monochrom> I need to work out why, when I have time :)
21:57:49 <qrpnxz> whereas Conduit opted for CPS by default, streaming and pipes didn't. For pipes there are numbers showing it's a trade off. If you CPS some ops are slower, but this stops being quadratic. Because non-cps is easier to reason about and gives better numbers for composition (i think that's what it was) Pipes opted to not do CPS, and instead let the user do codensity when needed. I will link you some
21:57:51 <qrpnxz> relevant threads one sec
21:58:20 <qrpnxz> https://github.com/Gabriella439/Haskell-Pipes-Library/issues/100
21:58:45 <qrpnxz> well, i'll just link that one
21:58:50 <qrpnxz> monochrom:
21:59:45 <qrpnxz> i think it has to do with the associativity of the binds
22:01:36 <qrpnxz> if you don't need the result of the replicate (i.e. you do replicateM_) i think you don't need the codensity it looks like.
22:01:49 <qrpnxz> which makes sense
22:02:58 <monochrom> I heard that free monads also have that. The ADT version Free vs the CPS version F
22:03:59 × califax quits (~califax@user/califx) (Remote host closed the connection)
22:04:49 califax joins (~califax@user/califx)
22:05:50 × acidjnk quits (~acidjnk@p200300d6e7058698f05c6af7f97c583a.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
22:05:51 × AlexNoo quits (~AlexNoo@178.34.150.131) (Read error: Connection reset by peer)
22:06:13 AlexNoo joins (~AlexNoo@178.34.150.131)
22:06:44 × chomwitt quits (~chomwitt@2a02:587:dc00:5a00:7b16:6292:46ec:6d6d) (Ping timeout: 244 seconds)
22:06:51 <qrpnxz> indeed Stream is a free monad i believe, and Pipes's Proxy is equivalent to Stream with a particular Functor
22:07:44 Haskelytic joins (~Haskelyti@118.179.211.17)
22:08:45 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:357f:5f50:899a:d5a4) (Remote host closed the connection)
22:13:01 [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470)
22:16:02 × mvk quits (~mvk@2607:fea8:5ce3:8500::909a) (Ping timeout: 244 seconds)
22:17:03 jespada joins (~jespada@181.80.249.105)
22:19:07 dcoutts joins (~duncan@host86-155-218-223.range86-155.btcentralplus.com)
22:19:27 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:357f:5f50:899a:d5a4)
22:21:09 × dcoutts_ quits (~duncan@host86-151-9-96.range86-151.btcentralplus.com) (Ping timeout: 252 seconds)
22:23:37 dcoutts_ joins (~duncan@host86-155-218-223.range86-155.btcentralplus.com)
22:25:52 × dcoutts quits (~duncan@host86-155-218-223.range86-155.btcentralplus.com) (Ping timeout: 245 seconds)
22:26:18 jinsun__ joins (~jinsun@user/jinsun)
22:26:18 jinsun is now known as Guest184
22:26:18 × Guest184 quits (~jinsun@user/jinsun) (Killed (molybdenum.libera.chat (Nickname regained by services)))
22:26:18 jinsun__ is now known as jinsun
22:27:01 × alternateved quits (~user@staticline-31-183-144-54.toya.net.pl) (Remote host closed the connection)
22:29:05 × takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
22:32:36 mvk joins (~mvk@2607:fea8:5ce3:8500::909a)
22:34:07 × sonologico quits (~raphael@dhcp-077-251-118-129.chello.nl) (Ping timeout: 244 seconds)
22:36:57 × Haskelytic quits (~Haskelyti@118.179.211.17) (Quit: Client closed)
22:39:24 Sgeo joins (~Sgeo@user/sgeo)
22:43:58 Gambino joins (~textual@user/polo)
22:46:01 × Gambino quits (~textual@user/polo) (Client Quit)
22:47:03 sonologico joins (~raphael@dhcp-077-251-118-129.chello.nl)
22:48:47 × misterfish quits (~misterfis@ip214-130-173-82.adsl2.static.versatel.nl) (Ping timeout: 245 seconds)
22:49:30 × machinedgod quits (~machinedg@d172-219-86-154.abhsia.telus.net) (Ping timeout: 240 seconds)
22:51:17 × sonologico quits (~raphael@dhcp-077-251-118-129.chello.nl) (Ping timeout: 245 seconds)
22:52:59 Haskelytic joins (~Haskelyti@118.179.211.17)
22:54:13 naso joins (~naso@193-116-244-197.tpgi.com.au)
23:00:53 jargon joins (~jargon@184.101.188.251)
23:04:32 sonologico joins (~raphael@dhcp-077-251-118-129.chello.nl)
23:06:36 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
23:09:37 × sonologico quits (~raphael@dhcp-077-251-118-129.chello.nl) (Ping timeout: 245 seconds)
23:10:32 × stiell quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection)
23:11:04 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
23:11:05 stiell joins (~stiell@gateway/tor-sasl/stiell)
23:12:10 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
23:16:57 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:357f:5f50:899a:d5a4) (Remote host closed the connection)
23:18:09 enemeth79 joins (uid309041@id-309041.lymington.irccloud.com)
23:18:36 <Haskelytic> when you say some function `f x y = ...` is strict in its first argument, does that mean, for example, that if `x :: [Int]` that `f` would evaluate `x` up to `[_, _, _]` or is it `[1,2,3]` where the list members themselves are fully evaluated?
23:19:01 × haritz quits (~hrtz@user/haritz) (Ping timeout: 268 seconds)
23:19:46 dcoutts joins (~duncan@host86-170-66-70.range86-170.btcentralplus.com)
23:20:28 <hpc> (f x = ...) is strict in x iff f bottom = bottom
23:20:54 <hpc> or in more practical terms, it would mean x is evaluated up to being either bottom, [], or _:_
23:21:58 <hpc> extending it to (f x y = ...), the things to google are weak head normal form and head normal form
23:22:01 × dcoutts_ quits (~duncan@host86-155-218-223.range86-155.btcentralplus.com) (Ping timeout: 252 seconds)
23:22:14 <hpc> but in practical terms it means the same thing, just with extra parameters
23:22:19 <Haskelytic> hpc: thanks!
23:22:31 <Haskelytic> yeah that extra `y` wasn't relevant lol
23:22:37 <hpc> heh
23:23:09 <hpc> you should look those up anyway, it's good vocabulary to know when you encounter other stuff that deals with laziness and evaluation
23:23:11 <Haskelytic> you could say I was being lazy :)
23:23:31 <hpc> like if you ever see code using the "rnf" function, that stands for "reduce to normal form"
23:23:58 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 268 seconds)
23:24:35 × winny quits (~weechat@user/winny) (Ping timeout: 268 seconds)
23:26:08 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
23:26:26 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Ping timeout: 268 seconds)
23:27:37 dcoutts_ joins (~duncan@host86-170-66-70.range86-170.btcentralplus.com)
23:27:46 ChaiTRex joins (~ChaiTRex@user/chaitrex)
23:28:06 winny joins (~weechat@user/winny)
23:28:47 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 245 seconds)
23:31:11 × dcoutts quits (~duncan@host86-170-66-70.range86-170.btcentralplus.com) (Ping timeout: 252 seconds)
23:33:48 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:357f:5f50:899a:d5a4)
23:34:15 × dcoutts_ quits (~duncan@host86-170-66-70.range86-170.btcentralplus.com) (Remote host closed the connection)
23:34:36 dcoutts_ joins (~duncan@host86-170-66-70.range86-170.btcentralplus.com)
23:37:25 dcoutts joins (~duncan@host86-149-51-28.range86-149.btcentralplus.com)
23:37:57 alp_ joins (~alp@user/alp)
23:39:05 sonologico joins (~raphael@77.251.118.129)
23:39:15 × dcoutts_ quits (~duncan@host86-170-66-70.range86-170.btcentralplus.com) (Ping timeout: 252 seconds)
23:40:40 dcoutts_ joins (~duncan@host86-149-51-28.range86-149.btcentralplus.com)
23:42:18 × dcoutts_ quits (~duncan@host86-149-51-28.range86-149.btcentralplus.com) (Remote host closed the connection)
23:42:36 dcoutts_ joins (~duncan@host86-149-51-28.range86-149.btcentralplus.com)
23:42:45 × Franciman quits (~Franciman@mx1.fracta.dev) (Ping timeout: 276 seconds)
23:43:12 pierrot_ joins (~pi@user/pierrot)
23:43:17 × dcoutts quits (~duncan@host86-149-51-28.range86-149.btcentralplus.com) (Ping timeout: 252 seconds)
23:43:39 × sonologico quits (~raphael@77.251.118.129) (Ping timeout: 252 seconds)
23:44:12 × pierrot quits (~pi@user/pierrot) (Ping timeout: 260 seconds)
23:44:31 Franciman joins (~Franciman@mx1.fracta.dev)
23:44:42 × shinjipf quits (~shinjipf@2a02:c207:2082:6685::1) (Ping timeout: 276 seconds)
23:47:13 pierrot_ is now known as pierrot
23:49:07 dcoutts joins (~duncan@host86-149-51-28.range86-149.btcentralplus.com)
23:49:53 × dcoutts_ quits (~duncan@host86-149-51-28.range86-149.btcentralplus.com) (Ping timeout: 252 seconds)
23:51:14 dcoutts_ joins (~duncan@host86-149-51-28.range86-149.btcentralplus.com)
23:51:42 shinjipf joins (~shinjipf@2a02:c207:2082:6685::1)
23:51:50 winny_ joins (~weechat@user/winny)
23:54:17 × dcoutts quits (~duncan@host86-149-51-28.range86-149.btcentralplus.com) (Ping timeout: 252 seconds)
23:55:22 × winny quits (~weechat@user/winny) (Remote host closed the connection)
23:56:34 × dcoutts_ quits (~duncan@host86-149-51-28.range86-149.btcentralplus.com) (Ping timeout: 268 seconds)
23:57:25 Guest3 joins (~textual@pool-100-11-18-203.phlapa.fios.verizon.net)
23:57:57 × jespada quits (~jespada@181.80.249.105) (Ping timeout: 252 seconds)
23:58:40 dcoutts joins (~duncan@host86-167-206-72.range86-167.btcentralplus.com)

All times are in UTC on 2022-07-27.