Home liberachat/#haskell: Logs Calendar

Logs on 2023-05-11 (liberachat/#haskell)

00:13:35 wroathe joins (~wroathe@207-153-38-140.fttp.usinternet.com)
00:13:35 × wroathe quits (~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
00:13:35 wroathe joins (~wroathe@user/wroathe)
00:15:11 × Lycurgus quits (~juan@user/Lycurgus) (Quit: Exeunt: personae.ai-integration.biz)
00:17:01 jero98772 joins (~jero98772@190.158.28.80)
00:19:01 × falafel quits (~falafel@2603-8000-d700-115c-4c01-bd57-7717-801a.res6.spectrum.com) (Ping timeout: 240 seconds)
00:29:23 Guest40 joins (~Guest40@138.251.117.48)
00:29:48 cowboy8625 joins (~cowboy@2001-48F8-4002-30E-BF21-709F-9B95-4A43-static.midco.net)
00:33:04 × merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 265 seconds)
00:33:33 × werneta quits (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 265 seconds)
00:33:54 werneta joins (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
00:36:17 × Guest40 quits (~Guest40@138.251.117.48) (Quit: Ping timeout (120 seconds))
00:36:41 × notzmv quits (~zmv@user/notzmv) (Read error: Connection reset by peer)
00:40:51 SeanKing[m] parts (~seankingm@2001:470:69fc:105::cf9c) ()
00:41:45 × cowboy8625 quits (~cowboy@2001-48F8-4002-30E-BF21-709F-9B95-4A43-static.midco.net) (Quit: WeeChat 3.5)
00:42:57 cowboy8625 joins (~cowboy@2001-48F8-4002-30E-BF21-709F-9B95-4A43-static.midco.net)
00:43:05 SeanKing[m] joins (~seankingm@2001:470:69fc:105::cf9c)
01:01:41 × cowboy8625 quits (~cowboy@2001-48F8-4002-30E-BF21-709F-9B95-4A43-static.midco.net) (Ping timeout: 256 seconds)
01:04:23 × rbrins quits (~user@67.21.186.139) (Ping timeout: 240 seconds)
01:08:32 × jero98772 quits (~jero98772@190.158.28.80) (Ping timeout: 246 seconds)
01:08:45 cowboy8625 joins (~cowboy@2001-48F8-4002-30E-8B19-A165-5F15-CE9E-static.midco.net)
01:10:38 × albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
01:11:01 × evincar quits (~evincar@user/evincar) (Ping timeout: 240 seconds)
01:13:07 Guest40 joins (~Guest40@138.251.117.48)
01:13:40 × cowboy8625 quits (~cowboy@2001-48F8-4002-30E-8B19-A165-5F15-CE9E-static.midco.net) (Ping timeout: 265 seconds)
01:16:45 albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8)
01:17:24 × hgolden quits (~hgolden@cpe-172-251-233-141.socal.res.rr.com) (Remote host closed the connection)
01:19:31 × machinedgod quits (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 240 seconds)
01:19:31 × [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 240 seconds)
01:20:18 × puke quits (~puke@user/puke) (Quit: puke)
01:20:37 puke joins (~puke@user/puke)
01:23:57 × Guest40 quits (~Guest40@138.251.117.48) (Quit: Ping timeout (120 seconds))
01:25:22 hgolden joins (~hgolden@cpe-172-251-233-141.socal.res.rr.com)
01:25:36 [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470)
01:26:49 evincar joins (~evincar@user/evincar)
01:27:07 jero98772 joins (~jero98772@190.158.28.80)
01:29:07 merijn joins (~merijn@86-86-29-250.fixed.kpn.net)
01:31:33 × motherfsck quits (~motherfsc@user/motherfsck) (Ping timeout: 265 seconds)
01:36:52 × wroathe quits (~wroathe@user/wroathe) (Ping timeout: 265 seconds)
02:02:24 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija)))
02:02:24 finn_elija joins (~finn_elij@user/finn-elija/x-0085643)
02:02:24 finn_elija is now known as FinnElija
02:03:11 × merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 240 seconds)
02:07:14 Guest51 joins (~Guest51@69-165-220-190.dsl.teksavvy.com)
02:08:01 × xff0x quits (~xff0x@ai098135.d.east.v6connect.net) (Ping timeout: 240 seconds)
02:15:26 nate2 joins (~nate@98.45.169.16)
02:20:27 × td_ quits (~td@i53870904.versanet.de) (Ping timeout: 256 seconds)
02:22:06 td_ joins (~td@i53870913.versanet.de)
02:27:12 × accord quits (uid568320@id-568320.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
02:34:41 × puke quits (~puke@user/puke) (Quit: puke)
02:36:05 × Guest51 quits (~Guest51@69-165-220-190.dsl.teksavvy.com) (Quit: Client closed)
02:37:23 × waleee quits (~waleee@h-176-10-137-138.NA.cust.bahnhof.se) (Ping timeout: 264 seconds)
02:37:54 puke joins (~puke@user/puke)
02:40:27 wroathe joins (~wroathe@207-153-38-140.fttp.usinternet.com)
02:40:27 × wroathe quits (~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
02:40:27 wroathe joins (~wroathe@user/wroathe)
02:45:30 × wroathe quits (~wroathe@user/wroathe) (Ping timeout: 265 seconds)
02:46:09 × [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer)
02:55:22 xff0x joins (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp)
03:01:00 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
03:03:58 freeside_ joins (~mengwong@202.161.55.11)
03:04:40 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
03:05:25 cheater_ joins (~Username@user/cheater)
03:05:48 × cheater quits (~Username@user/cheater) (Ping timeout: 240 seconds)
03:05:50 cheater_ is now known as cheater
03:13:32 × evincar quits (~evincar@user/evincar) (Ping timeout: 265 seconds)
03:13:34 × jero98772 quits (~jero98772@190.158.28.80) (Remote host closed the connection)
03:17:37 jargon joins (~jargon@184.101.78.160)
03:18:33 × jargon quits (~jargon@184.101.78.160) (Remote host closed the connection)
03:19:20 × nate2 quits (~nate@98.45.169.16) (Ping timeout: 265 seconds)
03:20:14 evincar joins (~evincar@user/evincar)
03:23:35 × freeside_ quits (~mengwong@202.161.55.11) (Ping timeout: 240 seconds)
03:23:46 freeside_ joins (~mengwong@202.161.55.11)
03:26:33 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
03:27:59 × freeside_ quits (~mengwong@202.161.55.11) (Ping timeout: 240 seconds)
03:41:41 trev joins (~trev@user/trev)
03:43:23 × evincar quits (~evincar@user/evincar) (Ping timeout: 264 seconds)
03:48:55 evincar joins (~evincar@user/evincar)
03:51:23 use-value joins (~Thunderbi@2a00:23c6:8a03:2f01:d8c8:6fc6:e851:a318)
04:01:18 Ross[m]1 joins (~zhichuche@2001:470:69fc:105::3:584b)
04:10:25 _ht joins (~Thunderbi@28-52-174-82.ftth.glasoperator.nl)
04:36:55 coot joins (~coot@89-69-206-216.dynamic.chello.pl)
04:39:43 bilegeek joins (~bilegeek@2600:1008:b086:19d:2c4a:f5bf:dd10:b52f)
04:47:11 × evincar quits (~evincar@user/evincar) (Ping timeout: 240 seconds)
04:54:32 × azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 240 seconds)
04:59:09 × bliminse quits (~bliminse@user/bliminse) (Quit: leaving)
05:02:11 freeside_ joins (~mengwong@122.11.214.81)
05:07:11 × opticblast quits (~Thunderbi@172.58.86.143) (Ping timeout: 240 seconds)
05:10:39 evincar joins (~evincar@user/evincar)
05:11:34 × famubu quits (~julinuser@user/famubu) (Quit: leaving)
05:12:11 bliminse joins (~bliminse@user/bliminse)
05:13:52 bgs joins (~bgs@212-85-160-171.dynamic.telemach.net)
05:17:41 takuan joins (~takuan@178-116-218-225.access.telenet.be)
05:27:48 × myxokeph quits (~myxokeph@cpe-65-28-251-121.cinci.res.rr.com) (Ping timeout: 240 seconds)
05:27:58 coot_ joins (~coot@89-69-206-216.dynamic.chello.pl)
05:29:09 × coot quits (~coot@89-69-206-216.dynamic.chello.pl) (Ping timeout: 256 seconds)
05:29:10 coot_ is now known as coot
05:39:34 × _ht quits (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Quit: _ht)
05:40:43 michalz joins (~michalz@185.246.207.218)
05:47:41 × jle` quits (~jle`@cpe-23-240-75-236.socal.res.rr.com) (Ping timeout: 265 seconds)
05:49:24 jle` joins (~jle`@cpe-23-240-75-236.socal.res.rr.com)
05:50:37 × freeside_ quits (~mengwong@122.11.214.81) (Ping timeout: 265 seconds)
05:57:00 harveypwca joins (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67)
05:57:01 × pyook quits (~puke@user/puke) (Quit: Quit)
05:58:16 myxokeph joins (~myxokeph@cpe-65-28-251-121.cinci.res.rr.com)
06:01:48 freeside_ joins (~mengwong@202.161.55.11)
06:07:46 merijn joins (~merijn@86-86-29-250.fixed.kpn.net)
06:10:07 oo_miguel joins (~Thunderbi@77.252.47.78)
06:16:59 × werneta quits (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 264 seconds)
06:18:48 werneta joins (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
06:22:40 × bgs quits (~bgs@212-85-160-171.dynamic.telemach.net) (Remote host closed the connection)
06:23:05 acidjnk joins (~acidjnk@p200300d6e7072f6355212613ac33bd6e.dip0.t-ipconnect.de)
06:42:05 × merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 246 seconds)
06:48:23 mncheck joins (~mncheck@193.224.205.254)
06:51:53 × evincar quits (~evincar@user/evincar) (Ping timeout: 256 seconds)
06:54:21 gnalzo joins (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c)
06:59:19 lortabac joins (~lortabac@2a01:e0a:541:b8f0:2872:f96c:b2e6:63a4)
07:01:23 mc47 joins (~mc47@xmonad/TheMC47)
07:02:37 pyook joins (~puke@user/puke)
07:05:02 CiaoSen joins (~Jura@dynamic-046-114-222-182.46.114.pool.telefonica.de)
07:16:13 nate2 joins (~nate@98.45.169.16)
07:20:25 × bilegeek quits (~bilegeek@2600:1008:b086:19d:2c4a:f5bf:dd10:b52f) (Remote host closed the connection)
07:20:49 bilegeek joins (~bilegeek@2600:1008:b086:19d:2c4a:f5bf:dd10:b52f)
07:21:01 × nate2 quits (~nate@98.45.169.16) (Ping timeout: 240 seconds)
07:25:29 × eggplantade quits (~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
07:26:35 × hugo quits (znc@verdigris.lysator.liu.se) (Ping timeout: 264 seconds)
07:30:16 merijn joins (~merijn@86-86-29-250.fixed.kpn.net)
07:32:08 hugo joins (znc@verdigris.lysator.liu.se)
07:33:01 × harveypwca quits (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving)
07:34:47 × merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 240 seconds)
07:41:10 × Techcable quits (~Techcable@user/Techcable) (Ping timeout: 250 seconds)
07:41:20 Techcable joins (~Techcable@user/Techcable)
07:49:07 × bilegeek quits (~bilegeek@2600:1008:b086:19d:2c4a:f5bf:dd10:b52f) (Ping timeout: 256 seconds)
07:49:11 × Techcable quits (~Techcable@user/Techcable) (Read error: Connection reset by peer)
07:49:23 × hugo quits (znc@verdigris.lysator.liu.se) (Ping timeout: 264 seconds)
07:50:48 × m5zs7k quits (aquares@web10.mydevil.net) (Ping timeout: 240 seconds)
07:51:59 Techcable joins (~Techcable@user/Techcable)
07:52:54 × jle` quits (~jle`@cpe-23-240-75-236.socal.res.rr.com) (Ping timeout: 265 seconds)
07:54:44 jle` joins (~jle`@cpe-23-240-75-236.socal.res.rr.com)
07:55:25 m5zs7k joins (aquares@web10.mydevil.net)
07:57:02 machinedgod joins (~machinedg@d198-53-218-113.abhsia.telus.net)
07:58:55 hugo joins (znc@verdigris.lysator.liu.se)
08:01:10 merijn joins (~merijn@86.86.29.250)
08:12:25 × Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer)
08:15:16 mmhat joins (~mmh@p200300f1c706683cee086bfffe095315.dip0.t-ipconnect.de)
08:15:58 × econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity)
08:21:53 × tzh quits (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz)
08:23:00 × mmhat quits (~mmh@p200300f1c706683cee086bfffe095315.dip0.t-ipconnect.de) (Quit: WeeChat 3.8)
08:23:07 × ystael quits (~ystael@user/ystael) (Ping timeout: 256 seconds)
08:24:06 × mc47 quits (~mc47@xmonad/TheMC47) (Remote host closed the connection)
08:24:51 mc47 joins (~mc47@xmonad/TheMC47)
08:25:48 eggplantade joins (~Eggplanta@2600:1700:38c5:d800:11ad:4d6f:a0ef:a998)
08:29:38 ystael joins (~ystael@user/ystael)
08:30:14 × eggplantade quits (~Eggplanta@2600:1700:38c5:d800:11ad:4d6f:a0ef:a998) (Ping timeout: 246 seconds)
08:41:14 × mc47 quits (~mc47@xmonad/TheMC47) (Remote host closed the connection)
08:41:41 Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915)
08:42:43 × Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 260 seconds)
08:42:57 × zmt00 quits (~zmt00@user/zmt00) (Ping timeout: 256 seconds)
08:43:11 mc47 joins (~mc47@xmonad/TheMC47)
08:44:31 Lord_of_Life_ is now known as Lord_of_Life
08:58:22 × pyook quits (~puke@user/puke) (Ping timeout: 268 seconds)
08:58:23 ccapndave joins (~ccapndave@xcpe-62-167-164-99.cgn.res.adslplus.ch)
08:59:27 JimL joins (~quassel@89.162.16.26)
09:01:41 oo_miguel1 joins (~Thunderbi@77.252.47.78)
09:02:05 × oo_miguel quits (~Thunderbi@77.252.47.78) (Ping timeout: 246 seconds)
09:02:05 oo_miguel1 is now known as oo_miguel
09:04:25 alexherbo2 joins (~alexherbo@211.190.65.81.rev.sfr.net)
09:04:48 hgolden_ joins (~hgolden@cpe-172-251-233-141.socal.res.rr.com)
09:06:31 × hgolden quits (~hgolden@cpe-172-251-233-141.socal.res.rr.com) (Ping timeout: 240 seconds)
09:07:08 × JimL quits (~quassel@89.162.16.26) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
09:07:10 titibandit joins (~titibandi@user/titibandit)
09:09:09 JimL joins (~quassel@89.162.16.26)
09:16:11 pyook joins (~puke@user/puke)
09:17:01 × shriekingnoise quits (~shrieking@186.137.175.87) (Ping timeout: 240 seconds)
09:17:22 shriekingnoise joins (~shrieking@186.137.175.87)
09:18:33 gurkenglas joins (~gurkengla@dynamic-046-114-179-047.46.114.pool.telefonica.de)
09:22:21 __monty__ joins (~toonn@user/toonn)
09:24:29 ubert joins (~Thunderbi@2a02:8109:abc0:6434:a17e:7764:ca3b:275)
09:30:45 × ft quits (~ft@p4fc2a88b.dip0.t-ipconnect.de) (Quit: leaving)
09:33:53 × alexherbo2 quits (~alexherbo@211.190.65.81.rev.sfr.net) (Remote host closed the connection)
09:34:11 alexherbo2 joins (~alexherbo@2a02-842a-8180-4601-902b-4900-8b38-e602.rev.sfr.net)
09:40:44 phma_ joins (phma@2001:5b0:210d:9dd8:7e87:f62f:6b71:75cd)
09:44:43 × phma quits (~phma@host-67-44-208-102.hnremote.net) (Ping timeout: 256 seconds)
09:51:47 hsw joins (~hsw@2001-b030-2303-0104-0172-0025-0012-0132.hinet-ip6.hinet.net)
09:52:11 × ccapndave quits (~ccapndave@xcpe-62-167-164-99.cgn.res.adslplus.ch) (Quit: Textual IRC Client: www.textualapp.com)
09:54:52 × dfg quits (~dfg@user/dfg) (Remote host closed the connection)
09:55:10 dfg joins (~dfg@dfg.rocks)
09:55:10 × dfg quits (~dfg@dfg.rocks) (Changing host)
09:55:10 dfg joins (~dfg@user/dfg)
09:58:39 phma_ is now known as phma
10:01:16 × freeside_ quits (~mengwong@202.161.55.11) (Ping timeout: 268 seconds)
10:01:35 × shriekingnoise quits (~shrieking@186.137.175.87) (Ping timeout: 240 seconds)
10:01:35 × tokie quits (~tokie@tokie.net) (Ping timeout: 260 seconds)
10:01:36 Guest75 joins (~Guest75@ip5f5be7a8.dynamic.kabel-deutschland.de)
10:02:04 freeside_ joins (~mengwong@122.11.248.245)
10:06:29 × gurkenglas quits (~gurkengla@dynamic-046-114-179-047.46.114.pool.telefonica.de) (Ping timeout: 246 seconds)
10:06:49 × freeside_ quits (~mengwong@122.11.248.245) (Ping timeout: 256 seconds)
10:07:20 × pharonix71 quits (~pharonix7@user/pharonix71) (Ping timeout: 240 seconds)
10:07:31 × xff0x quits (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 240 seconds)
10:09:43 pharonix71 joins (~pharonix7@user/pharonix71)
10:11:11 × Guest75 quits (~Guest75@ip5f5be7a8.dynamic.kabel-deutschland.de) (Quit: Connection closed)
10:12:54 tokie joins (~tokie@tokie.net)
10:17:35 × Techcable quits (~Techcable@user/Techcable) (Ping timeout: 240 seconds)
10:20:38 Techcable joins (~Techcable@user/Techcable)
10:22:23 × CiaoSen quits (~Jura@dynamic-046-114-222-182.46.114.pool.telefonica.de) (Ping timeout: 240 seconds)
10:23:34 gurkenglas joins (~gurkengla@dynamic-046-114-179-047.46.114.pool.telefonica.de)
10:24:45 <jade[m]> I was asking about the signature of `($) :: forall r a (b :: TYPE r). (a -> b) -> a -> b`. From what I understand it just means that b has _some_ runtime representation?
10:24:45 <jade[m]> What does that mean in practice? What is the difference to `($) :: (a -> b) -> a -> b`?
10:25:13 kuribas joins (~user@ip-188-118-57-242.reverse.destiny.be)
10:25:35 <geekosaur> it means that it has any runtime representation, as opposed to the default of being `LiftedRep`
10:28:38 <jade[m]> does that have any effect in practice though? Is there anything that you can do with that which the "normal" signature can't?
10:30:27 <geekosaur> you can use it with unboxed values
10:30:54 <geekosaur> (which should not be surprising as it's just normal function application with a different fixity)
10:31:11 <geekosaur> this doesn't matter for most purposes but there are indeed uses for it
10:31:52 <jade[m]> mh I see
10:32:05 <jade[m]> thank you, I'll have to learn more about these primitive things
10:32:41 <ncf> doesn't ($) have to be special-cased internally anyway for impredicative polymorphism or something
10:33:38 <tomsmeding> geekosaur: shouldn't the 'a' also be given a kind annotation then?
10:33:49 <ncf> this https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0274-quick-look-impredicativity.rst#the-typing-rule-for
10:34:36 × gnalzo quits (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8)
10:36:03 <geekosaur> tomsmeding, I think `a` is already representation polymorphic? it's `b` that defaults to `TYPE LiftedRep` aka `Type`
10:36:24 <tomsmeding> hmm
10:36:38 <geekosaur> way back in the day the kind of the function arrow was something like `? -> ?? -> *`
10:36:43 <geekosaur> :k (->)
10:36:44 <lambdabot> * -> * -> *
10:37:02 <geekosaur> % :set -fprint-explicit-foralls
10:37:02 <yahb2> <no output>
10:37:08 <geekosaur> % :kind (->)
10:37:08 <yahb2> (->) :: * -> * -> *
10:37:11 <geekosaur> hm
10:37:35 <tomsmeding> also there's something weird going on anyway https://paste.tomsmeding.com/j8g3OWzO
10:37:44 <tomsmeding> seems ($) is indeed handled specially somehow
10:38:43 <tomsmeding> % :set -fprint-explicit-kinds -fprint-explicit-runtime-reps
10:38:43 <yahb2> <no output>
10:38:48 <tomsmeding> $ :kind (->)
10:38:52 <tomsmeding> % :kind (->)
10:38:52 <yahb2> (->) :: forall {q :: GHC.Types.RuntimeRep} ; {r :: GHC.Types.RuntimeRep}. ; TYPE q -> TYPE r -> *
10:39:01 <tomsmeding> geekosaur: ^
10:39:22 <ncf> apparently base 4.19 makes ($) representation-polymorphic in both parameters
10:39:25 <jade[m]> huh interesting
10:39:31 × acidjnk quits (~acidjnk@p200300d6e7072f6355212613ac33bd6e.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
10:39:38 <ncf> https://gitlab.haskell.org/ghc/ghc/-/blob/master/libraries/base/GHC/Base.hs#L1601
10:40:34 <ncf> > the generalisation forced a change in its implementation
10:40:36 <lambdabot> <hint>:1:36: error: parse error on input ‘in’
10:40:50 <tomsmeding> ncf: not only ($)'s implementation, GHC's implementation apparently
10:40:50 <ncf> love to read about the implementation of function application
10:40:57 <tomsmeding> because that type is not accepted by ghc 9.2.4 :p
10:41:26 <ncf> statements dreamt up by the utterly deranged
10:41:33 <tomsmeding> ah but it is accepted by 9.6.1
10:41:35 <ncf> ($) was not meant to be given types!
10:41:54 <ncf> "yes i would like forall repa (a :: TYPE repa). apples please"
10:41:57 <tomsmeding> lol
10:42:40 <tomsmeding> 9.6.1 accepts a more general type for ($) than the one in 9.6.1's base, leading to my app in my paste working whereas ($) doesn't
10:42:47 zmt00 joins (~zmt00@user/zmt00)
10:43:30 <tomsmeding> @hackage repa
10:43:30 <lambdabot> https://hackage.haskell.org/package/repa
10:45:50 <carbolymer> if I do `let foo = someExpensiveFunction` and use foo multiple times, `someExpensiveFunction` would be executed only once and the result reused, right?
10:46:42 <geekosaur> usually
10:46:51 <carbolymer> wdym
10:47:33 <geekosaur> lets can be sunk or floated which can change how often they are evaluated. usually it will take your code as a request (not command) to only perform the computation once
10:47:48 <geekosaur> but you can annotate it with Debug.Trace.trace to verify
10:48:47 <opqdonut> also if the type of foo is polymorphic (e.g. Num a => a), it might get recomputed
10:49:02 <carbolymer> opqdonut: oh yeah, that would make sense
10:49:14 <tomsmeding> carbolymer: note that you may see different behaviour in a compiled file and in ghci, because ghci sets -XNoMonomorphismRestriction by default, and without the mono-res, opqdonut's situation arises
10:49:20 × gry quits (~quassel@botters/gry) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
10:49:42 <geekosaur> no it won't because the monomorphism restriction applies to top level bindings, not let bindings
10:49:46 <opqdonut> if it's an actual let...in, TDMR won't affect
10:49:48 <geekosaur> MonoLocalBinds applies to those
10:49:51 <opqdonut> yeah
10:49:55 <tomsmeding> ah!
10:49:56 <tomsmeding> right
10:50:29 <opqdonut> carbolymer: in general, for basic haskell, "a named value gets evaluated at most once" is a good rule of thumb
10:50:52 gry joins (quasselcor@2400:c400:1002:11:5054:ff:fe78:ebe6)
10:51:26 <carbolymer> opqdonut: I thought so, but I got a review comment that my value in where gets recomputed every time, so it got me thinking if that's really the case
10:51:28 <tomsmeding> ghc is allowed to inline and violate that rule, but if the computation is actually expensive, that would arguably be a bug
10:52:28 <sm1> carbolymer: would be interesting to see that code
10:52:45 <tomsmeding> carbolymer: if it depends on the function arguments, then it will get recomputed the next time the function that the 'where' is attached to is called
10:52:50 <opqdonut> yeah
10:53:07 <opqdonut> and even if it doesn't depend on the args, it might get recomputed
10:53:11 <geekosaur> or, as mentioned, if it's inferred to be typeclass-polymorphic
10:53:15 <tomsmeding> if it doesn't depend on the function arguments, ghc should (but might not) float it up and make it a top-level constant
10:53:21 <geekosaur> in which case you may like `MonoLocalBinds`
10:53:21 <carbolymer> sm1: here https://github.com/input-output-hk/cardano-node/pull/5197/files/b78ed2c5038381134d9f91971f541623f6d1d3e9#diff-12e0bb9f3db22ac71c93ed3932f54c91a6f6bf7243afaa29ccd7ecb3657e6069R1042
10:54:13 Guest40 joins (~Guest40@138.251.117.48)
10:54:56 <carbolymer> tomsmeding: yeah, that's expected I'd say, but I would like to avoid recomputing within single call of a function where 'where' is placed
10:55:00 <sm1> thanks!
10:55:12 tomsmeding isn't sure which where binding we're talking about here
10:55:45 <sm1> https://github.com/input-output-hk/cardano-node/blob/b78ed2c5038381134d9f91971f541623f6d1d3e9/cardano-api/src/Cardano/Api/Fees.hs#L1042 I think
10:55:48 × gry quits (quasselcor@2400:c400:1002:11:5054:ff:fe78:ebe6) (Changing host)
10:55:48 gry joins (quasselcor@botters/gry)
10:55:53 <sm1> it depends on pparams function argument
10:56:03 <carbolymer> sm1: yes
10:56:10 <carbolymer> sry, I thought that I copied highlighted line
10:58:59 × gurkenglas quits (~gurkengla@dynamic-046-114-179-047.46.114.pool.telefonica.de) (Ping timeout: 264 seconds)
10:59:23 <tomsmeding> carbolymer: I think their point is not that the whole eBpparams will be recomputed every time, but that the Either will be matched on every time
11:00:01 <tomsmeding> which is indeed repeated computation, but much less than the whole binding
11:01:43 <carbolymer> tomsmeding: ah, thanks, that would make sense
11:05:09 xff0x joins (~xff0x@2405:6580:b080:900:eba2:f46b:4628:1a3b)
11:05:34 vpan joins (~0@mail.elitnet.lt)
11:07:08 <sm1> carbolymer: off the top of your head, is there a trick to get hls working in this repo ? It can't detect the ghc version.
11:10:08 <carbolymer> sm1: I'm using direnv to manually set ghc version https://c-v.sh/mirkysissies.txt
11:10:37 <sm1> 👍️
11:11:44 <sm1> phew.. so old
11:12:14 <carbolymer> well we need to support 8.10 as of now, but it should work with 9.4 I think
11:15:10 <sm1> nothing works here. Sorry y'all dropped stack!
11:15:21 <sm1> but don't mind me
11:17:43 nate2 joins (~nate@98.45.169.16)
11:19:35 <tomsmeding> sm1: what happens if you add a hie.yaml file in the repo root with the contents "cradle:\n cabal:" (with the \n denoting an actual newline)
11:21:52 gurkenglas joins (~gurkengla@dynamic-046-114-179-047.46.114.pool.telefonica.de)
11:22:59 × nate2 quits (~nate@98.45.169.16) (Ping timeout: 264 seconds)
11:23:07 <sm1> no change tomsmeding
11:23:51 azimut joins (~azimut@gateway/tor-sasl/azimut)
11:25:51 × Guest40 quits (~Guest40@138.251.117.48) (Quit: Ping timeout (120 seconds))
11:28:25 caryhartline joins (~caryhartl@2600:1700:2d0:8d30:31be:f6fb:98c3:bcac)
11:37:11 <sm1> (got it starting up by: adding with-compiler: ghc-9.2.7 in cabal.project.local, brew install secp256k1)
11:37:52 oneeyedalien joins (~oneeyedal@103.21.127.60)
11:39:55 d3mon joins (~d3mon@2a00:23c7:aa92:5c01:482e:ed22:ce04:3bef)
11:42:23 <d3mon> hi, beginner here, could someone help me understand what's causing the type error here? https://paste.tomsmeding.com/cfrDOEar
11:42:42 <ncf> the error message should help you
11:42:46 <merijn> d3mon: Could you include the type error? ;)
11:43:10 <d3mon> oh yeah oops that would help wouldn't it
11:43:41 <d3mon> https://paste.tomsmeding.com/Zjoi8rRR here's the same again with the type error appended
11:43:43 <merijn> d3mon: unrelated style remark: I, uh, wouldn't indent that where so much :p
11:43:46 bontaq joins (~user@ool-45779b84.dyn.optonline.net)
11:44:21 <ncf> you can't multiply Ints and Doubles together
11:44:23 <merijn> d3mon: oh! There is no implicit type conversion for numbers (like C, etc.) would do
11:44:26 <merijn> :t (*)
11:44:27 <lambdabot> Num a => a -> a -> a
11:44:40 <merijn> * requires both arguments to have the same type
11:44:53 <merijn> You probably want
11:44:55 <merijn> :t fromIntegral
11:44:56 <lambdabot> (Integral a, Num b) => a -> b
11:45:04 <merijn> > fromIntegral (1 :: Int) :: Double
11:45:06 <lambdabot> 1.0
11:45:39 <merijn> > (2.0 :: Double) * (1 :: Int)
11:45:40 <lambdabot> error:
11:45:41 <lambdabot> • Couldn't match expected type ‘Double’ with actual type ‘Int’
11:45:41 <lambdabot> • In the second argument of ‘(*)’, namely ‘(1 :: Int)’
11:45:46 <merijn> > (2.0 :: Double) * fromIntegral (1 :: Int)
11:45:47 <lambdabot> 2.0
11:46:08 <d3mon> merijn: ah okay. Do you know where I could find a good style guide for Haskell?
11:46:26 <d3mon> I get it now, so both the arguments to (*) have to be of the same type
11:46:45 <merijn> d3mon: I don't think there's really one, but normally you'd only indent where 1 (or half) an indent
11:46:56 × oneeyedalien quits (~oneeyedal@103.21.127.60) (Quit: Leaving)
11:47:16 <d3mon> one indent from the margin?
11:48:36 <merijn> d3mon: I generally format nested stuff like this: https://github.com/merijn/Belewitte/blob/master/benchmark-analysis/src/StepAggregate.hs#L62-L119
11:51:57 <d3mon> great thanks!
11:52:21 <d3mon> how come using fromIntegral like this doesn't solve the problem? https://paste.tomsmeding.com/5rmwTU5U
11:53:56 × jmdaemon quits (~jmdaemon@user/jmdaemon) (Ping timeout: 246 seconds)
11:56:24 <ncf> p0 and aug are still Ints
11:56:35 <ncf> :t (+)
11:56:36 <lambdabot> Num a => a -> a -> a
11:57:16 <d3mon> so I need to convert them all to fractional types?
11:58:31 × pavonia quits (~user@user/siracusa) (Quit: Bye!)
11:58:47 <d3mon> okay that seems to be working. I don't understand why the error message didn't change when I fixed the first one, though
12:00:06 <merijn> d3mon: Because change the first one changes the type of the multiplication to Double, but the + still wants it to be Int
12:00:48 <merijn> d3mon: And * being double is still caused by 'pc'
12:01:05 <d3mon> ah
12:01:47 <d3mon> so where exactly is this type error coming from? is it the whole expression that's assigned to `result`?
12:01:49 <merijn> d3mon: One thing that's different in haskell's type inference compared to, say, 'auto' in C++ and Go's typing is that constraint and type information in Haskell is bidirectional
12:02:35 <d3mon> what does that mean?
12:02:58 accord joins (uid568320@id-568320.hampstead.irccloud.com)
12:03:40 <merijn> d3mon: Well, 'years', 'p0', 'aug', and 'p' being Int and 'pc' bein Double are a given (from the type signature), (+) and (*) both demand the same types in both their arguments, but there's way to decide which side is "right"
12:04:19 <merijn> d3mon: I mean that type information goes both "upwards" (from individual variables into larger expressions) and downards (from the final type of an expression to it's individual subexpressions)
12:06:13 <d3mon> okay, so as I understand it, Haskell presents the information coming from "the top" (e.g. declared type of a function) as the "expected" type, and the information coming from "the bottom" as the "actual" type, right?
12:06:20 <merijn> So GHC just sees: 1) the argument to + is Int and some type 'b' (the result type of the multiplication, initially you get a type error because (*) with Int and Double leads to a conflict (since Int and Double aren't the same). Once you fix that with fromIntegral the inferred result type of * is the type of 'pc' (i.e. Double), which then conflicts with the Int on the other side of (+), and thus it
12:06:20 × zaquest quits (~notzaques@5.130.79.72) (Remote host closed the connection)
12:06:26 <merijn> concludes "things mismatch here"
12:07:03 <merijn> d3mon: I'm not gonna lie, after, like, 15 years I still haven't memorised which one is "expected" and which one is "actual" xD
12:07:10 <d3mon> haha lol
12:07:21 <d3mon> I'm *pretty* sure that "expected" is the "top" type
12:08:03 <merijn> d3mon: otoh, since information goes both directions anyway, which is "the top" and which is "the bottom" is generally not that important, since you can usually easily figure out which is which looking at the code and types
12:08:17 <merijn> d3mon: (i.e. pc being Double)
12:08:46 <geekosaur> the real problem is you have to guess what order the typechecker is working in; that determines which is expected vs. actual
12:09:22 <merijn> d3mon: A better example of things going backwards is that in most languages you can't have a polymorphic return type
12:09:27 <merijn> i.e. compare
12:09:29 azimut_ joins (~azimut@gateway/tor-sasl/azimut)
12:09:29 <merijn> :t readMaybe
12:09:30 <lambdabot> error: Variable not in scope: readMaybe
12:09:35 <merijn> boo
12:09:37 <merijn> :t read
12:09:38 <lambdabot> Read a => String -> a
12:09:57 <d3mon> uh huh
12:10:05 <merijn> d3mon: In most languages you can't write something like that where a function's result type is inferred from where you use it
12:10:14 <d3mon> Yeah I get that
12:10:23 × azimut quits (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection)
12:11:04 <tomsmeding> @let import Text.Read
12:11:05 <lambdabot> Defined.
12:12:19 <d3mon> how can I convert back from a Double to an Int now? I thought using `floor` would work
12:12:28 <merijn> floor, round, ceil
12:13:13 <merijn> (usual warning that round for Double uses banker's rounding by default, since that's what IEEE-754 species, but no one expects :p)
12:14:55 <merijn> oh, there's truncate too
12:15:25 tomsmeding . o O ( fromEnum )
12:15:47 <merijn> And then there's of course also fixed precision and rationals for more precise results ;)
12:15:59 <merijn> tomsmeding: I'm gonna find you a duct tape you to a ceiling
12:16:13 <tomsmeding> merijn: I knew what would make you angry
12:16:56 <d3mon> :t fromEnum
12:16:57 <lambdabot> Enum a => a -> Int
12:17:32 × caryhartline quits (~caryhartl@2600:1700:2d0:8d30:31be:f6fb:98c3:bcac) (Quit: caryhartline)
12:17:40 <d3mon> Great, I've got this puzzle solution working now, thanks
12:17:44 jade[m] uploaded an image: (25KiB) < https://libera.ems.host/_matrix/media/v3/download/matrix.org/UdkZqMJdGgegxAqlnpONGeRC/image.png >
12:17:45 <jade[m]> this keeps happening to my ghci
12:17:59 <jade[m]> im not really sure how or why
12:18:34 <tomsmeding> d3mon: please for the love of god do not use fromEnum here
12:18:50 <d3mon> tomsmeding: don't worry I was just curious. what's it supposed to be for anyway?
12:19:17 <tomsmeding> me and merijn and others are of the opinion that fromEnum shouldn't even be defined for Double in the first place
12:19:24 <tomsmeding> ignore it until you deal with Enum
12:19:38 <merijn> d3mon: I swear to god, if you use fromEnum I will kill myself and have my ghost haunt you for eternity
12:19:49 <geekosaur> jade[m], https://bbs.archlinux.org/viewtopic.php?id=282429
12:19:53 <carbolymer> wait wat, there's Enum instance for Float and Double o.O
12:20:02 <merijn> carbolymer: Braindamaged
12:20:09 <tomsmeding> carbolymer: yes, and that has been the meme of this channel for years
12:20:13 <merijn> > enumFromThen 1.5 1.6
12:20:14 <lambdabot> [1.5,1.6,1.7000000000000002,1.8000000000000003,1.9000000000000004,2.00000000...
12:20:16 <carbolymer> jade[m]: looks like your first mistake is using GHC provided by arch
12:20:18 <merijn> > map fromEnum $ enumFromThen 1.5 1.6
12:20:19 <geekosaur> upgrade to ghc 9.4 or apply a kernel hotfix as specified in that discussion
12:20:19 <lambdabot> [1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,5,5,5...
12:20:34 <tomsmeding> > map fromEnum [1.5,1.6..]
12:20:35 <geekosaur> carbolymer, this isn't arch's fault, they just have the best discussion of it
12:20:35 <lambdabot> [1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,5,5,5...
12:20:38 <merijn> jade[m]: Kernel bug
12:20:41 <geekosaur> it's a kernel 6,1/6.2 bug
12:20:43 <merijn> carbolymer: That's irrelevant
12:20:58 <merijn> Kernel's busted. It was fixed in 6.2.9, but 6.2.13 regressed and rebroke it
12:20:59 <tomsmeding> (although using Arch's GHC is also a mistake)
12:21:19 <carbolymer> geekosaur: still, using ghc from arch repo for development means opening a can of worms
12:21:19 <jade[m]> ah, I didn't even realize I had it installed via pacman ...
12:21:24 <jade[m]> I thought I used ghcup
12:21:39 <merijn> jade[m]: ghcup doesn't work either, since it's a kernel bug
12:21:55 <jade[m]> ok, still
12:21:59 <merijn> ghc 9.4 *might* work, since it doesn't seem to trigger said kernel bug
12:22:36 <merijn> Well, that or downgrading your kernel (or upgrading, if they refixed it by now?)
12:24:55 × bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
12:26:02 <yin> :t pure succ <*> pure 0
12:26:03 <lambdabot> (Applicative f, Enum b, Num b) => f b
12:26:16 <yin> > pure succ <*> pure 0
12:26:18 <lambdabot> error:
12:26:18 <lambdabot> • Ambiguous type variable ‘f0’ arising from a use of ‘show_M826100026447...
12:26:18 <lambdabot> prevents the constraint ‘(Show (f0 Integer))’ from being solved.
12:27:09 <yin> if i understand correctly, ghci defaults the Applicative to IO ?
12:27:48 <yin> because it gives me `2 :: Integer` without a problem
12:28:16 <carbolymer> > pure 0 :: _
12:28:18 <lambdabot> error:
12:28:18 <lambdabot> • Ambiguous type variable ‘f0’ arising from a use of ‘show_M288124193279...
12:28:18 <lambdabot> prevents the constraint ‘(Show (f0 Integer))’ from being solved.
12:28:40 <carbolymer> https://bpa.st/7QQO6
12:28:46 <carbolymer> yes, IO
12:29:27 <tomsmeding> carbolymer: what ghc version is that
12:29:35 <geekosaur> https://downloads.haskell.org/ghc/9.6.1/docs/users_guide/ghci.html#i-o-actions-at-the-prompt
12:29:40 <tomsmeding> I'm getting "standing for 'f a'" on 8.10.7, 9.2.4 and 9.6.1
12:29:42 <carbolymer> tomsmeding: 9.4.4
12:29:50 <geekosaur> note "provided it can be instantiated to IO"
12:29:51 <tomsmeding> same
12:30:13 <tomsmeding> carbolymer: https://paste.tomsmeding.com/b2o3Say0
12:30:20 <carbolymer> :set -XPartialTypeSignatures
12:30:35 <tomsmeding> oh the defaulting happens later :p
12:30:50 <tomsmeding> ugly that you get to see that ghciStepIO
12:31:23 <carbolymer> yeah
12:31:25 <tomsmeding> % :set -XPartialTypeSignatures
12:31:25 <yahb2> <no output>
12:31:29 <tomsmeding> % pure 0 :: _
12:31:29 <yahb2> <interactive>:113:11: warning: [-Wpartial-type-signatures] ; • Found type wildcard ‘_’ standing for ‘IO Integer’ ; • In an expression type signature: _ ; In the first argument of ‘GHC...
12:31:32 <tomsmeding> % show (pure 0 :: _)
12:31:32 <yahb2> <interactive>:115:1: error: ; • Ambiguous type variable ‘f0’ arising from a use of ‘show’ ; prevents the constraint ‘(Show (f0 Integer))’ from being solved. ; Probable fix: use a ty...
12:31:39 <tomsmeding> the second one is the error that lambdabot gives
12:34:29 CiaoSen joins (~Jura@dynamic-046-114-222-182.46.114.pool.telefonica.de)
12:35:47 × d3mon quits (~d3mon@2a00:23c7:aa92:5c01:482e:ed22:ce04:3bef) (Quit: Client closed)
12:40:01 × zer0bitz_ quits (~zer0bitz@user/zer0bitz) (Ping timeout: 240 seconds)
12:40:05 zer0bitz joins (~zer0bitz@user/zer0bitz)
12:50:37 × bontaq quits (~user@ool-45779b84.dyn.optonline.net) (Remote host closed the connection)
12:50:51 bontaq joins (~user@ool-45779b84.dyn.optonline.net)
12:50:55 × mncheck quits (~mncheck@193.224.205.254) (Remote host closed the connection)
12:51:12 mncheck joins (~mncheck@193.224.205.254)
12:54:28 × myme quits (~myme@2a01:799:d60:e400:2dd4:a7b:39d8:afc) (Ping timeout: 240 seconds)
12:55:24 × titibandit quits (~titibandi@user/titibandit) (Remote host closed the connection)
12:55:35 myme joins (~myme@2a01:799:d60:e400:2ce:5c57:3d17:4b34)
12:56:35 × mc47 quits (~mc47@xmonad/TheMC47) (Remote host closed the connection)
12:58:23 × gurkenglas quits (~gurkengla@dynamic-046-114-179-047.46.114.pool.telefonica.de) (Ping timeout: 264 seconds)
13:06:27 titibandit joins (~titibandi@user/titibandit)
13:09:06 caryhartline joins (~caryhartl@2600:1700:2d0:8d30:511d:d8dc:88ae:f967)
13:12:52 gnalzo joins (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c)
13:16:23 × titibandit quits (~titibandi@user/titibandit) (Remote host closed the connection)
13:16:54 titibandit joins (~titibandi@user/titibandit)
13:20:53 d3mon joins (~d3mon@2a00:23c7:aa92:5c01:482e:ed22:ce04:3bef)
13:24:47 × Techcable quits (~Techcable@user/Techcable) (Ping timeout: 240 seconds)
13:30:14 eggplantade joins (~Eggplanta@2600:1700:38c5:d800:11ad:4d6f:a0ef:a998)
13:32:31 × zmt00 quits (~zmt00@user/zmt00) (Ping timeout: 240 seconds)
13:33:28 Techcable joins (~Techcable@user/Techcable)
13:34:28 × eggplantade quits (~Eggplanta@2600:1700:38c5:d800:11ad:4d6f:a0ef:a998) (Ping timeout: 240 seconds)
13:38:24 zer0bitz_ joins (~zer0bitz@user/zer0bitz)
13:39:39 × albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
13:40:08 × zer0bitz quits (~zer0bitz@user/zer0bitz) (Ping timeout: 240 seconds)
13:40:51 acidjnk joins (~acidjnk@p200300d6e7072f63d1111b83d6638be4.dip0.t-ipconnect.de)
13:44:13 wroathe joins (~wroathe@207-153-38-140.fttp.usinternet.com)
13:44:13 × wroathe quits (~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
13:44:13 wroathe joins (~wroathe@user/wroathe)
13:45:48 albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8)
13:46:58 × son0p quits (~ff@181.136.122.143) (Ping timeout: 268 seconds)
13:49:05 × dsrt^ quits (~dsrt@73.237.206.60) (Ping timeout: 246 seconds)
13:49:48 × wroathe quits (~wroathe@user/wroathe) (Ping timeout: 240 seconds)
13:51:21 Guest51 joins (~Guest51@69-165-220-190.dsl.teksavvy.com)
13:58:19 nick4 joins (~nick@2600:8807:9103:b700:497e:4b24:ec2b:6bec)
14:02:14 waleee joins (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7)
14:02:49 gurkenglas joins (~gurkengla@dynamic-046-114-179-047.46.114.pool.telefonica.de)
14:03:13 fizbin joins (~fizbin@user/fizbin)
14:04:49 × nick4 quits (~nick@2600:8807:9103:b700:497e:4b24:ec2b:6bec) (Ping timeout: 256 seconds)
14:11:31 × accord quits (uid568320@id-568320.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
14:11:57 × caryhartline quits (~caryhartl@2600:1700:2d0:8d30:511d:d8dc:88ae:f967) (Quit: caryhartline)
14:16:13 fireking4 joins (~karl@112.206.65.164)
14:18:10 <fireking4> What sort of projects do you work on right now?
14:18:41 shriekingnoise joins (~shrieking@186.137.175.87)
14:29:04 mark_ joins (~mark@2603-7000-da43-eccc-5dec-51d9-44db-59fc.res6.spectrum.com)
14:29:28 mark_ is now known as Hounded
14:30:28 × Hounded quits (~mark@2603-7000-da43-eccc-5dec-51d9-44db-59fc.res6.spectrum.com) (Client Quit)
14:30:46 Hounded joins (~mark@2603-7000-da43-eccc-5dec-51d9-44db-59fc.res6.spectrum.com)
14:30:59 Hounded is now known as Hounded1969
14:33:47 × gurkenglas quits (~gurkengla@dynamic-046-114-179-047.46.114.pool.telefonica.de) (Ping timeout: 264 seconds)
14:33:51 nick4 joins (~nick@2600:8807:9103:b700:497e:4b24:ec2b:6bec)
14:38:15 × nick4 quits (~nick@2600:8807:9103:b700:497e:4b24:ec2b:6bec) (Ping timeout: 256 seconds)
14:42:44 caryhartline joins (~caryhartl@2600:1700:2d0:8d30:fc15:d4ea:f20e:7419)
14:48:13 <merijn> man...why did network get rid of iNADDR_ANY
14:49:35 <geekosaur> isn't that network-bsd?
14:50:19 <merijn> No?
14:50:34 <merijn> geekosaur: It's a constant that you pass to bind()
14:51:04 <merijn> The deprecation notice says "use getAddrInfo", but that's dumb, because AFAIK it's impossible to get the same behaviour with getAddrInfo
14:51:06 <geekosaur> oh, should be `Network.Socket` but indeed it seems to be missing
14:52:14 <merijn> It was deprecated and then removed in 3.0
14:52:24 <merijn> But I don't understand why
14:52:49 <merijn> aNY_PORT was replaced with defaultPort, which I can get
14:53:12 <merijn> But now I need to do hacky shit like manually building a 0.0.0.0 address instead of a nicely named constant
14:53:27 <geekosaur> looks like `AI_PASSIVE` is supposed to do that now?
14:55:31 × waleee quits (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Ping timeout: 240 seconds)
14:59:05 × CiaoSen quits (~Jura@dynamic-046-114-222-182.46.114.pool.telefonica.de) (Ping timeout: 246 seconds)
15:02:30 waleee joins (~waleee@h-176-10-137-138.NA.cust.bahnhof.se)
15:03:07 nick4 joins (~nick@2600:8807:9103:b700:497e:4b24:ec2b:6bec)
15:03:08 ocharles[m] joins (~ocharlesm@2001:470:69fc:105::3:5899)
15:03:32 × alexherbo2 quits (~alexherbo@2a02-842a-8180-4601-902b-4900-8b38-e602.rev.sfr.net) (Remote host closed the connection)
15:03:51 alexherbo2 joins (~alexherbo@2a02-842a-8180-4601-902b-4900-8b38-e602.rev.sfr.net)
15:07:54 × nick4 quits (~nick@2600:8807:9103:b700:497e:4b24:ec2b:6bec) (Ping timeout: 265 seconds)
15:12:38 <merijn> Well, first need to excise an 11 year old package from the code to see if that makes it work :p
15:15:09 russell` joins (~user@67.21.186.139)
15:15:27 russell` parts (~user@67.21.186.139) ()
15:17:39 fireking4 parts (~karl@112.206.65.164) (WeeChat 4.0.0-dev)
15:18:17 dhil joins (~dhil@78.45.150.83.ewm.ftth.as8758.net)
15:19:16 nate2 joins (~nate@98.45.169.16)
15:20:02 × vpan quits (~0@mail.elitnet.lt) (Quit: Leaving.)
15:20:54 × werneta quits (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Remote host closed the connection)
15:22:56 strugglingCrab joins (~strugglin@2a02:a03f:acfa:b800:78f8:196d:2cf4:70c5)
15:23:01 freeside_ joins (~mengwong@103.252.202.151)
15:23:59 × nate2 quits (~nate@98.45.169.16) (Ping timeout: 240 seconds)
15:23:59 × Guest51 quits (~Guest51@69-165-220-190.dsl.teksavvy.com) (Quit: Client closed)
15:27:47 × fizbin quits (~fizbin@user/fizbin) (Ping timeout: 246 seconds)
15:28:23 × waleee quits (~waleee@h-176-10-137-138.NA.cust.bahnhof.se) (Ping timeout: 240 seconds)
15:28:43 × freeside_ quits (~mengwong@103.252.202.151) (Ping timeout: 268 seconds)
15:29:39 <d3mon> is there a function in the base package which can be used to split a string into the substrings which appear between a particular sequence of characters?
15:29:59 <d3mon> in the input stream, three spaces indicates something special and different from a single space
15:30:07 <d3mon> so I need to split on three spaces but not on single spaces
15:30:12 sagax joins (~sagax_nb@user/sagax)
15:30:23 <ncf> @hackage split
15:30:23 <lambdabot> https://hackage.haskell.org/package/split
15:30:28 <c_wraith> d3mon: not easily. For doing that sort of thing easily, I'd go to the split package
15:31:26 zmt00 joins (~zmt00@user/zmt00)
15:32:18 Sgeo joins (~Sgeo@user/sgeo)
15:33:21 <d3mon> oh, it looks like the `split` package is part of the standard library now
15:33:52 motherfsck joins (~motherfsc@user/motherfsck)
15:34:40 nick4 joins (~nick@2600:8807:9103:b700:497e:4b24:ec2b:6bec)
15:34:41 <c_wraith> It doesn't come with ghc... What other definition of "standard library" are you using?
15:35:09 × azimut_ quits (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection)
15:35:33 azimut joins (~azimut@gateway/tor-sasl/azimut)
15:35:34 <tomsmeding> you've got to love the package description of 'split'
15:36:07 <c_wraith> oh no. it has a typo in the word "diverse"
15:36:08 × acidjnk quits (~acidjnk@p200300d6e7072f63d1111b83d6638be4.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
15:37:24 × lortabac quits (~lortabac@2a01:e0a:541:b8f0:2872:f96c:b2e6:63a4) (Quit: WeeChat 2.8)
15:37:35 <tomsmeding> c_wraith: fairly sure that's intentional https://en.wiktionary.org/wiki/divers#Etymology_2
15:37:56 <c_wraith> oh, huh. I had no idea that was an archaic spelling. ok then!
15:38:05 <tomsmeding> _very_ archaic I think
15:38:30 <tomsmeding> it does stand out as being more non-standard than the rest
15:38:59 × nick4 quits (~nick@2600:8807:9103:b700:497e:4b24:ec2b:6bec) (Ping timeout: 246 seconds)
15:39:11 <c_wraith> it hurts that it is a modern spelling of a totally unrelated word
15:40:41 <tomsmeding> not to be confused with https://malazan.fandom.com/wiki/D%27ivers
15:41:05 <d3mon> oh okay oops. Well it's included with whatever set of modules this puzzle website has included by default
15:41:16 <tomsmeding> which puzzle website?
15:41:27 <d3mon> codewars.com
15:41:38 <tomsmeding> ah the kata stuff
15:41:53 <c_wraith> yeah, it's a very common package to use for that sort of thing
15:42:00 <c_wraith> So it's good that they have it available
15:42:18 eggplantade joins (~Eggplanta@2600:1700:38c5:d800:11ad:4d6f:a0ef:a998)
15:44:15 × fryguybob quits (~fryguybob@cpe-24-94-50-22.stny.res.rr.com) (Ping timeout: 260 seconds)
15:46:54 opticblast joins (~Thunderbi@172.58.86.143)
15:48:31 × merijn quits (~merijn@86.86.29.250) (Ping timeout: 240 seconds)
15:51:41 <d3mon> yeah
15:52:25 × superbil quits (~superbil@1-34-176-171.hinet-ip.hinet.net) (Ping timeout: 240 seconds)
15:56:06 tzh joins (~tzh@c-24-21-73-154.hsd1.wa.comcast.net)
16:01:04 _ht joins (~Thunderbi@28-52-174-82.ftth.glasoperator.nl)
16:06:02 superbil joins (~superbil@1-34-176-171.hinet-ip.hinet.net)
16:06:13 × alexherbo2 quits (~alexherbo@2a02-842a-8180-4601-902b-4900-8b38-e602.rev.sfr.net) (Remote host closed the connection)
16:06:33 alexherbo2 joins (~alexherbo@2a02-842a-8180-4601-902b-4900-8b38-e602.rev.sfr.net)
16:08:31 nick4 joins (~nick@2600:8807:9103:b700:497e:4b24:ec2b:6bec)
16:12:04 econo joins (uid147250@user/econo)
16:12:08 × gnalzo quits (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8)
16:12:20 × kuribas quits (~user@ip-188-118-57-242.reverse.destiny.be) (Remote host closed the connection)
16:13:23 × nick4 quits (~nick@2600:8807:9103:b700:497e:4b24:ec2b:6bec) (Ping timeout: 264 seconds)
16:14:19 zer0bitz joins (~zer0bitz@user/zer0bitz)
16:16:00 × zer0bitz_ quits (~zer0bitz@user/zer0bitz) (Ping timeout: 248 seconds)
16:16:26 freeside_ joins (~mengwong@103.252.202.151)
16:20:14 merijn joins (~merijn@86-86-29-250.fixed.kpn.net)
16:21:11 × freeside_ quits (~mengwong@103.252.202.151) (Ping timeout: 264 seconds)
16:21:59 × machinedgod quits (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 240 seconds)
16:22:41 nick4 joins (~nick@2600:8807:9103:b700:497e:4b24:ec2b:6bec)
16:30:18 jero98772 joins (~jero98772@2800:484:1d84:9000::2)
16:30:51 waleee joins (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7)
16:34:17 × nick4 quits (~nick@2600:8807:9103:b700:497e:4b24:ec2b:6bec) (Ping timeout: 246 seconds)
16:39:52 × ubert quits (~Thunderbi@2a02:8109:abc0:6434:a17e:7764:ca3b:275) (Remote host closed the connection)
16:41:10 × d3mon quits (~d3mon@2a00:23c7:aa92:5c01:482e:ed22:ce04:3bef) (Quit: Client closed)
16:44:01 × mei quits (~mei@user/mei) (Remote host closed the connection)
16:44:52 jmdaemon joins (~jmdaemon@user/jmdaemon)
16:49:59 × merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 264 seconds)
16:52:16 mei joins (~mei@user/mei)
16:52:38 freeside_ joins (~mengwong@103.252.202.151)
16:54:39 shapr` joins (~user@76.29.230.19)
16:54:49 <shapr`> @pl traverse . flip fmap
16:54:49 <lambdabot> traverse . flip fmap
16:54:54 shapr` is now known as shapr
16:55:41 × jmdaemon quits (~jmdaemon@user/jmdaemon) (Ping timeout: 265 seconds)
16:56:47 × freeside_ quits (~mengwong@103.252.202.151) (Ping timeout: 240 seconds)
17:00:11 nick4 joins (~nick@2600:8807:9103:b700:497e:4b24:ec2b:6bec)
17:03:07 × byte quits (~byte@user/byte) (Quit: Quitting...)
17:03:39 byte joins (~byte@user/byte)
17:04:19 jmdaemon joins (~jmdaemon@user/jmdaemon)
17:04:52 × nick4 quits (~nick@2600:8807:9103:b700:497e:4b24:ec2b:6bec) (Ping timeout: 265 seconds)
17:05:15 mechap joins (~mechap@user/mechap)
17:08:11 Guest97 joins (~Guest97@host86-162-153-188.range86-162.btcentralplus.com)
17:09:21 × Guest97 quits (~Guest97@host86-162-153-188.range86-162.btcentralplus.com) (Client Quit)
17:09:35 Guest97 joins (~Guest97@host86-162-153-188.range86-162.btcentralplus.com)
17:13:52 shapr` joins (~user@76.29.230.19)
17:15:35 × shapr quits (~user@76.29.230.19) (Ping timeout: 246 seconds)
17:15:41 × motherfsck quits (~motherfsc@user/motherfsck) (Quit: quit)
17:17:32 byte` joins (~byte@user/byte)
17:18:23 × byte quits (~byte@user/byte) (Ping timeout: 240 seconds)
17:18:53 × jero98772 quits (~jero98772@2800:484:1d84:9000::2) (Ping timeout: 265 seconds)
17:19:53 ubert joins (~Thunderbi@p200300ecdf18b6370daf7c8ea36938d7.dip0.t-ipconnect.de)
17:29:39 × strugglingCrab quits (~strugglin@2a02:a03f:acfa:b800:78f8:196d:2cf4:70c5) (Quit: Client closed)
17:30:01 jero98772 joins (~jero98772@2800:484:1d84:9000::3)
17:31:57 × caryhartline quits (~caryhartl@2600:1700:2d0:8d30:fc15:d4ea:f20e:7419) (Quit: caryhartline)
17:35:01 caryhartline joins (~caryhartl@107.140.218.181)
17:45:06 L29Ah parts (~L29Ah@wikipedia/L29Ah) ()
17:45:21 mbuf joins (~Shakthi@49.207.178.186)
17:45:34 shapr`` joins (~user@76.29.230.19)
17:47:11 × shapr` quits (~user@76.29.230.19) (Ping timeout: 240 seconds)
17:47:56 ub joins (~Thunderbi@p548c8bbe.dip0.t-ipconnect.de)
17:49:01 × ubert quits (~Thunderbi@p200300ecdf18b6370daf7c8ea36938d7.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
17:49:01 ub is now known as ubert
17:49:14 sa_ is now known as sa
17:50:52 gnalzo joins (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c)
17:54:40 × albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
17:56:04 × titibandit quits (~titibandi@user/titibandit) (Remote host closed the connection)
18:00:47 albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8)
18:04:11 × caryhartline quits (~caryhartl@107.140.218.181) (Quit: caryhartline)
18:08:17 wroathe joins (~wroathe@207-153-38-140.fttp.usinternet.com)
18:08:17 × wroathe quits (~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
18:08:17 wroathe joins (~wroathe@user/wroathe)
18:10:36 × paddymahoney quits (~paddymaho@cpe9050ca207f83-cm9050ca207f80.cpe.net.cable.rogers.com) (Ping timeout: 265 seconds)
18:11:06 oneeyedalien joins (~oneeyedal@103.21.127.60)
18:13:37 titibandit joins (~titibandi@user/titibandit)
18:17:06 merijn joins (~merijn@86.86.29.250)
18:20:23 evincar joins (~evincar@user/evincar)
18:23:15 × oneeyedalien quits (~oneeyedal@103.21.127.60) (Read error: Connection reset by peer)
18:28:15 Sauvin is now known as Zymurgy
18:28:35 × Zymurgy quits (~sauvin@user/Sauvin) (Changing host)
18:28:35 Zymurgy joins (~sauvin@about/linux/staff/zymurgy)
18:30:25 × opticblast quits (~Thunderbi@172.58.86.143) (Ping timeout: 265 seconds)
18:31:10 caryhartline joins (~caryhartl@2600:1700:2d0:8d30:b59b:d427:e374:11eb)
18:32:01 × ubert quits (~Thunderbi@p548c8bbe.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
18:32:24 ubert joins (~Thunderbi@p548c8bbe.dip0.t-ipconnect.de)
18:33:26 freeside_ joins (~mengwong@103.252.202.151)
18:38:02 × freeside_ quits (~mengwong@103.252.202.151) (Ping timeout: 268 seconds)
18:39:05 × wroathe quits (~wroathe@user/wroathe) (Ping timeout: 256 seconds)
18:39:40 bli2ss joins (~quassel@190.78.156.89.rev.sfr.net)
18:44:02 × mbuf quits (~Shakthi@49.207.178.186) (Quit: Leaving)
18:49:46 shapr``` joins (~user@76.29.230.19)
18:50:01 × merijn quits (~merijn@86.86.29.250) (Ping timeout: 240 seconds)
18:51:11 × shapr`` quits (~user@76.29.230.19) (Ping timeout: 240 seconds)
18:55:22 × bollu quits (~bollu@159.65.151.13) (Quit: Ping timeout (120 seconds))
18:55:38 × coot quits (~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot)
18:55:48 bollu joins (~bollu@159.65.151.13)
18:56:50 noteness_ joins (~noteness@user/noteness)
18:57:16 × ystael quits (~ystael@user/ystael) (Quit: Lost terminal)
18:57:29 × noteness quits (~noteness@user/noteness) (Ping timeout: 246 seconds)
19:00:08 ystael joins (~ystael@user/ystael)
19:05:39 ub joins (~Thunderbi@p548c8bbe.dip0.t-ipconnect.de)
19:07:01 × ubert quits (~Thunderbi@p548c8bbe.dip0.t-ipconnect.de) (Ping timeout: 268 seconds)
19:07:01 ub is now known as ubert
19:15:17 gmg joins (~user@user/gehmehgeh)
19:20:31 × titibandit quits (~titibandi@user/titibandit) (Ping timeout: 240 seconds)
19:20:48 nate2 joins (~nate@98.45.169.16)
19:22:10 <tomsmeding> :t traverse . flip fmap
19:22:11 <lambdabot> (Traversable t, Applicative f) => f a -> t (a -> b) -> f (t b)
19:22:47 × evincar quits (~evincar@user/evincar) (Ping timeout: 240 seconds)
19:24:36 zeenk joins (~zeenk@2a02:2f04:a105:f00::7fe)
19:25:35 × nate2 quits (~nate@98.45.169.16) (Ping timeout: 240 seconds)
19:29:41 ft joins (~ft@p4fc2a88b.dip0.t-ipconnect.de)
19:30:58 <yin> :t flip
19:30:59 <lambdabot> (a -> b -> c) -> b -> a -> c
19:31:07 <yin> :t flip flip
19:31:08 <lambdabot> b -> (a -> b -> c) -> a -> c
19:31:14 <yin> ;t flip flip flip
19:31:26 <yin> :t flip flip flip
19:31:27 <lambdabot> (a1 -> ((a2 -> b -> c1) -> b -> a2 -> c1) -> c2) -> a1 -> c2
19:31:34 <yin> :t flip flip flip flip
19:31:35 <lambdabot> (a1 -> ((a2 -> b -> c1) -> b -> a2 -> c1) -> c2) -> a1 -> c2
19:31:43 <yin> :t flip flip flip flip flip
19:31:44 <lambdabot> (a1 -> ((a2 -> b -> c1) -> b -> a2 -> c1) -> c2) -> a1 -> c2
19:32:20 <yin> :t flip flip flip flip flip flip
19:32:21 <lambdabot> (a1 -> ((a2 -> b -> c1) -> b -> a2 -> c1) -> c2) -> a1 -> c2
19:32:30 <yin> fun
19:33:27 <Rembane> Lovely machine you found there.
19:33:31 evincar joins (~evincar@user/evincar)
19:34:39 <yin> Rembane: wdym machine?
19:36:05 <Rembane> yin: The thing that produces more elaborate functions the more you add flip to it.
19:36:14 <ncf> now do fmap (in your own interpreter)
19:36:23 jjb joins (~jjb@user/jjb)
19:36:29 <geekosaur> you'll note it locked up at 3
19:36:58 <geekosaur> you can add as many more flips as you like, the type doesn't change after that
19:37:04 × bli2ss quits (~quassel@190.78.156.89.rev.sfr.net) (Read error: Connection reset by peer)
19:37:44 <Rembane> Oh. I didn't pay attention. Is there a fix point in there somehwere?
19:37:49 <yin> ncf: my head hurts
19:38:59 <ncf> flip flip flip flip == flip flip flip
19:40:26 <ski> (s/==/=/)
19:44:23 coot joins (~coot@89-69-206-216.dynamic.chello.pl)
19:44:27 <ncf> there's probably a neat visualisation with string diagrams lurking
19:44:54 × eggplantade quits (~Eggplanta@2600:1700:38c5:d800:11ad:4d6f:a0ef:a998) (Remote host closed the connection)
19:47:23 titibandit joins (~titibandi@user/titibandit)
19:49:09 <yin> :t foldr1 (.) (repeat flip)
19:49:10 <lambdabot> (a -> a -> c) -> a -> a -> c
19:49:12 <yin> hmm
19:52:46 Guest75 joins (~Guest75@cpe-172-116-174-226.socal.res.rr.com)
19:53:21 × Guest75 quits (~Guest75@cpe-172-116-174-226.socal.res.rr.com) (Client Quit)
19:55:18 acidjnk joins (~acidjnk@p200300d6e7072f63d1111b83d6638be4.dip0.t-ipconnect.de)
19:56:23 × jmdaemon quits (~jmdaemon@user/jmdaemon) (Ping timeout: 240 seconds)
19:57:23 L29Ah joins (~L29Ah@wikipedia/L29Ah)
19:58:08 × alexherbo2 quits (~alexherbo@2a02-842a-8180-4601-902b-4900-8b38-e602.rev.sfr.net) (Ping timeout: 245 seconds)
20:04:21 <ncf> :t fix flip
20:04:22 <lambdabot> a -> a -> c
20:05:06 <ncf> (note that the flips are right-associative here, whereas in the examples before they were left-associative)
20:05:48 × tubogram447 quits (~tubogram@user/tubogram) (*.net *.split)
20:05:48 × Axman6 quits (~Axman6@user/axman6) (*.net *.split)
20:06:10 tubogram447 joins (~tubogram@user/tubogram)
20:06:10 Axman6 joins (~Axman6@user/axman6)
20:08:47 <ski> @type fix ($ flip)
20:08:48 <lambdabot> error:
20:08:48 <lambdabot> • Occurs check: cannot construct the infinite type:
20:08:48 <lambdabot> a ~ ((a0 -> b0 -> c0) -> b0 -> a0 -> c0) -> a
20:12:47 × myxokeph quits (~myxokeph@cpe-65-28-251-121.cinci.res.rr.com) (Ping timeout: 240 seconds)
20:13:08 machinedgod joins (~machinedg@d198-53-218-113.abhsia.telus.net)
20:14:06 × trev quits (~trev@user/trev) (Quit: trev)
20:14:24 × _ht quits (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Quit: _ht)
20:15:11 × evincar quits (~evincar@user/evincar) (Ping timeout: 264 seconds)
20:18:15 merijn joins (~merijn@86-86-29-250.fixed.kpn.net)
20:27:55 × gmg quits (~user@user/gehmehgeh) (Quit: Leaving)
20:31:36 jade[m] is now known as jadeOld[m]
20:36:33 × __monty__ quits (~toonn@user/toonn) (Quit: leaving)
20:40:05 × takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
20:41:29 × oo_miguel quits (~Thunderbi@77.252.47.78) (Ping timeout: 256 seconds)
20:45:20 eggplantade joins (~Eggplanta@2600:1700:38c5:d800:11ad:4d6f:a0ef:a998)
20:47:02 shapr``` is now known as shapr`
20:49:59 × eggplantade quits (~Eggplanta@2600:1700:38c5:d800:11ad:4d6f:a0ef:a998) (Ping timeout: 256 seconds)
20:50:27 diod joins (~diod@142.188.218.35)
20:50:32 diod parts (~diod@142.188.218.35) ()
20:51:57 <tomsmeding> flip^4 == flip^3 is easily seen via a dumb observation: flip = \f x y -> f y x, hence flip flip = \x y -> flip y x. Hence (flip flip1) flip2 flip3 == flip1 flip3 flip2
20:52:23 × merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 240 seconds)
20:53:14 <tomsmeding> which yin taught me last time!
20:53:41 tomsmeding looks askance at yin
20:54:22 <tomsmeding> https://ircbrowse.tomsmeding.com/day/lchaskell/2022/12/02?id=795469#trid795469
21:01:06 freeside_ joins (~mengwong@103.252.202.151)
21:04:22 fernand joins (uid551405@id-551405.tinside.irccloud.com)
21:07:59 × freeside_ quits (~mengwong@103.252.202.151) (Ping timeout: 264 seconds)
21:18:24 fizbin joins (~fizbin@user/fizbin)
21:18:50 × fizbin quits (~fizbin@user/fizbin) (Read error: Connection reset by peer)
21:20:31 × coot quits (~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot)
21:21:09 × dhil quits (~dhil@78.45.150.83.ewm.ftth.as8758.net) (Ping timeout: 256 seconds)
21:32:18 × Guest97 quits (~Guest97@host86-162-153-188.range86-162.btcentralplus.com) (Quit: Client closed)
21:37:14 × erisco quits (~erisco@d24-141-66-165.home.cgocable.net) (Quit: ZNC 1.8.2+cygwin2 - https://znc.in)
21:37:59 erisco joins (~erisco@d24-141-66-165.home.cgocable.net)
21:46:02 × tubogram447 quits (~tubogram@user/tubogram) (*.net *.split)
21:46:02 × Axman6 quits (~Axman6@user/axman6) (*.net *.split)
21:46:10 tubogram447 joins (~tubogram@user/tubogram)
21:46:10 Axman6 joins (~Axman6@user/axman6)
21:51:26 × turlando_ quits (~turlando@user/turlando) (Read error: Connection reset by peer)
21:53:36 jade[m] joins (~jade256th@2001:470:69fc:105::3:58df)
21:53:49 × biberu quits (~biberu@user/biberu) (Read error: Connection reset by peer)
21:56:06 turlando joins (~turlando@user/turlando)
21:57:55 biberu joins (~biberu@user/biberu)
21:59:06 taupiqueur joins (~taupiqueu@2a02-842a-8180-4601-fc12-968e-5e2f-d273.rev.sfr.net)
21:59:44 alexherbo2 joins (~alexherbo@2a02-842a-8180-4601-fc12-968e-5e2f-d273.rev.sfr.net)
22:02:26 × alexherbo2 quits (~alexherbo@2a02-842a-8180-4601-fc12-968e-5e2f-d273.rev.sfr.net) (Remote host closed the connection)
22:03:35 alexherbo2 joins (~alexherbo@2a02-842a-8180-4601-fc12-968e-5e2f-d273.rev.sfr.net)
22:07:56 evincar joins (~evincar@user/evincar)
22:13:51 megeve is now known as delyan
22:16:02 × zeenk quits (~zeenk@2a02:2f04:a105:f00::7fe) (Quit: Konversation terminated!)
22:16:46 elain4 joins (~textual@static-71-251-226-194.rcmdva.fios.verizon.net)
22:17:02 merijn joins (~merijn@86.86.29.250)
22:18:57 × elain4 quits (~textual@static-71-251-226-194.rcmdva.fios.verizon.net) (Client Quit)
22:19:18 falafel joins (~falafel@2603-8000-d700-115c-06e9-5265-747f-4f34.res6.spectrum.com)
22:19:44 × michalz quits (~michalz@185.246.207.218) (Remote host closed the connection)
22:21:31 × merijn quits (~merijn@86.86.29.250) (Ping timeout: 240 seconds)
22:22:48 × waleee quits (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Ping timeout: 240 seconds)
22:26:55 × gnalzo quits (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8)
22:27:44 tusko joins (~yeurt@user/tusko)
22:27:49 waleee joins (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7)
22:27:50 <tusko> is haskell a lisp?
22:28:19 <geekosaur> no
22:33:50 Tuplanolla joins (~Tuplanoll@91-159-68-236.elisa-laajakaista.fi)
22:34:05 jargon joins (~jargon@184.101.78.160)
22:34:41 × shapr` quits (~user@76.29.230.19) (Quit: ERC 5.4 (IRC client for GNU Emacs 28.2))
22:35:08 shapr joins (~user@76.29.230.19)
22:37:59 × alexherbo2 quits (~alexherbo@2a02-842a-8180-4601-fc12-968e-5e2f-d273.rev.sfr.net) (Remote host closed the connection)
22:38:28 alexherbo2 joins (~alexherbo@2a02-842a-8180-4601-fc12-968e-5e2f-d273.rev.sfr.net)
22:40:32 <ski> there is/was Liskell, however
22:40:56 <geekosaur[m]> Hrm
22:42:05 <ski> @where liskell
22:42:05 <lambdabot> a SExp syntax for Haskell, by therp : <http://clemens.endorphin.org/liskell> (broken),<https://web.archive.org/web/20081105133119/http://clemens.endorphin.org/liskell>,<http://clemens.endorphin.org/
22:42:05 <lambdabot> ILC07-Liskell-draft.pdf>,<https://web.archive.org/web/20120609122549/http://www.liskell.org/>
22:42:32 <ncf> or hackett
22:42:44 <ski> right, i forget about that one
22:47:14 eggplantade joins (~Eggplanta@2600:1700:38c5:d800:11ad:4d6f:a0ef:a998)
22:51:31 × eggplantade quits (~Eggplanta@2600:1700:38c5:d800:11ad:4d6f:a0ef:a998) (Ping timeout: 240 seconds)
22:55:31 <tusko> is Learn You a Haskell for Great Good a venerable text?
22:59:01 <ddellacosta> it's been around a while and many still recommend it as a beginner's tutorial for Haskell, if that's what you mean
22:59:56 <ski> it doesn't have exercises
23:00:04 <ski> @where CIS194
23:00:04 <lambdabot> <https://github.com/byorgey/haskell-course>,<https://www.seas.upenn.edu/~cis194/spring13/lectures.html>
23:02:41 <tusko> Many blessings
23:03:45 <ski> Haskell could be said to be in the ML tradition, with type inferenced FP
23:04:32 <tusko> I wish I knew what that meant practically. What applications do you think the language is well suited to?
23:04:48 <c_wraith> mostly programming
23:05:41 <c_wraith> I mean, maybe you won't get fortran performance on numerical code, and maybe system UI libraries really aren't usable in a nice way.
23:05:56 <c_wraith> But mostly Haskell is good for writing programs.
23:08:12 <ski> type inferenced means that it's statically typed (reports type errors, before running program). the inference part means that you usually don't have to specify types of variables, parameters, functions. although, for documentation reasons, and to more easily narrow down errors, people usually specify types of functions
23:12:01 × falafel quits (~falafel@2603-8000-d700-115c-06e9-5265-747f-4f34.res6.spectrum.com) (Ping timeout: 240 seconds)
23:12:45 × caryhartline quits (~caryhartl@2600:1700:2d0:8d30:b59b:d427:e374:11eb) (Quit: caryhartline)
23:13:46 caryhartline joins (~caryhartl@2600:1700:2d0:8d30:c4fd:519c:c524:bc7c)
23:14:08 × fernand quits (uid551405@id-551405.tinside.irccloud.com) (Quit: Connection closed for inactivity)
23:16:55 [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470)
23:19:14 × acidjnk quits (~acidjnk@p200300d6e7072f63d1111b83d6638be4.dip0.t-ipconnect.de) (Ping timeout: 246 seconds)
23:22:18 nate2 joins (~nate@98.45.169.16)
23:22:44 × mncheck quits (~mncheck@193.224.205.254) (Ping timeout: 246 seconds)
23:23:15 <yin> tomsmeding: i thought this looked familiar!
23:25:47 mauke_ joins (~mauke@user/mauke)
23:26:47 × nate2 quits (~nate@98.45.169.16) (Ping timeout: 240 seconds)
23:27:11 × mauke quits (~mauke@user/mauke) (Ping timeout: 240 seconds)
23:27:11 mauke_ is now known as mauke
23:47:07 merijn joins (~merijn@86-86-29-250.fixed.kpn.net)
23:50:22 jmdaemon joins (~jmdaemon@user/jmdaemon)
23:59:31 × bontaq quits (~user@ool-45779b84.dyn.optonline.net) (Ping timeout: 240 seconds)

All times are in UTC on 2023-05-11.