Home liberachat/#haskell: Logs Calendar

Logs on 2023-01-28 (liberachat/#haskell)

00:05:53 × P1RATEZ quits (piratez@user/p1ratez) (Remote host closed the connection)
00:10:18 × oldfashionedcow quits (~Rahul_San@user/oldfashionedcow) (Quit: WeeChat 3.8)
00:13:26 × freeside quits (~mengwong@103.252.202.170) (Ping timeout: 255 seconds)
00:26:14 × jumper149 quits (~jumper149@base.felixspringer.xyz) (Quit: WeeChat 3.8)
00:28:13 mechap joins (~mechap@user/mechap)
00:29:34 freeside joins (~mengwong@103.252.202.170)
00:29:37 × acidjnk quits (~acidjnk@p200300d6e715c482e53a5abd00fe838c.dip0.t-ipconnect.de) (Ping timeout: 252 seconds)
00:33:24 opticblast joins (~Thunderbi@12.129.159.196)
00:37:01 opticblast1 joins (~Thunderbi@12.129.159.196)
00:37:13 talismanick joins (~talismani@2601:200:c181:4c40::1be2)
00:37:44 × opticblast quits (~Thunderbi@12.129.159.196) (Ping timeout: 255 seconds)
00:37:45 opticblast1 is now known as opticblast
00:41:27 opticblast1 joins (~Thunderbi@12.129.159.196)
00:41:38 wroathe joins (~wroathe@207-153-38-140.fttp.usinternet.com)
00:41:38 × wroathe quits (~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
00:41:38 wroathe joins (~wroathe@user/wroathe)
00:42:15 × opticblast quits (~Thunderbi@12.129.159.196) (Ping timeout: 255 seconds)
00:42:15 opticblast1 is now known as opticblast
00:45:05 opticblast1 joins (~Thunderbi@12.129.159.196)
00:46:44 × opticblast quits (~Thunderbi@12.129.159.196) (Ping timeout: 255 seconds)
00:47:23 opticblast1 is now known as opticblast
00:48:31 × wroathe quits (~wroathe@user/wroathe) (Ping timeout: 248 seconds)
00:51:22 opticblast1 joins (~Thunderbi@12.129.159.196)
00:52:08 × opticblast quits (~Thunderbi@12.129.159.196) (Ping timeout: 255 seconds)
00:52:09 opticblast1 is now known as opticblast
00:55:18 opticblast1 joins (~Thunderbi@12.129.159.196)
00:56:43 × opticblast quits (~Thunderbi@12.129.159.196) (Ping timeout: 252 seconds)
00:58:09 opticblast joins (~Thunderbi@12.129.159.196)
00:59:28 × opticblast1 quits (~Thunderbi@12.129.159.196) (Ping timeout: 252 seconds)
00:59:32 mechap1 joins (~mechap@user/mechap)
01:01:02 opticblast1 joins (~Thunderbi@12.129.159.196)
01:02:46 × opticblast quits (~Thunderbi@12.129.159.196) (Ping timeout: 252 seconds)
01:02:46 × mechap quits (~mechap@user/mechap) (Ping timeout: 252 seconds)
01:02:46 opticblast1 is now known as opticblast
01:05:56 × mtjm quits (~mutantmel@2604:a880:2:d0::208b:d001) (Remote host closed the connection)
01:07:14 mtjm joins (~mutantmel@2604:a880:2:d0::208b:d001)
01:08:14 Guest75 joins (~Guest75@178.141.149.12)
01:08:17 opticblast1 joins (~Thunderbi@12.129.159.196)
01:09:11 wroathe joins (~wroathe@207-153-38-140.fttp.usinternet.com)
01:09:11 × wroathe quits (~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
01:09:11 wroathe joins (~wroathe@user/wroathe)
01:09:22 × opticblast quits (~Thunderbi@12.129.159.196) (Ping timeout: 252 seconds)
01:09:22 opticblast1 is now known as opticblast
01:10:11 × albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
01:13:01 opticblast1 joins (~Thunderbi@12.129.159.196)
01:13:50 × opticblast quits (~Thunderbi@12.129.159.196) (Ping timeout: 260 seconds)
01:13:51 opticblast1 is now known as opticblast
01:15:21 coderpath joins (~coderpath@d66-183-126-83.bchsia.telus.net)
01:16:18 albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8)
01:22:12 opticblast1 joins (~Thunderbi@12.129.159.196)
01:22:23 × coderpath quits (~coderpath@d66-183-126-83.bchsia.telus.net) (Quit: ZNC 1.8.2 - https://znc.in)
01:23:10 × opticblast quits (~Thunderbi@12.129.159.196) (Ping timeout: 260 seconds)
01:23:10 opticblast1 is now known as opticblast
01:24:15 × [_] quits (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 252 seconds)
01:26:06 coderpath joins (~coderpath@d66-183-126-83.bchsia.telus.net)
01:26:40 × coderpath quits (~coderpath@d66-183-126-83.bchsia.telus.net) (Remote host closed the connection)
01:27:06 coderpath joins (~coderpath@d66-183-126-83.bchsia.telus.net)
01:28:17 [_] joins (~itchyjunk@user/itchyjunk/x-7353470)
01:31:44 × freeside quits (~mengwong@103.252.202.170) (Ping timeout: 248 seconds)
01:33:15 × opticblast quits (~Thunderbi@12.129.159.196) (Read error: Connection reset by peer)
01:33:30 opticblast joins (~Thunderbi@12.129.159.196)
01:37:35 × opticblast quits (~Thunderbi@12.129.159.196) (Ping timeout: 248 seconds)
01:44:08 freeside joins (~mengwong@103.252.202.170)
01:48:25 × freeside quits (~mengwong@103.252.202.170) (Ping timeout: 252 seconds)
01:49:17 × talismanick quits (~talismani@2601:200:c181:4c40::1be2) (Ping timeout: 255 seconds)
01:49:39 × wroathe quits (~wroathe@user/wroathe) (Ping timeout: 260 seconds)
01:51:05 × xff0x quits (~xff0x@2405:6580:b080:900:ccbb:e6cd:6139:338f) (Ping timeout: 246 seconds)
01:51:30 xff0x joins (~xff0x@178.255.149.135)
01:54:46 × OscarZ quits (~oscarz@95.175.104.141) (Quit: Leaving)
01:59:00 × mcglk quits (~mcglk@2601:600:9f7f:e300:997b:556a:42cb:8050) (Quit: (zzz))
02:02:11 freeside joins (~mengwong@103.252.202.170)
02:06:56 × xff0x quits (~xff0x@178.255.149.135) (Ping timeout: 248 seconds)
02:08:54 xff0x joins (~xff0x@2405:6580:b080:900:ccbb:e6cd:6139:338f)
02:16:30 wroathe joins (~wroathe@207-153-38-140.fttp.usinternet.com)
02:16:30 × wroathe quits (~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
02:16:30 wroathe joins (~wroathe@user/wroathe)
02:18:41 razetime joins (~Thunderbi@117.193.7.2)
02:21:12 × L29Ah quits (~L29Ah@wikipedia/L29Ah) (Read error: Connection reset by peer)
02:31:39 justsomeguy joins (~justsomeg@user/justsomeguy)
02:34:19 thongpv joins (~thongpv87@2001:ee0:5577:f0d0:4046:744:c04c:749c)
02:34:39 × wroathe quits (~wroathe@user/wroathe) (Ping timeout: 248 seconds)
02:38:20 × ddellacosta quits (~ddellacos@143.244.47.70) (Quit: WeeChat 3.7.1)
02:38:53 gehmehgeh joins (~user@user/gehmehgeh)
02:41:08 × gmg quits (~user@user/gehmehgeh) (Ping timeout: 255 seconds)
02:41:17 ddellacosta joins (~ddellacos@143.244.47.100)
02:46:22 × ddellacosta quits (~ddellacos@143.244.47.100) (Ping timeout: 268 seconds)
02:47:38 × [Leary] quits (~Leary]@user/Leary/x-0910699) (Remote host closed the connection)
02:47:38 ddellacosta joins (~ddellacos@143.244.47.70)
02:48:13 [Leary] joins (~Leary]@user/Leary/x-0910699)
02:48:35 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
02:48:40 Lears joins (~Leary]@user/Leary/x-0910699)
02:48:52 × [Leary] quits (~Leary]@user/Leary/x-0910699) (Remote host closed the connection)
02:50:13 × habib quits (~habib@78-110-166-168.as42831.net) (Quit: Textual IRC Client: www.textualapp.com)
02:50:20 bob joins (~bob22@user/bob)
02:51:52 harveypwca joins (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67)
02:58:23 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 264 seconds)
03:15:55 × Unicorn_Princess quits (~Unicorn_P@user/Unicorn-Princess/x-3540542) (Quit: Leaving)
03:16:28 bontaq joins (~user@ool-45779fe5.dyn.optonline.net)
03:16:48 × td_ quits (~td@i53870938.versanet.de) (Ping timeout: 248 seconds)
03:18:23 td_ joins (~td@i53870921.versanet.de)
03:23:14 akshitkr joins (~user@14.139.82.6)
03:23:31 × akshitkr quits (~user@14.139.82.6) (Client Quit)
03:23:59 komikat joins (~user@14.139.82.6)
03:39:51 Lycurgus joins (~juan@user/Lycurgus)
03:42:48 × ntphillyboi quits (~ntpa@2600:4040:2cc3:9300:6933:890:4a54:c6d) (Quit: WeeChat 3.7.1)
03:43:23 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija)))
03:43:23 finn_elija joins (~finn_elij@user/finn-elija/x-0085643)
03:43:23 finn_elija is now known as FinnElija
03:43:27 × accord quits (uid568320@id-568320.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
03:53:08 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 255 seconds)
03:55:20 × jero98772 quits (~jero98772@2800:484:1d80:d8ce:3490:26c5:1782:da8c) (Remote host closed the connection)
03:55:34 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
03:56:59 <justsomeguy> Is pure (from Functor) the same as return (from Monad)?
03:57:36 <justsomeguy> Someone told me monads are applicative functors.
03:58:49 × komikat quits (~user@14.139.82.6) (Ping timeout: 256 seconds)
03:59:47 komikat joins (~user@14.139.82.6)
04:00:01 talismanick joins (~talismani@2601:200:c181:4c40::1be2)
04:00:03 cheater_ joins (~Username@user/cheater)
04:00:27 <monochrom> pure is from Applicative, not Functor. But yes, same as Monad's return.
04:02:26 × komikat quits (~user@14.139.82.6) (Remote host closed the connection)
04:02:39 komikat joins (~user@14.139.82.6)
04:02:57 mcglk joins (~mcglk@131.191.49.120)
04:03:24 × cheater quits (~Username@user/cheater) (Ping timeout: 255 seconds)
04:03:28 cheater_ is now known as cheater
04:04:04 × ddellacosta quits (~ddellacos@143.244.47.70) (Ping timeout: 268 seconds)
04:05:52 × jushur quits (~human@user/jushur) (Ping timeout: 248 seconds)
04:05:56 ddellacosta joins (~ddellacos@89.45.224.241)
04:08:19 <int-e> `return` exists for historical reasons; the Applicative class was added after Monad and Functor were already well-established.
04:08:27 × use-value quits (~Thunderbi@2a00:23c6:8a03:2f01:75c2:a71f:beaa:29bf) (Remote host closed the connection)
04:08:46 use-value joins (~Thunderbi@2a00:23c6:8a03:2f01:75c2:a71f:beaa:29bf)
04:10:08 × razetime quits (~Thunderbi@117.193.7.2) (Ping timeout: 248 seconds)
04:14:12 × ddellacosta quits (~ddellacos@89.45.224.241) (Ping timeout: 255 seconds)
04:15:27 <dsal> I don't think anything requires `pure` and `return` to be the same, but if you find anything with a definition other than `return = pure` I'd be pretty suspicious.
04:22:59 <davean> dsal: The laws sure do!
04:23:13 <davean> dsal: If they aren't that explicitely and directly violates the class laws.
04:24:46 <dsal> I meant from a "this won't compile" perspective. People *can* do dumb things.
04:25:06 × komikat quits (~user@14.139.82.6) (Remote host closed the connection)
04:25:21 komikat joins (~user@14.139.82.6)
04:26:17 <davean> Sure, but its more than suspicious - its directly wrong
04:30:04 × komikat quits (~user@14.139.82.6) (Ping timeout: 260 seconds)
04:39:28 × waleee quits (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Ping timeout: 248 seconds)
04:41:04 × machinedgod quits (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 268 seconds)
04:48:19 × harveypwca quits (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving)
04:56:16 × tlaxkit quits (~hexchat@170.253.46.25) (Quit: Leaving)
05:02:09 × Lycurgus quits (~juan@user/Lycurgus) (Quit: Exeunt: personae.ai-integration.biz)
05:08:57 razetime joins (~Thunderbi@117.193.7.2)
05:12:31 use-value1 joins (~Thunderbi@2a00:23c6:8a03:2f01:5582:a4fc:2e23:bfc5)
05:15:11 × use-value quits (~Thunderbi@2a00:23c6:8a03:2f01:75c2:a71f:beaa:29bf) (Ping timeout: 248 seconds)
05:15:12 use-value1 is now known as use-value
05:25:39 ddellacosta joins (~ddellacos@89.45.224.124)
05:25:50 razetime1 joins (~Thunderbi@117.193.7.2)
05:27:56 × razetime quits (~Thunderbi@117.193.7.2) (Ping timeout: 268 seconds)
05:27:57 razetime1 is now known as razetime
05:38:21 × thongpv quits (~thongpv87@2001:ee0:5577:f0d0:4046:744:c04c:749c) (Ping timeout: 252 seconds)
05:42:10 × jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 260 seconds)
05:44:35 × talismanick quits (~talismani@2601:200:c181:4c40::1be2) (Remote host closed the connection)
06:00:07 × foul_owl quits (~kerry@157.97.134.62) (Read error: Connection reset by peer)
06:08:13 komikat joins (~user@218.185.248.66)
06:09:50 × [_] quits (~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer)
06:11:36 × Sauvin quits (~sauvin@user/Sauvin) (Remote host closed the connection)
06:11:55 Sauvin joins (~sauvin@user/Sauvin)
06:14:07 takuan joins (~takuan@178-116-218-225.access.telenet.be)
06:17:55 foul_owl joins (~kerry@71.212.143.88)
06:22:32 × azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 255 seconds)
06:26:31 × razetime quits (~Thunderbi@117.193.7.2) (Ping timeout: 268 seconds)
06:28:55 × justsomeguy quits (~justsomeg@user/justsomeguy) (Ping timeout: 252 seconds)
06:30:19 laalyn joins (~laalyn@c-73-241-126-7.hsd1.ca.comcast.net)
06:31:17 nattiestnate joins (~nate@202.138.250.37)
06:31:53 razetime joins (~Thunderbi@117.193.7.2)
06:32:19 × np quits (~nerdypepp@user/nerdypepper) (Remote host closed the connection)
06:34:09 nerdypepper joins (~nerdypepp@user/nerdypepper)
06:42:43 × nattiestnate quits (~nate@202.138.250.37) (Quit: WeeChat 3.8)
06:44:52 × Vajb quits (~Vajb@2001:999:404:9516:d621:6cbe:c71e:5686) (Read error: Connection reset by peer)
06:45:27 Vajb joins (~Vajb@hag-jnsbng11-58c3a5-27.dhcp.inet.fi)
06:51:54 × spider_ quits (~spider@vps-951ce37a.vps.ovh.ca) (Quit: WeeChat 3.5)
07:00:19 × Vajb quits (~Vajb@hag-jnsbng11-58c3a5-27.dhcp.inet.fi) (Read error: Connection reset by peer)
07:00:45 Vajb joins (~Vajb@2001:999:404:9516:d621:6cbe:c71e:5686)
07:18:32 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
07:30:08 × werneta quits (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 248 seconds)
07:33:17 × califax quits (~califax@user/califx) (Remote host closed the connection)
07:34:41 califax joins (~califax@user/califx)
07:35:49 werneta joins (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
07:46:44 fjMSX joins (~hypni2p@89-179-32-81.broadband.corbina.ru)
07:47:00 × fjMSX quits (~hypni2p@89-179-32-81.broadband.corbina.ru) (Remote host closed the connection)
07:54:22 Oden[m] joins (~iodonemat@2001:470:69fc:105::2:feb5)
07:54:32 thongpv joins (~thongpv87@2001:ee0:5577:f0d0:c4e:ed56:f943:b080)
08:06:24 × razetime quits (~Thunderbi@117.193.7.2) (Ping timeout: 255 seconds)
08:08:35 × thegeekinside quits (~thegeekin@189.180.66.244) (Ping timeout: 260 seconds)
08:13:23 L29Ah joins (~L29Ah@wikipedia/L29Ah)
08:14:29 Tuplanolla joins (~Tuplanoll@91-159-68-152.elisa-laajakaista.fi)
08:23:12 <Inst_> CPython is dead? Last update 2 years ago
08:23:26 Inst_ is now known as Inst
08:23:52 <Inst> I can't even get it to install on Windows, but that's my fault for using windows
08:24:20 mc47 joins (~mc47@xmonad/TheMC47)
08:24:47 × komikat quits (~user@218.185.248.66) (Ping timeout: 260 seconds)
08:27:12 danza joins (~francesco@151.57.95.137)
08:28:27 komikat joins (~user@218.185.248.66)
08:31:08 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
08:31:59 × thongpv quits (~thongpv87@2001:ee0:5577:f0d0:c4e:ed56:f943:b080) (Ping timeout: 248 seconds)
08:32:42 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
08:32:54 razetime joins (~Thunderbi@117.193.7.2)
08:33:33 × komikat quits (~user@218.185.248.66) (Ping timeout: 268 seconds)
08:35:16 komikat joins (~user@218.185.248.66)
08:37:48 <energizer> last update 6 hours ago https://github.com/python/cpython
08:42:54 × haask quits (~harry@user/haask) (Remote host closed the connection)
08:47:34 acidjnk joins (~acidjnk@p200300d6e715c413fca66e98e589647d.dip0.t-ipconnect.de)
08:49:03 × danza quits (~francesco@151.57.95.137) (Ping timeout: 248 seconds)
08:50:51 themc47 joins (~mc47@xmonad/TheMC47)
08:51:26 × mc47 quits (~mc47@xmonad/TheMC47) (Ping timeout: 268 seconds)
08:58:15 × arkeet quits (arkeet@moriya.ca) (Quit: ZNC 1.8.2 - https://znc.in)
08:58:26 arkeet joins (arkeet@moriya.ca)
09:00:03 × daveakre[m] quits (~daveakrem@2001:470:69fc:105::1:88b7) (Quit: You have been kicked for being idle)
09:00:08 × vlkrs[m] quits (~vlkrsmatr@2001:470:69fc:105::2:e806) (Quit: You have been kicked for being idle)
09:01:10 <davean> Maybe they mean https://hackage.haskell.org/package/cpython ?
09:01:20 danza joins (~francesco@151.57.95.137)
09:13:19 × freeside quits (~mengwong@103.252.202.170) (Ping timeout: 256 seconds)
09:18:52 × dcoutts quits (~duncan@host86-167-216-160.range86-167.btcentralplus.com) (Ping timeout: 252 seconds)
09:18:57 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
09:20:53 × eggplantade quits (~Eggplanta@2600:1700:38c5:d800:513f:f9f8:1fe4:d246) (Remote host closed the connection)
09:24:17 gnalzo joins (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c)
09:27:36 freeside joins (~mengwong@103.252.202.170)
09:32:18 aeroplane joins (~user@user/aeroplane)
09:39:11 cheater_ joins (~Username@user/cheater)
09:40:09 × foul_owl quits (~kerry@71.212.143.88) (Ping timeout: 268 seconds)
09:42:44 × cheater quits (~Username@user/cheater) (Ping timeout: 260 seconds)
09:42:47 cheater_ is now known as cheater
09:50:34 <aeroplane> Hi everyone, I have a simple question. since haskell uses linked list internally, so if I do this "let x=(1,(2,3))" and then "y=snd x", then does haskell creates two copies of (2,3) in the memory or their is only one single entry refrenced at two places (x and y)
09:51:32 <c_wraith> "uses linked lists internally"?
09:52:22 <c_wraith> data types use exactly the representation they're declared with.
09:52:38 <gnalzo> notice, (1,(2,3)) is not valid haskell. And is not a list. The list are denoted using [ ]
09:52:47 <c_wraith> it's valid.
09:52:52 <c_wraith> > (1, (2, 3))
09:52:54 <lambdabot> (1,(2,3))
09:53:02 <gnalzo> oh yes
09:53:05 <c_wraith> But it isn't a list
09:54:02 foul_owl joins (~kerry@157.97.134.62)
09:54:10 <aeroplane> I'm sorry i mixed haskell with lisp
09:54:18 <gnalzo> well, anyway, [1, [2, 3]] is not valid. I'm mistaken.
09:55:15 <c_wraith> anyway, ignoring all the red herrings... Immutability means free sharing. So in let x = (1,(2,3)); y = snd x in ... well, after evaluation, y will be the same pointer as the second entry in x
09:57:05 <c_wraith> (before it's evaluated, it'll be a thunk holding on to a function and its arguments)
09:58:17 <aeroplane> c_wraith: I am asking this question because, i am trying to create a tree data structure in haskell, so to insert a value into a tree you have to create a new tree entirely.
09:58:27 <c_wraith> sharing.
09:58:46 <aeroplane> sO DOES HASKELL CREATES A NEW TREE OR SHARE THE VALUES INTERNALLY
09:58:53 <c_wraith> Any subtree that is referred to by both isn't copied.
09:59:40 <c_wraith> It's literally syntactic. If you don't call a constructor, you aren't creating new elements.
10:00:51 <[exa]> aeroplane: it may not even store 2 copies of the whole thing tbh, since it's lazy it might just remember something like "snd (1,(2,3)) belongs here"
10:01:24 <[exa]> aeroplane: anyway in the end if you really read the values of (2,3) and unless something crazy happens, it's usually going to share the memory location
10:02:35 <[exa]> (and the case with actual lists as in `tail (1:(2:(3:[])))` aka `tail [1,2,3]` should behave pretty much the same, [2,3] will be shared
10:02:38 <[exa]> )
10:02:41 <Inst> ummm, yeah, I mean the hackage package
10:02:47 <c_wraith> I can't think of any case where syntactic sharing doesn't imply runtime sharing.
10:03:16 × tzh quits (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz)
10:03:22 <[exa]> c_wraith: inliner is free to duplicate the values in certain cases when it thinks it doesn't duplicate too much work
10:03:43 <c_wraith> mm. right, for top-level definitions.
10:03:58 <[exa]> yeah in that case I'd say it's super rare.
10:03:59 <c_wraith> including things that get floated to the top level
10:04:48 × bontaq quits (~user@ool-45779fe5.dyn.optonline.net) (Ping timeout: 248 seconds)
10:05:43 <c_wraith> anyway, that's not going to apply to any value that depends on a function argument.
10:09:50 × themc47 quits (~mc47@xmonad/TheMC47) (Remote host closed the connection)
10:12:43 <[exa]> Inst: what's broken btw? (any error log?)
10:13:14 <aeroplane> [exa]: thanks, that's neat, "let y=snd x" will not be evaluated, and if it needS to, then the refrence to (2,3) will be shared
10:13:18 <aeroplane> am i correct
10:13:20 <Inst> PS C:\Users\Liam> cabal install cpython
10:13:20 <Inst> Resolving dependencies...
10:13:20 <Inst> Error: cabal-3.8.1.0.exe: Could not resolve dependencies:
10:13:20 <Inst> [__0] trying: cpython-3.5.1 (user goal)
10:13:20 <Inst> [__1] rejecting: cpython:-usepython38 (conflict: pkg-config package
10:13:21 <Inst> python3-any, not found in the pkg-config database)
10:13:25 <Inst> [__1] rejecting: cpython:+usepython38 (conflict: pkg-config package
10:13:27 <Inst> python-3.8-any, not found in the pkg-config database)
10:13:28 <Inst> [__1] fail (backjumping, conflict set: cpython, cpython:usepython38)
10:13:31 <Inst> After searching the rest of the dependency tree exhaustively, these were the
10:13:33 <Inst> goals I've had most trouble fulfilling: cpython, cpython:usepython38
10:13:35 <Inst> whoops, should have used pastebin
10:16:20 × Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer)
10:16:51 coot joins (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
10:21:20 eggplantade joins (~Eggplanta@2600:1700:38c5:d800:513f:f9f8:1fe4:d246)
10:24:06 mmhat joins (~mmh@p200300f1c707be19ee086bfffe095315.dip0.t-ipconnect.de)
10:25:58 × eggplantade quits (~Eggplanta@2600:1700:38c5:d800:513f:f9f8:1fe4:d246) (Ping timeout: 252 seconds)
10:29:21 <[exa]> aeroplane: yes
10:30:02 <[exa]> Inst: yeah that looks like you need a working pkg-config with the correct version of python (I'd guess 3.5 while you have 3.8)
10:30:28 <[exa]> or maybe it doesn't have pkg-config at all which is, well, windows thing
10:30:35 <Inst> it wants 3.8, i can't get pkg-config working on windows
10:30:45 <[exa]> can you run in WSL?
10:30:52 <Inst> i don't have it installed on WSL
10:31:00 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
10:31:45 <[exa]> tbh I have no idea how the package would be able to sanely configure self in the default windows mess, even cabal working there is more of a small miracle
10:31:48 cheater_ joins (~Username@user/cheater)
10:31:51 × coot quits (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot)
10:32:49 <[exa]> but maybe with the pkg-config in place it might just work
10:32:56 <[exa]> (can you check that you can run pkg-config yoursel?)
10:33:31 <[exa]> (something like: pkg-config python3 --cflags or maybe pkg-config --list-all)
10:34:55 × cheater quits (~Username@user/cheater) (Ping timeout: 256 seconds)
10:35:04 cheater_ is now known as cheater
10:38:23 jinsun joins (~jinsun@user/jinsun)
10:40:10 × razetime quits (~Thunderbi@117.193.7.2) (Remote host closed the connection)
10:42:56 <aeroplane> I have one other beginner question, if I have an immutable variable "tree" and I have to update it multiple times, the do I have to declare new variables all the time, since haskell complains when i redclare "tree" variable. Below is Binary Search Tree code, I need to update variable tree at line 27 multiple times, I do not know how to do that? Please help, thanks.
10:42:58 <aeroplane> http://ix.io/4mpM/haskell
10:45:25 <aeroplane> please bear that the code is not clean
10:48:16 <danza> of course. Because of immutability, you cannot reassign a variable
10:48:50 <danza> in fact, more that a variable, we could call the constants ^^;
10:49:05 <gnalzo> you can not declare tree at the top level.
10:49:29 <danza> gnalzo, why not?
10:49:56 <gnalzo> just pass Empty to the function ins in main.
10:50:07 <danza> oh yes, that's a better idea
10:50:11 <aeroplane> i need to update tree multiple times, how to do it
10:51:03 <gnalzo> danza: I rephrase, you can of course, but it's not the best pratice imho.
10:52:03 <gnalzo> aeroplane: each function that update a Tree, can get a Tree as parameter and return a modified Tree.
10:52:44 <danza> and you can collect multiple updates (separated by $ or .) and apply them one after the other
10:53:25 <gnalzo> aeroplane: this is what you already do.
10:54:36 <aeroplane> gnalzo: then i need to store that value somewhere
10:54:51 <aeroplane> i cannot reassign it to tree variable
10:55:02 <aeroplane> line 31
10:56:08 <tomsmeding> let tree1 = stuff tree ; tree2 = stuff2 tree1 ; ...
10:56:14 <gnalzo> yes you cannot for variable at toplevel. But you can for local variable defined with let (or where), and even for function parameters.
10:56:29 cheater_ joins (~Username@user/cheater)
10:56:46 <danza> and yeah, to get used with the concept, adding numbers to the end is probably the easiest
10:59:43 × cheater quits (~Username@user/cheater) (Ping timeout: 248 seconds)
10:59:45 cheater_ is now known as cheater
10:59:52 <aeroplane> gnalzo: it complaines when i add "tree1=ins 6 tree1" after line 31
11:00:13 <aeroplane> parse error on input ‘=’
11:00:38 fjMSX joins (~hypni2p@89-179-32-81.broadband.corbina.ru)
11:00:54 × fjMSX quits (~hypni2p@89-179-32-81.broadband.corbina.ru) (Read error: Connection reset by peer)
11:01:41 <aeroplane> tomsmeding: yeah that is exactly the problem that i am asking
11:02:14 <aeroplane> do i have redclare variable everytime when i update
11:03:26 <darkling> You have to create a new variable for each new value.
11:04:02 <darkling> So the code above with "tree1=ins 6 tree1" is going to fail because you're trying to redefine tree1 -- it should be "tree2 = ins 6 tree1"
11:05:02 shriekingnoise_ joins (~shrieking@186.137.175.87)
11:07:09 <gnalzo> aeroplane: I said, it's possible but not this way. You can in recursive function, because let define a new variable after each call, despite they have the same name.
11:07:20 <aeroplane> darkling: that means that every time I have to make modifications to the tree, then I have to declare a new variable to store the updated tree
11:07:25 × econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity)
11:07:46 × shriekingnoise quits (~shrieking@186.137.175.87) (Ping timeout: 252 seconds)
11:16:33 <Lears> @pl \tree0 -> let tree1 = f tree0; tree2 = g tree1; tree3 = h tree2 in i tree3
11:16:34 <lambdabot> i . fix . const . h . fix . const . g . fix . const . f
11:16:58 <Lears> Wow. Technically correct, but not exactly ideal.
11:17:03 <Lears> @check \x -> (fix . const) x == x
11:17:05 <lambdabot> +++ OK, passed 100 tests.
11:17:58 × danza quits (~francesco@151.57.95.137) (Read error: Connection reset by peer)
11:18:22 danza joins (~francesco@151.57.95.137)
11:24:59 × turlando quits (~turlando@user/turlando) (Ping timeout: 268 seconds)
11:33:01 × chiselfuse quits (~chiselfus@user/chiselfuse) (Write error: Connection reset by peer)
11:33:01 × stiell quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection)
11:33:01 × bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Read error: Connection reset by peer)
11:33:49 oldfashionedcow joins (~Rahul_San@user/oldfashionedcow)
11:33:52 stiell joins (~stiell@gateway/tor-sasl/stiell)
11:34:02 chiselfuse joins (~chiselfus@user/chiselfuse)
11:34:41 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
11:43:28 turlando joins (~turlando@user/turlando)
11:51:37 × danza quits (~francesco@151.57.95.137) (Quit: Leaving)
12:00:41 <mauke> @check \x -> length (nub x) == 1
12:00:42 <lambdabot> error:
12:00:43 <lambdabot> Ambiguous occurrence ‘length’ It could refer to either ‘Data.List.length’, i...
12:01:01 <mauke> @check \x -> Data.List.length (nub x) <= 1
12:01:03 <lambdabot> error:
12:01:03 <lambdabot> Ambiguous occurrence ‘nub’ It could refer to either ‘Data.List.nub’, importe...
12:01:24 <mauke> @check \x -> Data.List.length (Data.List.nub x) <= 1
12:01:26 <lambdabot> +++ OK, passed 100 tests.
12:04:11 × Franciman quits (~Franciman@mx1.fracta.dev) (Remote host closed the connection)
12:11:17 bgt32 joins (~keutoi@122.171.123.33)
12:15:15 Franciman joins (~Franciman@mx1.fracta.dev)
12:19:41 <tomsmeding> aeroplane: yes
12:20:03 <tomsmeding> Though what you could do is wrap all the things you want to do to the tree in functions, say stuff1, stuff2, ..., stuff32
12:20:22 <tomsmeding> Then the final tree is stuff32 . stuff31 . ... . stuff1 $ tree
12:20:50 <tomsmeding> Depending on how those stuff functions look, you might not even need to do the wrapping, you can just write them inline
12:34:07 × freeside quits (~mengwong@103.252.202.170) (Ping timeout: 248 seconds)
12:36:08 azimut joins (~azimut@gateway/tor-sasl/azimut)
12:42:26 unit73e joins (~emanuel@2001:818:e8dd:7c00:656:e5ff:fe72:9d36)
12:47:45 freeside joins (~mengwong@103.252.202.170)
12:48:44 × bgt32 quits (~keutoi@122.171.123.33) (Ping timeout: 246 seconds)
12:51:24 <komikat> j
12:55:59 × gehmehgeh quits (~user@user/gehmehgeh) (Remote host closed the connection)
12:56:52 gehmehgeh joins (~user@user/gehmehgeh)
13:04:50 × remedan quits (~remedan@ip-94-112-0-18.bb.vodafone.cz) (Read error: Connection reset by peer)
13:06:45 remedan joins (~remedan@ip-94-112-0-18.bb.vodafone.cz)
13:11:13 × albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
13:12:14 thongpv joins (~thongpv87@2001:ee0:5577:f0d0:f9fc:1a1:6793:23b6)
13:14:05 nschoe joins (~q@2a01:e0a:8e:a190:9cf8:877a:47d0:34b)
13:14:41 [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470)
13:16:08 <unit73e> komikat, k. I win.
13:16:32 <unit73e> also hello
13:16:53 Lycurgus joins (~juan@user/Lycurgus)
13:17:19 albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8)
13:26:50 × gehmehgeh quits (~user@user/gehmehgeh) (Remote host closed the connection)
13:27:41 gehmehgeh joins (~user@user/gehmehgeh)
13:37:33 <unit73e> is the maintainer and license haddock still necessary in modules? because cabal already tells that.
13:39:41 <unit73e> is there a way to generate that part?
13:51:27 <Hecate> unit73e: cabal check bothers you with this?
13:52:54 <unit73e> Hecate, nah and neither does writting it down manually, just a curiosity
13:53:05 troydm joins (~troydm@user/troydm)
13:54:03 <Hecate> unit73e: Personally, I copy one module to create another, so the haddock metadata are written once :P
13:54:11 <Hecate> but I don't think it matters that much?
13:54:38 <Hecate> unit73e: but you're right, Haddock could infer those metadata
13:55:00 <unit73e> well if there's nothing, there's nothing I guess. not much of a problem imo
13:55:33 × Guest75 quits (~Guest75@178.141.149.12) (Ping timeout: 260 seconds)
13:58:14 × mmhat quits (~mmh@p200300f1c707be19ee086bfffe095315.dip0.t-ipconnect.de) (Quit: WeeChat 3.8)
13:59:24 × qhong quits (~qhong@rescomp-21-400677.stanford.edu) (Read error: Connection reset by peer)
13:59:35 qhong_ joins (~qhong@rescomp-21-400677.stanford.edu)
14:18:16 × mechap1 quits (~mechap@user/mechap) (Ping timeout: 268 seconds)
14:19:51 mechap1 joins (~mechap@user/mechap)
14:20:19 × Lycurgus quits (~juan@user/Lycurgus) (Quit: Exeunt: personae.ai-integration.biz)
14:37:51 danza joins (~francesco@151.35.48.71)
14:38:19 × danza quits (~francesco@151.35.48.71) (Client Quit)
14:40:41 razetime joins (~Thunderbi@117.193.7.2)
14:55:27 × unit73e quits (~emanuel@2001:818:e8dd:7c00:656:e5ff:fe72:9d36) (Ping timeout: 248 seconds)
15:02:43 × phma quits (~phma@host-67-44-208-72.hnremote.net) (Read error: Connection reset by peer)
15:03:06 unit73e joins (~emanuel@2001:818:e8dd:7c00:656:e5ff:fe72:9d36)
15:03:27 dsrt^ joins (~dsrt@c-24-30-76-89.hsd1.ga.comcast.net)
15:04:00 phma joins (~phma@2001:5b0:210b:94b8:7a1f:f3bb:5a0c:334d)
15:24:48 × thongpv quits (~thongpv87@2001:ee0:5577:f0d0:f9fc:1a1:6793:23b6) (Ping timeout: 248 seconds)
15:25:49 eggplantade joins (~Eggplanta@2600:1700:38c5:d800:513f:f9f8:1fe4:d246)
15:30:09 × eggplantade quits (~Eggplanta@2600:1700:38c5:d800:513f:f9f8:1fe4:d246) (Ping timeout: 252 seconds)
15:33:19 × unit73e quits (~emanuel@2001:818:e8dd:7c00:656:e5ff:fe72:9d36) (Ping timeout: 248 seconds)
15:38:31 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
15:42:37 justsomeguy joins (~justsomeg@user/justsomeguy)
15:50:49 × telser quits (~quassel@user/telser) (Ping timeout: 260 seconds)
15:51:03 telser joins (~quassel@user/telser)
15:57:13 × gnalzo quits (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8)
15:57:32 `2jt joins (~jtomas@84.78.228.192)
16:17:41 nullsh joins (nullsh@user/nullsh)
16:18:15 × pavonia quits (~user@user/siracusa) (Quit: Bye!)
16:20:29 machinedgod joins (~machinedg@d198-53-218-113.abhsia.telus.net)
16:23:13 × manwithluck quits (~manwithlu@194.177.28.192) (Quit: ZNC 1.8.2 - https://znc.in)
16:26:59 michalz joins (~michalz@185.246.207.200)
16:31:07 Unicorn_Princess joins (~Unicorn_P@user/Unicorn-Princess/x-3540542)
16:33:36 × `2jt quits (~jtomas@84.78.228.192) (Ping timeout: 248 seconds)
16:34:29 manwithluck joins (~manwithlu@194.177.28.192)
16:36:52 `2jt joins (~jtomas@84.78.228.192)
16:42:55 × `2jt quits (~jtomas@84.78.228.192) (Quit: Leaving)
16:50:21 × gdd quits (~gdd@2001:470:1f13:187:3a49:a5bc:2f91:2c4d) (Ping timeout: 265 seconds)
16:50:51 gdd joins (~gdd@2001:470:1f13:187:e8a5:fbff:fe29:42f5)
16:53:05 × emmanuelux quits (~emmanuelu@user/emmanuelux) (Quit: au revoir)
16:54:07 × ddellacosta quits (~ddellacos@89.45.224.124) (Ping timeout: 252 seconds)
16:56:22 CiaoSen joins (~Jura@p200300c9573284002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
16:58:14 harveypwca joins (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67)
17:08:25 waleee joins (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7)
17:12:38 jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
17:16:17 × razetime quits (~Thunderbi@117.193.7.2) (Remote host closed the connection)
17:19:59 × CiaoSen quits (~Jura@p200300c9573284002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 248 seconds)
17:21:08 CiaoSen joins (~Jura@p200300c9573284002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
17:30:01 × sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.)
17:30:11 × Inst quits (~Inst@2601:6c4:4081:54f0:1c3a:fdd1:d6ac:9fe5) (Read error: Connection reset by peer)
17:30:33 Inst joins (~Inst@2601:6c4:4081:54f0:1c3a:fdd1:d6ac:9fe5)
17:30:49 × nschoe quits (~q@2a01:e0a:8e:a190:9cf8:877a:47d0:34b) (Quit: Switching off)
17:31:29 sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
17:31:35 Inst_ joins (~Inst@c-98-208-218-119.hsd1.fl.comcast.net)
17:33:52 × motherfsck quits (~motherfsc@user/motherfsck) (Ping timeout: 252 seconds)
17:35:33 × Inst quits (~Inst@2601:6c4:4081:54f0:1c3a:fdd1:d6ac:9fe5) (Ping timeout: 252 seconds)
17:43:01 econo joins (uid147250@user/econo)
17:51:25 mc47 joins (~mc47@xmonad/TheMC47)
17:52:06 mmhat joins (~mmh@p200300f1c707be19ee086bfffe095315.dip0.t-ipconnect.de)
17:52:17 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
17:54:00 trev joins (~trev@user/trev)
17:57:29 × mmhat quits (~mmh@p200300f1c707be19ee086bfffe095315.dip0.t-ipconnect.de) (Ping timeout: 256 seconds)
17:57:52 mmhat joins (~mmh@p200300f1c707bee5ee086bfffe095315.dip0.t-ipconnect.de)
17:57:55 <zebrag[m]> https://pure.strath.ac.uk/ws/portalfiles/portal/7096708/syntaxforfree.pdf, the 3rd equality, at the bottom of p. 4? Atkey is giving an interpretation of ∀α.τ...
17:58:30 × mmhat quits (~mmh@p200300f1c707bee5ee086bfffe095315.dip0.t-ipconnect.de) (Client Quit)
17:59:05 <zebrag[m]> I guess it is the interpretation of the type when the type variable ranges over all sets, so it's a variable set
17:59:28 <zebrag[m]> but then he is restricting that with a condition
17:59:47 <zebrag[m]> and I can't make sense of that condition
18:01:33 oldfashionedcow is now known as intel
18:01:43 intel is now known as oldfashionedcow
18:02:25 <zebrag[m]> This is the condition: ∀W, A1, A2, R : KRel(W, A1, A2), w : W. R[|τ|]W (∆γW [α ↦ R]) w (x A1) (x A2)
18:03:07 <zebrag[m]> Atkey's explanations are "These clauses are mostly straightforward"
18:04:00 beteigeuze joins (~Thunderbi@bl14-81-220.dsl.telepac.pt)
18:07:55 × chiselfuse quits (~chiselfus@user/chiselfuse) (Quit: leaving)
18:08:30 coot joins (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
18:09:01 wootehfoot joins (~wootehfoo@user/wootehfoot)
18:12:29 <smol-hors> can someone link me to suggested up-to-date reading on the Haskell FFI?
18:13:47 <sclv> smol-hors: https://ghc.gitlab.haskell.org/ghc/doc/users_guide/exts/ffi.html
18:13:57 <smol-hors> thank you
18:15:00 <mauke> https://www.haskell.org/onlinereport/haskell2010/haskellch8.html#x15-1490008
18:15:37 <smol-hors> thx
18:19:15 <monochrom> zebrag[m]: You would notice that the condition is the parametricity condition, e.g., the last equation.
18:20:11 eggplantade joins (~Eggplanta@2600:1700:38c5:d800:513f:f9f8:1fe4:d246)
18:20:48 <zebrag[m]> I would? let's see
18:22:54 potash joins (~foghorn@user/foghorn)
18:24:14 <zebrag[m]> monochrom thanks a lot, I'm going to work on that...
18:25:49 unit73e joins (~emanuel@2001:818:e8dd:7c00:656:e5ff:fe72:9d36)
18:28:42 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
18:33:14 gnalzo joins (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c)
18:33:41 oldfashionedcow is now known as A_Cow
18:36:45 × potash quits (~foghorn@user/foghorn) (Read error: Connection reset by peer)
18:38:42 tzh joins (~tzh@c-24-21-73-154.hsd1.wa.comcast.net)
18:44:23 × crns quits (~netcrns@user/crns) (Quit: brb)
18:46:33 × trev quits (~trev@user/trev) (Remote host closed the connection)
18:46:43 crns joins (~netcrns@user/crns)
18:53:54 × dsrt^ quits (~dsrt@c-24-30-76-89.hsd1.ga.comcast.net) (Remote host closed the connection)
19:00:45 × _xor quits (~xor@74.215.182.83) (Ping timeout: 260 seconds)
19:01:08 _xor joins (~xor@74.215.182.83)
19:02:43 × CiaoSen quits (~Jura@p200300c9573284002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
19:03:50 × pja quits (~pja@2a02:8010:6098:0:e65f:1ff:fe1f:660f) (Ping timeout: 255 seconds)
19:04:54 × _xor quits (~xor@74.215.182.83) (Read error: Connection reset by peer)
19:05:09 pja joins (~pja@2a02:8010:6098:0:e65f:1ff:fe1f:660f)
19:09:59 _xor joins (~xor@74.215.182.83)
19:17:34 × mechap1 quits (~mechap@user/mechap) (Quit: WeeChat 3.8)
19:26:27 CiaoSen joins (~Jura@p200300c9573284002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
19:31:20 × jbalint quits (~jbalint@2600:6c44:117f:e98a:816a:9488:fb1:7b7) (Quit: Bye!)
19:35:51 × foul_owl quits (~kerry@157.97.134.62) (Ping timeout: 268 seconds)
19:38:01 jbalint joins (~jbalint@2600:6c44:117f:e98a:816a:9488:fb1:7b7)
19:43:39 × wootehfoot quits (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer)
19:44:00 × eggplantade quits (~Eggplanta@2600:1700:38c5:d800:513f:f9f8:1fe4:d246) (Remote host closed the connection)
19:46:46 <stefan-_> is there a typeclass which is a monoid and supports multiplication with a scalar?
19:48:33 <geekosaur> do you count `mtimes`/`stimes`?
19:48:39 <Rembane> stefan-_: Not really, but Product could perhaps help you. What do you want to do?
19:49:48 <geekosaur> otherwise this sounds to me like you want one of the matrix packages, maybe
19:51:22 <stefan-_> I have a record which holds three different `cost` integer fields, this cost record has a zero, can be summed and multiplied with a scalar
19:52:14 <stefan-_> (day 19 of aoc)
19:54:10 <c_wraith> that basically sounds like stimes or mitmes along with replicate.
19:54:32 <c_wraith> err. concat/sconcat
19:56:16 × troydm quits (~troydm@user/troydm) (Ping timeout: 248 seconds)
19:57:38 eggplantade joins (~Eggplanta@2600:1700:38c5:d800:513f:f9f8:1fe4:d246)
19:58:58 <c_wraith> oh. which is just stimes/mtimes
20:02:09 <stefan-_> c_wraith, stimes sounds good, thanks!
20:02:39 <c_wraith> It looks like it's part of the class so that you can provide a more efficient implementation if you desire. and this is a case where you might!
20:03:27 <EvanR> multiplication by a scalar is vector language, you just want repeated monoiding/semigrouping
20:04:13 × harveypwca quits (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving)
20:05:19 <stefan-_> https://gist.github.com/dozed/f12791c9ed15fa6e76b50beffd8ad77c
20:05:23 <stefan-_> this is what I have currently
20:06:09 <int-e> . o O ( Ah, day 19, the day where I hardcoded everything. )
20:06:41 <stefan-_> hm, it should probably possible to even automatically derive Semigroup/Monoid
20:07:00 <stefan-_> based on the underlying Int
20:07:39 <int-e> there's a monoid for Num a => Sum a, Sum being a newtype
20:10:12 <int-e> And the Semigroup instance does `stimes n (Sum a) = Sum (fromIntegral n * a)` so it should be fine for that optimization. Though I'm not sure whether you actually need it.
20:10:28 Sgeo joins (~Sgeo@user/sgeo)
20:13:15 <int-e> "hardcoded everything" -- https://paste.tomsmeding.com/HMK3FvTI (very mild spoiler, it's just the left-hand side of my main solving function)
20:15:09 Guest75 joins (~Guest75@178.141.149.12)
20:15:59 × freeside quits (~mengwong@103.252.202.170) (Ping timeout: 248 seconds)
20:16:21 freeside joins (~mengwong@103.252.202.170)
20:16:27 cheesecake joins (~cheesecak@2600:6c4a:7c7f:ec9b:9cb2:b42f:48ab:b49b)
20:20:55 × freeside quits (~mengwong@103.252.202.170) (Ping timeout: 252 seconds)
20:22:13 cheater_ joins (~Username@user/cheater)
20:25:44 × cheater quits (~Username@user/cheater) (Ping timeout: 255 seconds)
20:25:48 cheater_ is now known as cheater
20:45:56 cheater_ joins (~Username@user/cheater)
20:47:28 × cheater quits (~Username@user/cheater) (Ping timeout: 252 seconds)
20:47:32 cheater_ is now known as cheater
20:50:05 freeside joins (~mengwong@103.252.202.170)
20:50:10 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 252 seconds)
20:51:24 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
20:52:17 troydm joins (~troydm@user/troydm)
20:54:21 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
20:54:24 × freeside quits (~mengwong@103.252.202.170) (Ping timeout: 248 seconds)
20:57:53 Lycurgus joins (~juan@user/Lycurgus)
21:04:59 × bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 255 seconds)
21:06:44 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
21:07:50 freeside joins (~mengwong@103.252.202.170)
21:12:14 × freeside quits (~mengwong@103.252.202.170) (Ping timeout: 260 seconds)
21:14:52 × mc47 quits (~mc47@xmonad/TheMC47) (Remote host closed the connection)
21:15:38 ddellacosta joins (~ddellacos@89.45.224.33)
21:15:45 × coot quits (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot)
21:15:46 × sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.)
21:16:53 sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
21:25:53 freeside joins (~mengwong@103.252.202.170)
21:26:02 × tcard quits (~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303) (Remote host closed the connection)
21:26:13 cheater_ joins (~Username@user/cheater)
21:26:14 tcard joins (~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303)
21:28:31 × cheater quits (~Username@user/cheater) (Ping timeout: 248 seconds)
21:28:39 cheater_ is now known as cheater
21:30:07 × freeside quits (~mengwong@103.252.202.170) (Ping timeout: 248 seconds)
21:30:16 bontaq joins (~user@ool-45779fe5.dyn.optonline.net)
21:32:09 × azimut quits (~azimut@gateway/tor-sasl/azimut) (Quit: ZNC - https://znc.in)
21:34:26 azimut joins (~azimut@gateway/tor-sasl/azimut)
21:34:55 wroathe joins (~wroathe@user/wroathe)
21:35:54 × unit73e quits (~emanuel@2001:818:e8dd:7c00:656:e5ff:fe72:9d36) (Quit: Leaving)
21:37:41 × Lycurgus quits (~juan@user/Lycurgus) (Quit: Exeunt: personae.ai-integration.biz)
21:39:04 × lbseale_ quits (~quassel@user/ep1ctetus) (Ping timeout: 260 seconds)
21:39:50 pavonia joins (~user@user/siracusa)
21:40:38 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
21:43:34 × Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 252 seconds)
21:44:30 Lord_of_Life joins (~Lord@user/lord-of-life/x-2819915)
21:47:36 freeside joins (~mengwong@103.252.202.170)
21:51:43 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
21:54:21 × freeside quits (~mengwong@103.252.202.170) (Ping timeout: 256 seconds)
21:55:57 freeside joins (~mengwong@103.252.202.170)
21:56:14 × albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
21:58:33 lbseale joins (~quassel@user/ep1ctetus)
22:00:47 × freeside quits (~mengwong@103.252.202.170) (Ping timeout: 264 seconds)
22:02:08 × gehmehgeh quits (~user@user/gehmehgeh) (Ping timeout: 255 seconds)
22:02:22 albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8)
22:03:57 gehmehgeh joins (~user@user/gehmehgeh)
22:11:15 × AlexZenon quits (~alzenon@178.34.160.228) (Ping timeout: 268 seconds)
22:12:23 × takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
22:14:43 × AlexNoo quits (~AlexNoo@178.34.160.228) (Read error: Connection reset by peer)
22:15:11 AlexZenon joins (~alzenon@178.34.160.228)
22:15:34 × Alex_test quits (~al_test@178.34.160.228) (Ping timeout: 268 seconds)
22:15:47 AlexNoo joins (~AlexNoo@178.34.160.228)
22:21:08 Alex_test joins (~al_test@178.34.160.228)
22:21:39 × [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer)
22:25:44 × komikat quits (~user@218.185.248.66) (Ping timeout: 260 seconds)
22:28:36 × CiaoSen quits (~Jura@p200300c9573284002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 255 seconds)
22:28:42 freeside joins (~mengwong@103.252.202.170)
22:28:59 × AlexZenon quits (~alzenon@178.34.160.228) (Ping timeout: 260 seconds)
22:32:43 × Alex_test quits (~al_test@178.34.160.228) (Ping timeout: 260 seconds)
22:33:03 × freeside quits (~mengwong@103.252.202.170) (Ping timeout: 248 seconds)
22:33:46 AlexZenon joins (~alzenon@178.34.160.228)
22:36:43 Alex_test joins (~al_test@178.34.160.228)
22:37:53 × michalz quits (~michalz@185.246.207.200) (Remote host closed the connection)
22:41:19 × Alex_test quits (~al_test@178.34.160.228) (Ping timeout: 252 seconds)
22:46:11 Alex_test joins (~al_test@178.34.160.228)
22:55:43 slack1256 joins (~slack1256@181.42.52.9)
22:59:11 × Alex_test quits (~al_test@178.34.160.228) (Ping timeout: 248 seconds)
23:02:55 freeside joins (~mengwong@103.252.202.170)
23:04:52 Alex_test joins (~al_test@178.34.160.228)
23:06:12 × haritz quits (~hrtz@user/haritz) (Ping timeout: 252 seconds)
23:06:29 × manwithluck quits (~manwithlu@194.177.28.192) (Remote host closed the connection)
23:06:32 × jbalint quits (~jbalint@2600:6c44:117f:e98a:816a:9488:fb1:7b7) (Quit: Bye!)
23:08:14 jbalint joins (~jbalint@2600:6c44:117f:e98a:816a:9488:fb1:7b7)
23:08:17 manwithluck joins (~manwithlu@194.177.28.192)
23:08:36 × freeside quits (~mengwong@103.252.202.170) (Ping timeout: 268 seconds)
23:10:35 haritz joins (~hrtz@82-69-11-11.dsl.in-addr.zen.co.uk)
23:10:35 × haritz quits (~hrtz@82-69-11-11.dsl.in-addr.zen.co.uk) (Changing host)
23:10:35 haritz joins (~hrtz@user/haritz)
23:22:22 × dequbed quits (~dequbed@banana-new.kilobyte22.de) (Quit: bye!)
23:22:42 × sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Ping timeout: 252 seconds)
23:23:27 sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
23:24:28 dequbed joins (~dequbed@banana-new.kilobyte22.de)
23:27:07 jushur joins (~human@user/jushur)
23:29:21 AlexNoo_ joins (~AlexNoo@178.34.160.79)
23:30:51 × aaronm04 quits (~user@user/aaronm04) (Quit: WeeChat 3.6)
23:31:43 × AlexZenon quits (~alzenon@178.34.160.228) (Ping timeout: 248 seconds)
23:32:55 × AlexNoo quits (~AlexNoo@178.34.160.228) (Ping timeout: 260 seconds)
23:33:10 × Alex_test quits (~al_test@178.34.160.228) (Ping timeout: 260 seconds)
23:34:13 × Guest75 quits (~Guest75@178.141.149.12) (Ping timeout: 260 seconds)
23:35:47 AlexZenon joins (~alzenon@178.34.160.79)
23:37:41 Alex_test joins (~al_test@178.34.160.79)
23:39:02 freeside joins (~mengwong@103.252.202.170)
23:43:25 aaronm04 joins (~user@user/aaronm04)
23:43:27 × freeside quits (~mengwong@103.252.202.170) (Ping timeout: 248 seconds)
23:43:50 unit73e joins (~emanuel@2001:818:e8dd:7c00:656:e5ff:fe72:9d36)
23:44:00 × gnalzo quits (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8)
23:49:16 × jushur quits (~human@user/jushur) (Quit: ¯\_(ツ)_/¯)
23:52:49 × wroathe quits (~wroathe@user/wroathe) (Ping timeout: 252 seconds)
23:56:32 fut joins (~futar@129.234.0.191)
23:57:00 fut parts (~futar@129.234.0.191) ()

All times are in UTC on 2023-01-28.