2023/06/02

2023-06-02 00:06:31 +0200gmg(~user@user/gehmehgeh) (Quit: Leaving)
2023-06-02 00:15:45 +0200dcleonarski(~user@2804:d51:4793:c800:b0e2:a2e8:89a0:4c46) (Remote host closed the connection)
2023-06-02 00:28:53 +0200tessier(~treed@ec2-184-72-149-67.compute-1.amazonaws.com)
2023-06-02 00:29:08 +0200Albina_Pavlovna(~Albina_Pa@047-230-050-118.res.spectrum.com)
2023-06-02 00:30:57 +0200waleee(~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Ping timeout: 250 seconds)
2023-06-02 00:34:07 +0200oo_miguel(~Thunderbi@77.252.47.84) (Ping timeout: 240 seconds)
2023-06-02 00:38:56 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 00:39:20 +0200gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8)
2023-06-02 00:40:08 +0200Pickchea(~private@user/pickchea) (Quit: Leaving)
2023-06-02 00:41:19 +0200ec(~ec@gateway/tor-sasl/ec)
2023-06-02 00:54:56 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 00:57:54 +0200ec(~ec@gateway/tor-sasl/ec)
2023-06-02 01:00:21 +0200myme(~myme@2a01:799:d60:e400:7281:f661:241c:ec7) (Ping timeout: 265 seconds)
2023-06-02 01:00:57 +0200myme(~myme@2a01:799:d60:e400:53de:30f9:a686:811f)
2023-06-02 01:01:07 +0200xff0x_(~xff0x@ai098135.d.east.v6connect.net) (Ping timeout: 240 seconds)
2023-06-02 01:03:20 +0200xff0x_(~xff0x@178.255.149.135)
2023-06-02 01:03:35 +0200waleee(~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7)
2023-06-02 01:05:01 +0200mncheck(~mncheck@193.224.205.254) (Ping timeout: 256 seconds)
2023-06-02 01:08:01 +0200myme(~myme@2a01:799:d60:e400:53de:30f9:a686:811f) (Quit: WeeChat 3.8)
2023-06-02 01:11:16 +0200jtbx(~jtbx@user/jtbx)
2023-06-02 01:12:20 +0200iteratee_(~kyle@162.218.222.207)
2023-06-02 01:13:20 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 01:13:26 +0200gawen(~gawen@user/gawen) (Ping timeout: 250 seconds)
2023-06-02 01:13:36 +0200russruss8(~russruss@my.russellmcc.com)
2023-06-02 01:14:17 +0200CalculusCats4(NyaaTheKit@user/calculuscat)
2023-06-02 01:14:18 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 250 seconds)
2023-06-02 01:14:18 +0200jespada(~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net) (Ping timeout: 250 seconds)
2023-06-02 01:14:18 +0200haskl(~haskl@user/haskl) (Ping timeout: 250 seconds)
2023-06-02 01:14:18 +0200mcfrdy(~mcfrdy@user/mcfrdy) (Ping timeout: 250 seconds)
2023-06-02 01:14:24 +0200haskl[error](~haskl@user/haskl)
2023-06-02 01:14:27 +0200Lord_of_Life_(~Lord@user/lord-of-life/x-2819915)
2023-06-02 01:14:29 +0200mcfrd(~mcfrdy@user/mcfrdy)
2023-06-02 01:14:32 +0200chiselfuse(~chiselfus@user/chiselfuse) (Ping timeout: 240 seconds)
2023-06-02 01:14:37 +0200GoldsteinQ(~goldstein@goldstein.rs)
2023-06-02 01:14:44 +0200NinjaTrappeur(~ninja@user/ninjatrappeur) (Ping timeout: 250 seconds)
2023-06-02 01:14:44 +0200Helle(~helle@user/Helle) (Ping timeout: 250 seconds)
2023-06-02 01:14:44 +0200goldstein(~goldstein@goldstein.rs) (Ping timeout: 250 seconds)
2023-06-02 01:14:58 +0200gawen(~gawen@user/gawen)
2023-06-02 01:15:05 +0200kitzman_(~kitzman@user/dekenevs)
2023-06-02 01:15:10 +0200kitzman(~kitzman@user/dekenevs) (Ping timeout: 250 seconds)
2023-06-02 01:15:10 +0200CalculusCats(NyaaTheKit@user/calculuscat) (Ping timeout: 250 seconds)
2023-06-02 01:15:10 +0200hiredman(~hiredman@frontier1.downey.family) (Ping timeout: 250 seconds)
2023-06-02 01:15:10 +0200CalculusCats4CalculusCats
2023-06-02 01:15:10 +0200iteratee(~kyle@162.218.222.207) (Ping timeout: 250 seconds)
2023-06-02 01:15:10 +0200mikko(~mikko@user/mikko) (Ping timeout: 250 seconds)
2023-06-02 01:15:10 +0200gnyeki(~gnyeki@user/gnyeki) (Ping timeout: 250 seconds)
2023-06-02 01:15:10 +0200carbolymer(~carbolyme@dropacid.net) (Ping timeout: 250 seconds)
2023-06-02 01:15:10 +0200shachaf(~shachaf@user/shachaf) (Ping timeout: 250 seconds)
2023-06-02 01:15:10 +0200cross(~cross@spitfire.i.gajendra.net) (Ping timeout: 250 seconds)
2023-06-02 01:15:20 +0200jpds(~jpds@gateway/tor-sasl/jpds) (Ping timeout: 240 seconds)
2023-06-02 01:15:31 +0200carbolymer(~carbolyme@dropacid.net)
2023-06-02 01:15:35 +0200jmdaemon(~jmdaemon@user/jmdaemon)
2023-06-02 01:15:36 +0200russruss(~russruss@my.russellmcc.com) (Ping timeout: 250 seconds)
2023-06-02 01:15:36 +0200russruss8russruss
2023-06-02 01:15:36 +0200hnOsmium0001(~hnOsmium0@user/hnOsmium0001) (Ping timeout: 250 seconds)
2023-06-02 01:15:36 +0200sm[i](~user@plaintextaccounting/sm) (Ping timeout: 250 seconds)
2023-06-02 01:15:46 +0200Lord_of_Life_Lord_of_Life
2023-06-02 01:16:16 +0200mauke_(~mauke@user/mauke)
2023-06-02 01:16:31 +0200Helle(~helle@45.83.235.185)
2023-06-02 01:16:58 +0200gnyeki(~gnyeki@li578-216.members.linode.com)
2023-06-02 01:16:58 +0200gnyeki(~gnyeki@li578-216.members.linode.com) (Changing host)
2023-06-02 01:16:58 +0200gnyeki(~gnyeki@user/gnyeki)
2023-06-02 01:17:05 +0200shachaf(~shachaf@user/shachaf)
2023-06-02 01:17:07 +0200chiselfuse(~chiselfus@user/chiselfuse)
2023-06-02 01:17:21 +0200cross(~cross@spitfire.i.gajendra.net)
2023-06-02 01:17:27 +0200hnOsmium0001(~hnosm@user/hnOsmium0001)
2023-06-02 01:17:33 +0200mcfrdmcfrdy
2023-06-02 01:17:38 +0200jpds(~jpds@gateway/tor-sasl/jpds)
2023-06-02 01:17:52 +0200mauke(~mauke@user/mauke) (Ping timeout: 248 seconds)
2023-06-02 01:17:52 +0200mauke_mauke
2023-06-02 01:19:01 +0200jespada(~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net)
2023-06-02 01:20:01 +0200acidjnk(~acidjnk@p200300d6e7072f9160194c065beb1fb8.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2023-06-02 01:21:13 +0200sm[i](~user@plaintextaccounting/sm)
2023-06-02 01:22:06 +0200Tuplanolla(~Tuplanoll@91-159-68-236.elisa-laajakaista.fi) (Quit: Leaving.)
2023-06-02 01:22:12 +0200nate2(~nate@98.45.169.16)
2023-06-02 01:23:07 +0200Albina_Pavlovna(~Albina_Pa@047-230-050-118.res.spectrum.com) (Quit: ZZZzzz…)
2023-06-02 01:23:27 +0200emergence(thelounge@2607:5300:60:5910:dcad:beff:feef:5bc) (Remote host closed the connection)
2023-06-02 01:24:34 +0200emergence(thelounge@2607:5300:60:5910:dcad:beff:feef:5bc)
2023-06-02 01:25:35 +0200hiredman(~hiredman@frontier1.downey.family)
2023-06-02 01:25:37 +0200xff0x_(~xff0x@178.255.149.135) (Ping timeout: 240 seconds)
2023-06-02 01:26:40 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2023-06-02 01:26:51 +0200nate2(~nate@98.45.169.16) (Ping timeout: 250 seconds)
2023-06-02 01:27:48 +0200xff0x_(~xff0x@ai098135.d.east.v6connect.net)
2023-06-02 01:28:43 +0200NinjaTrappeur(~ninja@user/ninjatrappeur)
2023-06-02 01:29:15 +0200mikko(~mikko@dsl-trebng22-58c1a8-185.dhcp.inet.fi)
2023-06-02 01:29:15 +0200mikko(~mikko@dsl-trebng22-58c1a8-185.dhcp.inet.fi) (Changing host)
2023-06-02 01:29:15 +0200mikko(~mikko@user/mikko)
2023-06-02 01:35:57 +0200vandita(~vandit@77-234-80-251.pool.digikabel.hu) (Ping timeout: 250 seconds)
2023-06-02 01:35:58 +0200nyc(~nyc@user/nyc) (Ping timeout: 250 seconds)
2023-06-02 01:37:03 +0200wroathe(~wroathe@207-153-38-140.fttp.usinternet.com)
2023-06-02 01:37:03 +0200wroathe(~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
2023-06-02 01:37:03 +0200wroathe(~wroathe@user/wroathe)
2023-06-02 01:37:46 +0200vandita(~vandit@87-97-2-205.pool.digikabel.hu)
2023-06-02 01:40:23 +0200euandreh(~Thunderbi@189.6.18.7)
2023-06-02 01:41:23 +0200Albina_Pavlovna(~Albina_Pa@047-230-050-118.res.spectrum.com)
2023-06-02 01:42:05 +0200hiredman1(~hiredman@frontier1.downey.family)
2023-06-02 01:42:28 +0200Albina_Pavlovna(~Albina_Pa@047-230-050-118.res.spectrum.com) (Client Quit)
2023-06-02 01:48:08 +0200raym(~ray@user/raym) (Ping timeout: 240 seconds)
2023-06-02 01:48:39 +0200raym(~ray@user/raym)
2023-06-02 02:02:24 +0200califax(~califax@user/califx) (Remote host closed the connection)
2023-06-02 02:02:31 +0200CAT_S(apic@brezn3.muc.ccc.de) (Ping timeout: 240 seconds)
2023-06-02 02:03:25 +0200califax(~califax@user/califx)
2023-06-02 02:11:31 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2023-06-02 02:15:05 +0200CAT_S(apic@brezn3.muc.ccc.de)
2023-06-02 02:19:28 +0200hisa38(~hisa38@104-181-102-238.lightspeed.wepbfl.sbcglobal.net)
2023-06-02 02:19:36 +0200karvon(~normie@222-0-178-69.static.gci.net)
2023-06-02 02:26:06 +0200russruss2(~russruss@my.russellmcc.com)
2023-06-02 02:27:15 +0200energizer(~energizer@user/energizer) (Remote host closed the connection)
2023-06-02 02:27:29 +0200ario(~ario@159.65.220.102) (Ping timeout: 246 seconds)
2023-06-02 02:27:37 +0200ario(~ario@159.65.220.102)
2023-06-02 02:27:48 +0200russruss(~russruss@my.russellmcc.com) (Ping timeout: 240 seconds)
2023-06-02 02:27:48 +0200russruss2russruss
2023-06-02 02:33:15 +0200energizer(~energizer@user/energizer)
2023-06-02 02:33:37 +0200troydm(~troydm@user/troydm) (Ping timeout: 240 seconds)
2023-06-02 02:35:07 +0200thegeekinside(~thegeekin@189.180.15.129) (Ping timeout: 240 seconds)
2023-06-02 02:35:37 +0200thegeekinside(~thegeekin@189.180.15.129)
2023-06-02 02:38:31 +0200troydm(~troydm@user/troydm)
2023-06-02 02:49:35 +0200ec(~ec@gateway/tor-sasl/ec)
2023-06-02 02:54:19 +0200zxrom(~zxrom@mm-22-38-212-37.vitebsk.dynamic.pppoe.byfly.by) (Read error: Connection reset by peer)
2023-06-02 02:55:20 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 02:55:57 +0200zxrom(~zxrom@mm-22-38-212-37.vitebsk.dynamic.pppoe.byfly.by)
2023-06-02 02:58:25 +0200ec(~ec@gateway/tor-sasl/ec)
2023-06-02 03:02:53 +0200zaquest(~notzaques@5.130.79.72) (Remote host closed the connection)
2023-06-02 03:03:03 +0200jmdaemon(~jmdaemon@user/jmdaemon) (Ping timeout: 250 seconds)
2023-06-02 03:04:08 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 03:04:39 +0200zaquest(~notzaques@5.130.79.72)
2023-06-02 03:10:34 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2023-06-02 03:13:51 +0200EsoAlgo8(~EsoAlgo@129.146.136.145) (Remote host closed the connection)
2023-06-02 03:15:01 +0200fryguybob(~fryguybob@cpe-24-94-50-22.stny.res.rr.com) (Quit: leaving)
2023-06-02 03:15:27 +0200ec(~ec@gateway/tor-sasl/ec)
2023-06-02 03:16:01 +0200EsoAlgo81(~EsoAlgo@129.146.136.145)
2023-06-02 03:16:42 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2023-06-02 03:16:48 +0200waleee(~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Ping timeout: 248 seconds)
2023-06-02 03:16:59 +0200merijn(~merijn@86-86-29-250.fixed.kpn.net)
2023-06-02 03:19:37 +0200karvon(~normie@222-0-178-69.static.gci.net) (Remote host closed the connection)
2023-06-02 03:20:34 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:ac1f:c72a:d1cd:9ce8)
2023-06-02 03:21:16 +0200merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 250 seconds)
2023-06-02 03:21:44 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 03:23:16 +0200ec(~ec@gateway/tor-sasl/ec)
2023-06-02 03:24:44 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:ac1f:c72a:d1cd:9ce8) (Ping timeout: 250 seconds)
2023-06-02 03:33:51 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b)
2023-06-02 03:40:19 +0200waleee(~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7)
2023-06-02 03:55:30 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b) (Ping timeout: 250 seconds)
2023-06-02 03:55:44 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 03:57:26 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:ac1f:c72a:d1cd:9ce8)
2023-06-02 03:58:00 +0200bilegeek(~bilegeek@2600:1008:b027:eb16:2666:7d62:1888:8415)
2023-06-02 03:59:12 +0200ec(~ec@gateway/tor-sasl/ec)
2023-06-02 04:00:07 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer)
2023-06-02 04:05:20 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 04:06:01 +0200captnemo(~captnemo@193.32.127.232)
2023-06-02 04:06:27 +0200captnemo(~captnemo@193.32.127.232) (Client Quit)
2023-06-02 04:08:54 +0200ec(~ec@gateway/tor-sasl/ec)
2023-06-02 04:12:07 +0200xff0x_(~xff0x@ai098135.d.east.v6connect.net) (Ping timeout: 240 seconds)
2023-06-02 04:14:32 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 04:17:34 +0200ec(~ec@gateway/tor-sasl/ec)
2023-06-02 04:22:23 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b)
2023-06-02 04:24:06 +0200vandita(~vandit@87-97-2-205.pool.digikabel.hu) (Ping timeout: 250 seconds)
2023-06-02 04:25:59 +0200vandita(~vandit@84-236-60-84.pool.digikabel.hu)
2023-06-02 04:28:11 +0200motherfsck(~motherfsc@user/motherfsck) (Quit: quit)
2023-06-02 04:28:56 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 04:29:01 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b) (Remote host closed the connection)
2023-06-02 04:30:14 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b)
2023-06-02 04:30:34 +0200ec(~ec@gateway/tor-sasl/ec)
2023-06-02 04:33:41 +0200 <ghostbuster> is there a way to terminate a recursive function early based on the output? having trouble wrapping my head around whether it's possible
2023-06-02 04:33:54 +0200 <ghostbuster> eg. find the largest value of n where the nth fibonacci number is < L
2023-06-02 04:34:30 +0200waleee(~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Ping timeout: 250 seconds)
2023-06-02 04:35:05 +0200 <pavonia> You mean a predefined function?
2023-06-02 04:35:17 +0200 <monochrom> 1. s/output/input/
2023-06-02 04:35:32 +0200 <monochrom> 2. If you don't make a recursive call, you exit the function.
2023-06-02 04:35:47 +0200 <ghostbuster> yeah but i can't exit until i've checked the return value of the recursive call
2023-06-02 04:35:47 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b) (Ping timeout: 250 seconds)
2023-06-02 04:36:35 +0200 <ghostbuster> at which point it's too late to return without calling the recursive call
2023-06-02 04:37:09 +0200 <monochrom> That may imply P=NP
2023-06-02 04:38:04 +0200 <monochrom> Hell, it may even imply P=EXPTIME
2023-06-02 04:38:40 +0200 <monochrom> The ability to know the result of a computation and say "I don't want it" without computation.
2023-06-02 04:38:48 +0200 <ghostbuster> hmm
2023-06-02 04:40:05 +0200 <ghostbuster> it's the recursion that makes it tricky - with a regular loop i'd just store n for each round, calculate as far as I need and compare after each round, then return
2023-06-02 04:40:38 +0200 <monochrom> I don't know what you mean by "n".
2023-06-02 04:40:58 +0200 <probie> the nth fibonacci number
2023-06-02 04:41:13 +0200 <monochrom> I don't know how you know how far you "need".
2023-06-02 04:41:29 +0200 <ghostbuster> let's assume it's 4.0 x 10^6
2023-06-02 04:41:45 +0200 <ghostbuster> i called it L (for limit)
2023-06-02 04:42:05 +0200 <ghostbuster> in other words, it's a given constraint of the problem
2023-06-02 04:42:37 +0200 <monochrom> Is this Project Euler as a way to practice brute force search as a sorry excuse for "learning a language"? Or is this Project Euler as a way to practice math?
2023-06-02 04:43:02 +0200 <ghostbuster> i never said i was sorry
2023-06-02 04:43:23 +0200 <monochrom> Because the former can always be done by takeWhile (< 100) (map fib [0..])
2023-06-02 04:43:35 +0200finn_elija(~finn_elij@user/finn-elija/x-0085643)
2023-06-02 04:43:35 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija)))
2023-06-02 04:43:35 +0200finn_elijaFinnElija
2023-06-02 04:44:12 +0200 <ghostbuster> is there a better channel for beginner questions?
2023-06-02 04:44:58 +0200 <monochrom> And the latter, you know the approximation fib(n) = (golden ratio)^n so you just start with (golden ratio)^n < 100 and then solve for n.
2023-06-02 04:45:26 +0200nate2(~nate@98.45.169.16)
2023-06-02 04:45:44 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 04:46:14 +0200 <Axman6> ghostbuster: can you paste some code you have that isn;t working?
2023-06-02 04:46:17 +0200 <Axman6> @where paste
2023-06-02 04:46:22 +0200 <Axman6> @where paste
2023-06-02 04:46:22 +0200 <lambdabot> Help us help you: please paste full code, input and/or output at e.g. https://paste.tomsmeding.com
2023-06-02 04:46:31 +0200 <probie> ghostbuster: the problem is that you're sort of asking several questions at once
2023-06-02 04:47:17 +0200 <ghostbuster> it's the same one i posted a week or so ago, i'll get a link
2023-06-02 04:48:56 +0200 <ghostbuster> https://paste.tomsmeding.com/KAvYcwa8
2023-06-02 04:49:00 +0200ec(~ec@gateway/tor-sasl/ec)
2023-06-02 04:49:05 +0200 <mauke> ghostbuster: make your recursive function work like a loop and check n for each round
2023-06-02 04:49:38 +0200 <ghostbuster> it's not n that i need to compare though, it's fib(n)
2023-06-02 04:50:36 +0200 <mauke> ok, then compare the current value in each iteration
2023-06-02 04:51:00 +0200 <Axman6> > dropWhile (<5) [1..10]
2023-06-02 04:51:02 +0200 <lambdabot> [5,6,7,8,9,10]
2023-06-02 04:52:16 +0200Feuermagier(~Feuermagi@user/feuermagier)
2023-06-02 04:52:42 +0200jero98772(~jero98772@2800:484:1d7f:5d36::2) (Remote host closed the connection)
2023-06-02 04:53:17 +0200 <Axman6> > let fib; 0 a b = a; fib' n a b = fib' (n-1) b (a+b); fib n = fib' n 0 1; in dropWhile (\(n,fn) -> fn < 400000)) $ map (\n -> (n,fib n)) [1..]
2023-06-02 04:53:19 +0200 <lambdabot> <hint>:1:8: error: parse error on input ‘;’
2023-06-02 04:54:13 +0200 <probie> > let fibs = 0:1:zipWith (+) fibs (tail fibs) in length (takeWhile (< 400000) fibs)
2023-06-02 04:54:15 +0200 <lambdabot> 29
2023-06-02 04:54:35 +0200ec(~ec@gateway/tor-sasl/ec) (Remote host closed the connection)
2023-06-02 04:54:45 +0200 <Axman6> > let fib' 0 a b = a; fib' n a b = fib' (n-1) b (a+b); fib n = fib' n 0 1 in head $ dropWhile (\(n,fn) -> fn < 40000000) $ map (\n -> (n,fib n)) [1..]
2023-06-02 04:54:46 +0200 <lambdabot> (39,63245986)
2023-06-02 04:55:06 +0200ec(~ec@gateway/tor-sasl/ec)
2023-06-02 04:55:07 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 240 seconds)
2023-06-02 04:56:13 +0200 <monochrom> While we are at it, here is a problem that should have been on Project Euler.
2023-06-02 04:56:29 +0200xff0x_(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp)
2023-06-02 04:56:42 +0200 <monochrom> Define g(0)=1, g(n) = g(n-1)+g(n-1). Find n such that g(n) = 2^(10^100).
2023-06-02 04:57:07 +0200td_(~td@i5387091E.versanet.de) (Ping timeout: 240 seconds)
2023-06-02 04:59:08 +0200 <mauke> > var $ '1' : replicate 100 '0'
2023-06-02 04:59:10 +0200 <lambdabot> 1000000000000000000000000000000000000000000000000000000000000000000000000000...
2023-06-02 04:59:15 +0200td_(~td@i53870932.versanet.de)
2023-06-02 05:01:20 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 05:05:02 +0200ec(~ec@gateway/tor-sasl/ec)
2023-06-02 05:05:07 +0200xameer(~xameer@144.48.224.57)
2023-06-02 05:06:59 +0200foul_owl(~kerry@71.212.137.212) (Quit: WeeChat 2.3)
2023-06-02 05:11:21 +0200xameer(~xameer@144.48.224.57) (Quit: Quit)
2023-06-02 05:16:08 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 05:16:40 +0200acarrico(~acarrico@dhcp-68-142-49-163.greenmountainaccess.net) (Quit: Leaving.)
2023-06-02 05:20:03 +0200ec(~ec@gateway/tor-sasl/ec)
2023-06-02 05:23:58 +0200 <Axman6> > 10^100
2023-06-02 05:24:00 +0200 <lambdabot> 1000000000000000000000000000000000000000000000000000000000000000000000000000...
2023-06-02 05:30:01 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b)
2023-06-02 05:36:32 +0200jtbx(~jtbx@user/jtbx) (Ping timeout: 248 seconds)
2023-06-02 05:36:56 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 05:37:00 +0200 <EvanR> ghostbuster, ignoring the context and just focusing on haskell, you gotta rethink what returning a value from a function call means. Because laziness
2023-06-02 05:37:21 +0200jtbx(~jtbx@user/jtbx)
2023-06-02 05:37:33 +0200 <EvanR> evaluating f x could do very little and give you a chance to avoid a lot of additional computation
2023-06-02 05:38:06 +0200ec(~ec@gateway/tor-sasl/ec)
2023-06-02 05:39:47 +0200YoungFrog(~youngfrog@39.129-180-91.adsl-dyn.isp.belgacom.be) (Quit: ZNC 1.7.x-git-3-96481995 - https://znc.in)
2023-06-02 05:40:07 +0200YoungFrog(~youngfrog@2a02:a03f:ca07:f900:3990:663b:be50:9418)
2023-06-02 05:40:24 +0200 <EvanR> cycle 1 "returns an infinite deal of 1s" but you don't have to sit there and evaluate them all (or any of them) before continuing
2023-06-02 05:44:00 +0200 <EvanR> so did it really return the value in any sense
2023-06-02 05:44:27 +0200 <monochrom> It did in the denotational sense.
2023-06-02 05:48:36 +0200nate2(~nate@98.45.169.16) (Ping timeout: 250 seconds)
2023-06-02 05:48:47 +0200 <EvanR> it's like each time I print out the next 1, I return to that recursive call in progress, so I never really left.
2023-06-02 05:49:43 +0200 <monochrom> It says "cycle" right there in the name. :)
2023-06-02 05:50:08 +0200 <monochrom> BTW you're never leaving the carbon cycle either!
2023-06-02 05:50:14 +0200xameer(~xameer@144.48.224.57)
2023-06-02 05:50:15 +0200xameer(~xameer@144.48.224.57) (Client Quit)
2023-06-02 05:50:28 +0200 <EvanR> challenge accepted
2023-06-02 05:50:55 +0200Axman6(~Axman6@user/axman6) (Ping timeout: 268 seconds)
2023-06-02 05:51:55 +0200 <monochrom> https://youtu.be/o3Si4_0gfJQ (Nobody gets out [of life] alive)
2023-06-02 05:53:24 +0200 <EvanR> signed up for isaac arthur mind upload into matrioshka brain VR
2023-06-02 05:53:38 +0200 <EvanR> I guess that trades carbon for CNO cycle
2023-06-02 05:58:56 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 05:58:58 +0200ub(~Thunderbi@p200300ecdf000231989ddbac7bf03687.dip0.t-ipconnect.de)
2023-06-02 06:00:03 +0200ec(~ec@gateway/tor-sasl/ec)
2023-06-02 06:00:28 +0200ubert(~Thunderbi@p548c91e0.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2023-06-02 06:00:28 +0200ububert
2023-06-02 06:04:08 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 06:06:45 +0200_ht(~Thunderbi@28-52-174-82.ftth.glasoperator.nl)
2023-06-02 06:07:00 +0200ec(~ec@gateway/tor-sasl/ec)
2023-06-02 06:15:20 +0200ubert(~Thunderbi@p200300ecdf000231989ddbac7bf03687.dip0.t-ipconnect.de) (Ping timeout: 246 seconds)
2023-06-02 06:15:32 +0200ubert(~Thunderbi@p548c91e0.dip0.t-ipconnect.de)
2023-06-02 06:28:28 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b) (Ping timeout: 250 seconds)
2023-06-02 06:30:56 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 06:31:44 +0200ec(~ec@gateway/tor-sasl/ec)
2023-06-02 06:34:52 +0200bilegeek(~bilegeek@2600:1008:b027:eb16:2666:7d62:1888:8415) (Quit: Leaving)
2023-06-02 06:36:56 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 06:37:57 +0200ec(~ec@gateway/tor-sasl/ec)
2023-06-02 06:40:30 +0200titibandit(~titibandi@user/titibandit)
2023-06-02 06:42:26 +0200titibandit(~titibandi@user/titibandit) (Remote host closed the connection)
2023-06-02 06:51:20 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 06:52:02 +0200ec(~ec@gateway/tor-sasl/ec)
2023-06-02 06:53:14 +0200foul_owl(~kerry@71.212.137.212)
2023-06-02 06:53:29 +0200takuan(~takuan@178-116-218-225.access.telenet.be)
2023-06-02 06:57:45 +0200oo_miguel(~Thunderbi@77.252.47.84)
2023-06-02 07:02:56 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 07:04:06 +0200ec(~ec@gateway/tor-sasl/ec)
2023-06-02 07:17:19 +0200merijn(~merijn@86-86-29-250.fixed.kpn.net)
2023-06-02 07:17:35 +0200npmania(~Thunderbi@121.128.226.31)
2023-06-02 07:20:58 +0200trev(~trev@user/trev)
2023-06-02 07:22:08 +0200merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 248 seconds)
2023-06-02 07:22:17 +0200mbuf(~Shakthi@49.207.178.186)
2023-06-02 07:22:56 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 07:24:00 +0200coot(~coot@89-69-206-216.dynamic.chello.pl)
2023-06-02 07:26:16 +0200ec(~ec@gateway/tor-sasl/ec)
2023-06-02 07:38:56 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 07:39:16 +0200chexum(~quassel@gateway/tor-sasl/chexum) (Quit: No Ping reply in 180 seconds.)
2023-06-02 07:40:38 +0200chexum(~quassel@gateway/tor-sasl/chexum)
2023-06-02 07:41:58 +0200ec(~ec@gateway/tor-sasl/ec)
2023-06-02 07:44:06 +0200jonathan_(~jonathan@193.234.101.122)
2023-06-02 07:44:47 +0200_ht(~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Remote host closed the connection)
2023-06-02 07:45:47 +0200nate2(~nate@98.45.169.16)
2023-06-02 07:47:12 +0200mbuf(~Shakthi@49.207.178.186) (Ping timeout: 248 seconds)
2023-06-02 07:49:20 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 07:50:12 +0200ec(~ec@gateway/tor-sasl/ec)
2023-06-02 07:50:22 +0200nate2(~nate@98.45.169.16) (Ping timeout: 250 seconds)
2023-06-02 07:56:32 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 08:02:23 +0200npmania1(~Thunderbi@138.199.21.242)
2023-06-02 08:03:02 +0200ec(~ec@gateway/tor-sasl/ec)
2023-06-02 08:03:37 +0200npmania(~Thunderbi@121.128.226.31) (Ping timeout: 240 seconds)
2023-06-02 08:03:37 +0200npmania1npmania
2023-06-02 08:04:14 +0200vandita(~vandit@84-236-60-84.pool.digikabel.hu) (Ping timeout: 250 seconds)
2023-06-02 08:05:15 +0200chomwitt(~chomwitt@2a02:587:7a16:6700:1ac0:4dff:fedb:a3f1)
2023-06-02 08:05:59 +0200vandita(~vandit@80-95-82-37.pool.digikabel.hu)
2023-06-02 08:08:12 +0200harveypwca(~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67)
2023-06-02 08:08:32 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 08:09:37 +0200ec(~ec@gateway/tor-sasl/ec)
2023-06-02 08:09:37 +0200mcglk(~mcglk@131.191.19.145) (Ping timeout: 240 seconds)
2023-06-02 08:13:00 +0200mcglk(~mcglk@131.191.19.145)
2023-06-02 08:13:57 +0200thegeekinside(~thegeekin@189.180.15.129) (Remote host closed the connection)
2023-06-02 08:15:50 +0200Xe(~cadey@tailscale/xe) (Ping timeout: 265 seconds)
2023-06-02 08:17:34 +0200michalz(~michalz@185.246.204.90)
2023-06-02 08:17:43 +0200Xe(~cadey@tailscale/xe)
2023-06-02 08:17:44 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 08:20:45 +0200jespada_(~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net)
2023-06-02 08:21:05 +0200jespada(~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net) (Read error: Connection reset by peer)
2023-06-02 08:22:37 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 08:23:35 +0200img(~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in)
2023-06-02 08:25:11 +0200hugo(znc@verdigris.lysator.liu.se) (Ping timeout: 246 seconds)
2023-06-02 08:25:48 +0200jtbx(~jtbx@user/jtbx) (Quit: leaving)
2023-06-02 08:26:58 +0200img(~img@user/img)
2023-06-02 08:27:20 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 08:30:13 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 08:31:05 +0200mauke(~mauke@user/mauke) (Ping timeout: 250 seconds)
2023-06-02 08:33:16 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 250 seconds)
2023-06-02 08:34:41 +0200img(~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in)
2023-06-02 08:35:02 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2023-06-02 08:36:28 +0200hugo(znc@verdigris.lysator.liu.se)
2023-06-02 08:37:42 +0200img(~img@user/img)
2023-06-02 08:38:32 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 08:39:16 +0200mncheckm(~mncheck@193.224.205.254)
2023-06-02 08:39:47 +0200img(~img@user/img) (Client Quit)
2023-06-02 08:40:04 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 08:41:01 +0200hugo(znc@verdigris.lysator.liu.se) (Ping timeout: 240 seconds)
2023-06-02 08:42:42 +0200img(~img@user/img)
2023-06-02 08:45:57 +0200thegeekinside(~thegeekin@189.180.15.129)
2023-06-02 08:50:55 +0200hugo(znc@verdigris.lysator.liu.se)
2023-06-02 08:51:20 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 08:52:15 +0200jargon(~jargon@184.101.77.79) (Remote host closed the connection)
2023-06-02 08:55:13 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 09:01:20 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 09:02:25 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:5b56:4846:65d0:5d03)
2023-06-02 09:02:34 +0200chele(~chele@user/chele)
2023-06-02 09:05:00 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 09:07:25 +0200cfricke(~cfricke@user/cfricke)
2023-06-02 09:07:41 +0200MajorBiscuit(~MajorBisc@c-001-031-057.client.tudelft.eduvpn.nl)
2023-06-02 09:11:33 +0200acidjnk(~acidjnk@p200300d6e7072f7860194c065beb1fb8.dip0.t-ipconnect.de)
2023-06-02 09:12:08 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 09:12:41 +0200img(~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in)
2023-06-02 09:13:06 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 09:15:37 +0200img(~img@user/img)
2023-06-02 09:15:48 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2023-06-02 09:16:19 +0200MajorBiscuit(~MajorBisc@c-001-031-057.client.tudelft.eduvpn.nl) (Ping timeout: 256 seconds)
2023-06-02 09:18:06 +0200myme(~myme@2a01:799:d60:e400:132b:f0c4:5531:8862)
2023-06-02 09:22:32 +0200michalz(~michalz@185.246.204.90) (Ping timeout: 265 seconds)
2023-06-02 09:25:01 +0200AkechiShiro(~licht@user/akechishiro) (Ping timeout: 240 seconds)
2023-06-02 09:25:59 +0200AkechiShiro(~licht@user/akechishiro)
2023-06-02 09:26:08 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 09:28:43 +0200MajorBiscuit(~MajorBisc@c-001-031-057.client.tudelft.eduvpn.nl)
2023-06-02 09:29:05 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 09:29:12 +0200img(~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in)
2023-06-02 09:29:18 +0200gmg(~user@user/gehmehgeh)
2023-06-02 09:30:32 +0200mei(~mei@user/mei) (Remote host closed the connection)
2023-06-02 09:32:06 +0200img(~img@user/img)
2023-06-02 09:32:57 +0200mei(~mei@user/mei)
2023-06-02 09:34:56 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 09:35:42 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 09:37:05 +0200hpc(~juzz@ip98-169-35-163.dc.dc.cox.net) (Ping timeout: 240 seconds)
2023-06-02 09:39:12 +0200hpc(~juzz@ip98-169-35-163.dc.dc.cox.net)
2023-06-02 09:41:44 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 09:43:26 +0200hisa387(~hisa38@104-181-102-238.lightspeed.wepbfl.sbcglobal.net)
2023-06-02 09:44:07 +0200hisa38(~hisa38@104-181-102-238.lightspeed.wepbfl.sbcglobal.net) (Ping timeout: 240 seconds)
2023-06-02 09:44:07 +0200hisa387hisa38
2023-06-02 09:45:24 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 09:51:57 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:ac1f:c72a:d1cd:9ce8) (Remote host closed the connection)
2023-06-02 09:55:35 +0200zer0bitz_(~zer0bitz@user/zer0bitz)
2023-06-02 09:56:08 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 09:56:16 +0200zer0bitz(~zer0bitz@user/zer0bitz) (Ping timeout: 248 seconds)
2023-06-02 09:57:20 +0200nschoe(~q@2a01:e0a:8e:a190:bced:256e:4e59:ead3)
2023-06-02 10:02:34 +0200thegeekinside(~thegeekin@189.180.15.129) (Remote host closed the connection)
2023-06-02 10:02:55 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 10:02:57 +0200Teacup(~teacup@user/teacup) ()
2023-06-02 10:07:37 +0200jespada_(~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net) (Ping timeout: 240 seconds)
2023-06-02 10:07:59 +0200jespada(~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net)
2023-06-02 10:09:47 +0200Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2023-06-02 10:14:08 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 10:16:39 +0200zer0bitz(~zer0bitz@user/zer0bitz)
2023-06-02 10:17:00 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 10:18:05 +0200zer0bitz_(~zer0bitz@user/zer0bitz) (Ping timeout: 240 seconds)
2023-06-02 10:20:54 +0200jpds(~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
2023-06-02 10:21:24 +0200jpds(~jpds@gateway/tor-sasl/jpds)
2023-06-02 10:23:40 +0200ft(~ft@p4fc2a88b.dip0.t-ipconnect.de) (Quit: leaving)
2023-06-02 10:24:28 +0200kuribas(~user@ptr-17d51epav7cd0ydbk25.18120a2.ip6.access.telenet.be)
2023-06-02 10:28:08 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 10:31:09 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 10:32:29 +0200npmania(~Thunderbi@138.199.21.242) (Remote host closed the connection)
2023-06-02 10:33:25 +0200Gremlin8583(~Gremlin84@c-73-243-250-212.hsd1.co.comcast.net) (Ping timeout: 240 seconds)
2023-06-02 10:33:53 +0200gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c)
2023-06-02 10:34:25 +0200tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz)
2023-06-02 10:35:05 +0200MajorBiscuit(~MajorBisc@c-001-031-057.client.tudelft.eduvpn.nl) (Ping timeout: 256 seconds)
2023-06-02 10:38:08 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 10:38:33 +0200CiaoSen(~Jura@145.224.74.19)
2023-06-02 10:38:46 +0200MajorBiscuit(~MajorBisc@93-87-168.netrun.cytanet.com.cy)
2023-06-02 10:39:08 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 10:39:46 +0200mmhat(~mmh@p200300f1c706688fee086bfffe095315.dip0.t-ipconnect.de)
2023-06-02 10:40:02 +0200mmhat(~mmh@p200300f1c706688fee086bfffe095315.dip0.t-ipconnect.de) (Client Quit)
2023-06-02 10:41:18 +0200gmg(~user@user/gehmehgeh) (Quit: Leaving)
2023-06-02 10:42:58 +0200Pickchea(~private@user/pickchea)
2023-06-02 10:43:44 +0200jle`(~jle`@cpe-23-240-75-236.socal.res.rr.com) (Ping timeout: 265 seconds)
2023-06-02 10:44:08 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 10:45:28 +0200jle`(~jle`@cpe-23-240-75-236.socal.res.rr.com)
2023-06-02 10:47:47 +0200titibandit(~titibandi@user/titibandit)
2023-06-02 10:51:48 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 10:52:22 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:ac1f:c72a:d1cd:9ce8)
2023-06-02 10:57:11 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:ac1f:c72a:d1cd:9ce8) (Ping timeout: 256 seconds)
2023-06-02 10:58:08 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 10:58:50 +0200Lord_of_Life_(~Lord@user/lord-of-life/x-2819915)
2023-06-02 10:59:17 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 250 seconds)
2023-06-02 10:59:37 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 11:01:43 +0200Lord_of_Life_Lord_of_Life
2023-06-02 11:09:07 +0200MajorBiscuit(~MajorBisc@93-87-168.netrun.cytanet.com.cy) (Ping timeout: 240 seconds)
2023-06-02 11:10:08 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 11:10:54 +0200Gremlin8483(~Gremlin84@c-24-9-147-69.hsd1.co.comcast.net)
2023-06-02 11:11:46 +0200Helle(~helle@45.83.235.185) (Quit: Reconnecting)
2023-06-02 11:11:53 +0200Helle(~helle@45.83.235.185)
2023-06-02 11:12:08 +0200MajorBiscuit(~MajorBisc@c-001-031-057.client.tudelft.eduvpn.nl)
2023-06-02 11:12:45 +0200denbrahe(~denbrahe@2001:470:69fc:105::19c0) (Remote host closed the connection)
2023-06-02 11:13:03 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 11:14:29 +0200Helle(~helle@45.83.235.185) (Changing host)
2023-06-02 11:14:29 +0200Helle(~helle@user/Helle)
2023-06-02 11:14:55 +0200Gremlin8483(~Gremlin84@c-24-9-147-69.hsd1.co.comcast.net) (Client Quit)
2023-06-02 11:16:16 +0200shriekingnoise(~shrieking@186.137.175.87) (Ping timeout: 268 seconds)
2023-06-02 11:17:14 +0200Helle(~helle@user/Helle) (Quit: Reconnecting)
2023-06-02 11:17:21 +0200Helle(~helle@user/Helle)
2023-06-02 11:18:08 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 11:46:17 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 11:46:59 +0200nate2(~nate@98.45.169.16)
2023-06-02 11:48:42 +0200MajorBiscuit(~MajorBisc@c-001-031-057.client.tudelft.eduvpn.nl) (Ping timeout: 250 seconds)
2023-06-02 11:49:21 +0200chomwitt(~chomwitt@2a02:587:7a16:6700:1ac0:4dff:fedb:a3f1) (Remote host closed the connection)
2023-06-02 11:51:00 +0200MajorBiscuit(~MajorBisc@93-87-168.netrun.cytanet.com.cy)
2023-06-02 11:51:26 +0200kuribas(~user@ptr-17d51epav7cd0ydbk25.18120a2.ip6.access.telenet.be) (Remote host closed the connection)
2023-06-02 11:51:39 +0200kuribas(~user@ptr-17d51ephub1gxlxgvmy.18120a2.ip6.access.telenet.be)
2023-06-02 11:51:44 +0200nate2(~nate@98.45.169.16) (Ping timeout: 250 seconds)
2023-06-02 11:53:04 +0200tcard_(~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303)
2023-06-02 11:53:22 +0200tcard(~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303) (Read error: Connection reset by peer)
2023-06-02 11:53:54 +0200driib(~driib@vmi931078.contaboserver.net) (Quit: The Lounge - https://thelounge.chat)
2023-06-02 11:54:13 +0200econo(uid147250@user/econo) (Quit: Connection closed for inactivity)
2023-06-02 11:54:20 +0200driib(~driib@vmi931078.contaboserver.net)
2023-06-02 11:57:20 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 12:01:37 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 12:04:17 +0200alexherbo2(~alexherbo@2a02-842a-8180-4601-710f-b3ed-443f-ba6d.rev.sfr.net) (Remote host closed the connection)
2023-06-02 12:05:21 +0200jakzale(6291399afa@user/jakzale) (Remote host closed the connection)
2023-06-02 12:05:21 +0200sus(1b7af6299f@user/zeromomentum) (Remote host closed the connection)
2023-06-02 12:05:21 +0200ymherklotz(cb2c9cfbdd@2604:bf00:561:2000::29a) (Remote host closed the connection)
2023-06-02 12:05:21 +0200bsima1(9d7e39c8ad@2604:bf00:561:2000::dd) (Remote host closed the connection)
2023-06-02 12:05:22 +0200sm2n(ae95cb1267@user/sm2n) (Remote host closed the connection)
2023-06-02 12:05:22 +0200fvr(ef3e56ca8b@2604:bf00:561:2000::3c4) (Remote host closed the connection)
2023-06-02 12:05:22 +0200cpli(77fc530071@2604:bf00:561:2000::252) (Remote host closed the connection)
2023-06-02 12:05:22 +0200whereiseveryone(206ba86c98@2604:bf00:561:2000::2e4) (Remote host closed the connection)
2023-06-02 12:05:22 +0200arcadewise(52968ed80d@2604:bf00:561:2000::3df) (Remote host closed the connection)
2023-06-02 12:05:22 +0200JoelMcCracken(5ea8252fbb@2604:bf00:561:2000::10e3) (Remote host closed the connection)
2023-06-02 12:05:22 +0200shreyasminocha(51fdc93eda@user/shreyasminocha) (Remote host closed the connection)
2023-06-02 12:05:22 +0200theesm(2cbdf4b38a@2604:bf00:561:2000::11c8) (Remote host closed the connection)
2023-06-02 12:05:22 +0200samhh(7569f027cf@2604:bf00:561:2000::e4) (Remote host closed the connection)
2023-06-02 12:05:23 +0200chaitlatte0(ea29c0bb16@user/chaitlatte0) (Remote host closed the connection)
2023-06-02 12:05:23 +0200ggb(a62ffbaf4f@2604:bf00:561:2000::3ac) (Remote host closed the connection)
2023-06-02 12:05:23 +0200jkoshy(99b9359beb@user/jkoshy) (Remote host closed the connection)
2023-06-02 12:05:23 +0200evanrelf(3addc196af@2604:bf00:561:2000::f0) (Remote host closed the connection)
2023-06-02 12:05:23 +0200b0o(0e4a0bf4c9@2604:bf00:561:2000::1bf) (Remote host closed the connection)
2023-06-02 12:05:23 +0200retropikzel(9d1a4f9f46@2604:bf00:561:2000::ce) (Remote host closed the connection)
2023-06-02 12:05:23 +0200filwisher(2e6936c793@2604:bf00:561:2000::170) (Remote host closed the connection)
2023-06-02 12:05:23 +0200n1essa(3d621153a5@2604:bf00:561:2000::df7) (Remote host closed the connection)
2023-06-02 12:05:23 +0200jleightcap(7bc4014b62@user/jleightcap) (Remote host closed the connection)
2023-06-02 12:05:23 +0200Ankhers(e99e97ef8e@2604:bf00:561:2000::2a2) (Remote host closed the connection)
2023-06-02 12:05:23 +0200lukec(9dfd4d094e@2604:bf00:561:2000::10e) (Remote host closed the connection)
2023-06-02 12:05:23 +0200MonsoonSecrecy(f78c86e960@2604:bf00:561:2000::f99) (Remote host closed the connection)
2023-06-02 12:05:23 +0200probie(cc0b34050a@user/probie) (Remote host closed the connection)
2023-06-02 12:05:23 +0200henrytill(e0180937c3@2604:bf00:561:2000::e8c) (Write error: Connection reset by peer)
2023-06-02 12:05:23 +0200fluffyballoon(45ce440a48@2604:bf00:561:2000::e2) (Remote host closed the connection)
2023-06-02 12:05:26 +0200alexherbo2(~alexherbo@2a02-842a-8180-4601-710f-b3ed-443f-ba6d.rev.sfr.net)
2023-06-02 12:06:49 +0200bsima1(9d7e39c8ad@2604:bf00:561:2000::dd)
2023-06-02 12:06:49 +0200lukec(9dfd4d094e@2604:bf00:561:2000::10e)
2023-06-02 12:06:49 +0200filwisher(3433d34cc6@2604:bf00:561:2000::170)
2023-06-02 12:06:50 +0200ggb(a62ffbaf4f@2604:bf00:561:2000::3ac)
2023-06-02 12:06:59 +0200jakzale(6291399afa@user/jakzale)
2023-06-02 12:07:05 +0200cpli(77fc530071@2604:bf00:561:2000::252)
2023-06-02 12:07:06 +0200b0o(0e4a0bf4c9@2604:bf00:561:2000::1bf)
2023-06-02 12:07:06 +0200fluffyballoon(45ce440a48@2604:bf00:561:2000::e2)
2023-06-02 12:07:06 +0200jleightcap(7bc4014b62@user/jleightcap)
2023-06-02 12:07:06 +0200sm2n(ae95cb1267@user/sm2n)
2023-06-02 12:07:06 +0200chaitlatte0(ea29c0bb16@2604:bf00:561:2000::1124)
2023-06-02 12:07:12 +0200JoelMcCracken(9cb760e8d2@2604:bf00:561:2000::10e3)
2023-06-02 12:07:13 +0200arcadewise(52968ed80d@2604:bf00:561:2000::3df)
2023-06-02 12:07:13 +0200evanrelf(3addc196af@2604:bf00:561:2000::f0)
2023-06-02 12:07:13 +0200Ankhers(e99e97ef8e@2604:bf00:561:2000::2a2)
2023-06-02 12:07:13 +0200jkoshy(99b9359beb@user/jkoshy)
2023-06-02 12:07:20 +0200probie(cc0b34050a@user/probie)
2023-06-02 12:07:21 +0200henrytill(e0180937c3@2604:bf00:561:2000::e8c)
2023-06-02 12:07:21 +0200fvr(ef3e56ca8b@2604:bf00:561:2000::3c4)
2023-06-02 12:07:21 +0200samhh(7569f027cf@2604:bf00:561:2000::e4)
2023-06-02 12:07:26 +0200theesm(2cbdf4b38a@2604:bf00:561:2000::11c8)
2023-06-02 12:07:27 +0200chaitlatte0(ea29c0bb16@2604:bf00:561:2000::1124) (Changing host)
2023-06-02 12:07:27 +0200chaitlatte0(ea29c0bb16@user/chaitlatte0)
2023-06-02 12:07:27 +0200n1essa(3d621153a5@2604:bf00:561:2000::df7)
2023-06-02 12:07:27 +0200ymherklotz(cb2c9cfbdd@2604:bf00:561:2000::29a)
2023-06-02 12:07:44 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 12:07:47 +0200whereiseveryone(206ba86c98@2604:bf00:561:2000::2e4)
2023-06-02 12:07:57 +0200shreyasminocha(51fdc93eda@user/shreyasminocha)
2023-06-02 12:08:03 +0200sus(1b7af6299f@user/zeromomentum)
2023-06-02 12:08:08 +0200mc47(~mc47@xmonad/TheMC47)
2023-06-02 12:08:39 +0200MonsoonSecrecy(f78c86e960@2604:bf00:561:2000::f99)
2023-06-02 12:08:39 +0200retropikzel(9d1a4f9f46@2604:bf00:561:2000::ce)
2023-06-02 12:08:52 +0200wagle(~wagle@quassel.wagle.io) (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
2023-06-02 12:09:43 +0200wagle(~wagle@quassel.wagle.io)
2023-06-02 12:09:45 +0200jonathan_(~jonathan@193.234.101.122) (Ping timeout: 240 seconds)
2023-06-02 12:09:49 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 12:12:17 +0200barcisz(~barcisz@83.6.194.51.ipv4.supernova.orange.pl)
2023-06-02 12:12:19 +0200mei(~mei@user/mei) (Remote host closed the connection)
2023-06-02 12:12:31 +0200nschoe(~q@2a01:e0a:8e:a190:bced:256e:4e59:ead3) (Ping timeout: 250 seconds)
2023-06-02 12:12:58 +0200xff0x_(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 250 seconds)
2023-06-02 12:14:35 +0200wagle(~wagle@quassel.wagle.io) (Client Quit)
2023-06-02 12:14:43 +0200mei(~mei@user/mei)
2023-06-02 12:18:42 +0200user(~user@dynamic-046-114-179-129.46.114.pool.telefonica.de)
2023-06-02 12:21:59 +0200wagle(~wagle@quassel.wagle.io)
2023-06-02 12:22:56 +0200CiaoSen(~Jura@145.224.74.19) (Ping timeout: 250 seconds)
2023-06-02 12:24:05 +0200Pickchea(~private@user/pickchea) (Quit: Leaving)
2023-06-02 12:28:28 +0200barcisz(~barcisz@83.6.194.51.ipv4.supernova.orange.pl) (Quit: Connection closed)
2023-06-02 12:32:08 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 12:39:25 +0200kawzeg_kawzeg
2023-06-02 12:41:21 +0200jakzale_(uid499518@user/jakzale)
2023-06-02 12:46:22 +0200boukenshaou(~Boukensha@223.178.84.62)
2023-06-02 12:47:08 +0200kuribas(~user@ptr-17d51ephub1gxlxgvmy.18120a2.ip6.access.telenet.be) (Remote host closed the connection)
2023-06-02 12:47:21 +0200kuribas(~user@ptr-17d51engv2c1svqneak.18120a2.ip6.access.telenet.be)
2023-06-02 12:48:25 +0200Renate55(~Renate@h-176-10-200-119.A463.priv.bahnhof.se)
2023-06-02 12:49:33 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 12:50:07 +0200boukenshaou(~Boukensha@223.178.84.62) (Client Quit)
2023-06-02 12:50:17 +0200CiaoSen(~Jura@145.224.74.19)
2023-06-02 12:50:23 +0200boukenshaou(~Boukensha@223.178.84.62)
2023-06-02 12:50:43 +0200Renate55(~Renate@h-176-10-200-119.A463.priv.bahnhof.se) (Client Quit)
2023-06-02 12:55:37 +0200mei(~mei@user/mei) (Remote host closed the connection)
2023-06-02 12:58:01 +0200mei(~mei@user/mei)
2023-06-02 12:58:37 +0200CiaoSen(~Jura@145.224.74.19) (Ping timeout: 240 seconds)
2023-06-02 13:00:56 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 13:02:08 +0200alexherbo2(~alexherbo@2a02-842a-8180-4601-710f-b3ed-443f-ba6d.rev.sfr.net) (Remote host closed the connection)
2023-06-02 13:02:09 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 13:03:19 +0200alexherbo2(~alexherbo@2a02-842a-8180-4601-710f-b3ed-443f-ba6d.rev.sfr.net)
2023-06-02 13:08:39 +0200acidjnk(~acidjnk@p200300d6e7072f7860194c065beb1fb8.dip0.t-ipconnect.de) (Ping timeout: 256 seconds)
2023-06-02 13:11:44 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 13:12:37 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b)
2023-06-02 13:15:14 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 13:15:34 +0200xff0x_(~xff0x@2405:6580:b080:900:ad63:f633:72c4:d507)
2023-06-02 13:27:31 +0200jonathan_(~jonathan@193.234.101.122)
2023-06-02 13:27:38 +0200__monty__(~toonn@user/toonn)
2023-06-02 13:29:07 +0200MajorBiscuit(~MajorBisc@93-87-168.netrun.cytanet.com.cy) (Ping timeout: 240 seconds)
2023-06-02 13:30:31 +0200rrrenate(~rrrenate@h-176-10-200-119.A463.priv.bahnhof.se)
2023-06-02 13:31:15 +0200MajorBiscuit(~MajorBisc@c-001-031-057.client.tudelft.eduvpn.nl)
2023-06-02 13:31:22 +0200nschoe(~q@2a01:e0a:8e:a190:831d:ef93:47dd:6a31)
2023-06-02 13:33:20 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 13:34:46 +0200boukenshaou(~Boukensha@223.178.84.62) (Quit: Leaving)
2023-06-02 13:35:02 +0200boukenshaou(~Boukensha@223.178.84.62)
2023-06-02 13:35:59 +0200rrrenate(~rrrenate@h-176-10-200-119.A463.priv.bahnhof.se) ()
2023-06-02 13:35:59 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 13:47:32 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b) (Ping timeout: 246 seconds)
2023-06-02 13:47:32 +0200kmein_(~weechat@user/kmein)
2023-06-02 13:48:08 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 13:48:37 +0200user(~user@dynamic-046-114-179-129.46.114.pool.telefonica.de) (Ping timeout: 240 seconds)
2023-06-02 13:49:49 +0200kmein(~weechat@user/kmein) (Ping timeout: 268 seconds)
2023-06-02 13:51:06 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 13:58:25 +0200telser_(~quassel@user/telser) (Ping timeout: 240 seconds)
2023-06-02 13:58:38 +0200jero98772(~jero98772@2800:484:1d7f:5d36::2)
2023-06-02 14:03:21 +0200Kuttenbrunzer(~Kuttenbru@2a02:8108:8b80:1d48::8c4c)
2023-06-02 14:03:44 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 240 seconds)
2023-06-02 14:06:17 +0200acidjnk(~acidjnk@p200300d6e7072f7860194c065beb1fb8.dip0.t-ipconnect.de)
2023-06-02 14:07:20 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 14:09:10 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 14:12:28 +0200user(~user@dynamic-046-114-179-129.46.114.pool.telefonica.de)
2023-06-02 14:16:07 +0200__monty__(~toonn@user/toonn) (Ping timeout: 240 seconds)
2023-06-02 14:17:20 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 14:18:43 +0200gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8)
2023-06-02 14:21:05 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 14:23:09 +0200__monty__(~toonn@user/toonn)
2023-06-02 14:26:07 +0200zincy(~tom@2a00:23c8:970c:4801:5b6a:e81b:79dc:f684) (Remote host closed the connection)
2023-06-02 14:26:08 +0200tom_(~tom@2a00:23c8:970c:4801:5b6a:e81b:79dc:f684)
2023-06-02 14:33:13 +0200Inst(~Inst@2601:6c4:4081:2fc0:dc31:eeab:3120:a68f)
2023-06-02 14:34:00 +0200 <Inst> is there a way to speed up the STRef code here?
2023-06-02 14:34:01 +0200 <Inst> https://paste.tomsmeding.com/oSpPSxc3
2023-06-02 14:35:07 +0200 <Inst> The naive accumulator is roughly log n, 50 elements takes 3 times the time of 5 elements
2023-06-02 14:35:44 +0200 <Inst> STref starts 2x as slow as the naive accumulator version, balloons to 6 times slower
2023-06-02 14:36:56 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 14:37:22 +0200 <probie> I don't think you're going to be able to make the STRef code much faster.
2023-06-02 14:37:44 +0200 <Inst> i'm wondering if there's a standard STRef overhead
2023-06-02 14:37:48 +0200 <Inst> it's using guarded recursion, obviously
2023-06-02 14:39:54 +0200 <dminuoso> Inst: What if you replace the for_ with an explicit loop?
2023-06-02 14:40:32 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 14:41:54 +0200 <Inst> also, curious, wasn't SC with representatives on HF?
2023-06-02 14:42:05 +0200 <Inst> There's this Clojure / Dynamic Typing fanboy
2023-06-02 14:42:24 +0200 <Inst> arguing that SC is preparing to ditch Haskell for Java; SC is apparently hiring combo Haskell / Java devs
2023-06-02 14:44:08 +0200Pickchea(~private@user/pickchea)
2023-06-02 14:44:27 +0200Alex_test(~al_test@178.34.163.104) (Quit: ;-)
2023-06-02 14:44:52 +0200 <Inst> trying now
2023-06-02 14:45:32 +0200AlexZenon(~alzenon@178.34.163.104) (Quit: ;-)
2023-06-02 14:45:49 +0200 <geekosaur> people pointed to facebook and claimed they were ditching haskell a couple months ago. they were as usual wrong.
2023-06-02 14:46:20 +0200 <geekosaur> some people just want to see haskell fall, and will see ghosts in every shadow as a result
2023-06-02 14:46:49 +0200AlexNoo(~AlexNoo@178.34.163.104) (Quit: Leaving)
2023-06-02 14:47:01 +0200 <Inst> I was one of the people claiming that facebook was discontinuing some of their Haskell systems, mainly based on a posting in /r/Haskell
2023-06-02 14:47:09 +0200 <Inst> I mean Marlowe's still there
2023-06-02 14:47:15 +0200 <dminuoso> geekosaur: Honestly that claim didnt even hold some very basic research.
2023-06-02 14:47:15 +0200 <Inst> afaik Meta is bigger on OCaml derivatives
2023-06-02 14:50:10 +0200 <Inst> worsened performance
2023-06-02 14:50:59 +0200 <dminuoso> Im fighting with a bit of surprise where optimized code produces 0 for each of those solutions.
2023-06-02 14:51:04 +0200 <dminuoso> Something is strange
2023-06-02 14:51:06 +0200jakzale_(uid499518@user/jakzale) (Quit: Connection closed for inactivity)
2023-06-02 14:51:44 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 14:52:12 +0200 <dminuoso> Ahh, I guess Int is not large enough
2023-06-02 14:52:26 +0200Pickchea(~private@user/pickchea) (Ping timeout: 250 seconds)
2023-06-02 14:52:36 +0200 <Inst> I mean it's not really optimized either way, I guess Bodigrim probably has a primeswing factorial somewhere
2023-06-02 14:52:38 +0200 <Inst> I'd love to see it
2023-06-02 14:53:19 +0200 <dminuoso> Inst: I find it hard to impossible to believe a manual loop could perform worse than for_
2023-06-02 14:53:28 +0200 <dminuoso> can you share your code?
2023-06-02 14:53:30 +0200 <probie> The tight loop for facAcc produces the assembly you'd expect https://paste.tomsmeding.com/GfmFTNXJ
2023-06-02 14:53:30 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 14:53:59 +0200 <Inst> https://paste.tomsmeding.com/ZEClItMD
2023-06-02 14:54:10 +0200 <int-e> Inst: "i'm wondering if there's a standard STRef overhead" - the contents of an STRef must always be boxed. The accumulator in the pure version can be unboxed.
2023-06-02 14:54:20 +0200 <dminuoso> int-e: That's missing a bang at least
2023-06-02 14:54:50 +0200 <dminuoso> Sorry I meant Inst.
2023-06-02 14:54:54 +0200 <Inst> the log n is implying optimization on O2
2023-06-02 14:55:11 +0200 <int-e> dminuoso: Hah, I *know* this tab completion bug...
2023-06-02 14:55:36 +0200 <Inst> https://media.discordapp.net/attachments/968989726633779215/1114175450533605477/image.png?width=66…
2023-06-02 14:55:56 +0200 <dminuoso> Inst: Im near confident if you add the missing bang, it will perform the same at least, possibly better.
2023-06-02 14:55:59 +0200 <Profpatsch> Is there a way to DeriveVia through an Iso?
2023-06-02 14:56:24 +0200 <Inst> which bang?
2023-06-02 14:56:25 +0200 <Profpatsch> i.e. if the representations are not the same, but you can whitness the isomorphism, you can derive stuff
2023-06-02 14:56:31 +0200 <Inst> loop !n?
2023-06-02 14:56:51 +0200 <dminuoso> Inst: Yeah. I mean Id be surprised if the strictness analyzer couldnt figure that out, but who knows.
2023-06-02 14:57:08 +0200 <Profpatsch> e.g. data Foo a = Foo { a :: a, b :: Text } is isomorphic to (Compose ((,) Text) Identity), which is Applicative
2023-06-02 14:57:17 +0200 <Inst> waiting on the vec version to finish running, it's slower
2023-06-02 14:57:47 +0200 <dminuoso> Profpatsch: No.
2023-06-02 14:57:53 +0200 <Profpatsch> dminuoso: thank you
2023-06-02 14:58:04 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:5b56:4846:65d0:5d03) (Ping timeout: 250 seconds)
2023-06-02 14:58:26 +0200 <Profpatsch> (that was sarcastic because just “no” is not helpful)
2023-06-02 14:58:33 +0200 <dminuoso> Profpatsch: The requirement is as per GHC documentation identical rnutime representation
2023-06-02 14:58:51 +0200 <dminuoso> Well you asked "Is there a way..."
2023-06-02 14:58:58 +0200 <dminuoso> I think `no` is a fairly sufficient response.
2023-06-02 14:59:10 +0200 <probie> dminuoso: I wouldn't be surprised if there's roughly the same speed with `for_` as a manually written loop. I get this core https://paste.tomsmeding.com/ZArl0Lrs for its worker (which never builds a list)
2023-06-02 14:59:20 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 14:59:29 +0200 <Profpatsch> dminuoso: but you agree that I can trivially provide any instance for any isomorphic type?
2023-06-02 14:59:36 +0200 <dminuoso> Yes.
2023-06-02 14:59:38 +0200 <Profpatsch> ok
2023-06-02 14:59:49 +0200 <Profpatsch> well, I guess then I’ll have to bite the bullet
2023-06-02 14:59:59 +0200 <dminuoso> Profpatsch: deriving via is essentially just coerce under the hood.
2023-06-02 15:00:06 +0200 <Profpatsch> (also I wouldn’t be surprised if @kmett had a lens for it or something)
2023-06-02 15:00:13 +0200 <Profpatsch> and some TH
2023-06-02 15:01:07 +0200 <Profpatsch> omg ofc https://www.tweag.io/blog/2020-04-23-deriving-isomorphically/
2023-06-02 15:01:16 +0200 <Profpatsch> I was still working there when the blog post was released
2023-06-02 15:01:26 +0200 <Profpatsch> I’m pretty sure I’ve seen it before
2023-06-02 15:02:17 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 15:04:06 +0200 <dminuoso> Profpatsch: Well its still not automated.
2023-06-02 15:04:17 +0200 <Profpatsch> up to withnessing the isomorphism
2023-06-02 15:04:20 +0200 <dminuoso> It requires manual boilerplate which in the mentioned example iso-deriving provides for some libraries.
2023-06-02 15:04:36 +0200 <Profpatsch> yeah, you can’t get any better than that
2023-06-02 15:04:43 +0200 <Profpatsch> maybe with a TH expression
2023-06-02 15:04:48 +0200 <dminuoso> Yeah, with TH you could.
2023-06-02 15:04:49 +0200 <Profpatsch> but I don’t like those very much
2023-06-02 15:06:04 +0200barcisz(~barcisz@83.6.194.51.ipv4.supernova.orange.pl)
2023-06-02 15:07:18 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b)
2023-06-02 15:08:08 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 15:09:01 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 15:10:54 +0200telser(~quassel@user/telser)
2023-06-02 15:10:57 +0200lortabac(~lortabac@37.174.71.58)
2023-06-02 15:16:54 +0200AlexZenon(~alzenon@178.34.163.104)
2023-06-02 15:17:00 +0200AlexNoo(~AlexNoo@178.34.163.104)
2023-06-02 15:17:20 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 15:17:57 +0200pavonia(~user@user/siracusa) (Quit: Bye!)
2023-06-02 15:19:15 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b) (Remote host closed the connection)
2023-06-02 15:19:38 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b)
2023-06-02 15:19:57 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 15:20:22 +0200Alex_test(~al_test@178.34.163.104)
2023-06-02 15:20:28 +0200 <Profpatsch> seems to work, awesome
2023-06-02 15:20:51 +0200 <Profpatsch> might want to make inj and prj `INLINE`
2023-06-02 15:25:21 +0200int-ewonders whether Inst's "fifty" is accidentally using 30 as the argument because of cut&paste.
2023-06-02 15:25:30 +0200 <Inst> okay, got it working
2023-06-02 15:25:55 +0200 <Inst> I think it's just that tasty is not reliable
2023-06-02 15:26:28 +0200 <Inst> STref loop beats STRef for sometimes, dies at other times
2023-06-02 15:26:50 +0200 <Inst> there's no way to force unboxing, right?
2023-06-02 15:28:17 +0200 <Inst> re tasty:
2023-06-02 15:28:17 +0200 <Inst> https://paste.tomsmeding.com/R7Zk9vfv
2023-06-02 15:28:20 +0200 <Inst> int-e
2023-06-02 15:29:07 +0200 <probie> force unboxing of what?
2023-06-02 15:29:42 +0200szkl(uid110435@id-110435.uxbridge.irccloud.com)
2023-06-02 15:30:39 +0200 <Inst> STRef
2023-06-02 15:33:01 +0200Profpatschwonders what the easiest way to convert a `Map [Text] a` to a `Tree (Text, a)` is
2023-06-02 15:33:05 +0200lortabac(~lortabac@37.174.71.58) (Ping timeout: 240 seconds)
2023-06-02 15:34:08 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 15:34:29 +0200 <Profpatsch> Ah, just use unfoldTree, nvm
2023-06-02 15:34:59 +0200 <int-e> Inst: curious. http://paste.debian.net/1281785/ is what I'm seeing
2023-06-02 15:35:17 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 15:35:23 +0200 <int-e> Inst: or https://int-e.eu/~bf3/tmp/fac-criterion.html with the big hammer
2023-06-02 15:35:26 +0200 <Inst> can you pass me your fac list code? Colud be an issue with tasty or windows
2023-06-02 15:35:37 +0200 <int-e> Inst: facList n = product [1..n]
2023-06-02 15:35:37 +0200qhong_(~qhong@rescomp-21-400677.stanford.edu)
2023-06-02 15:35:43 +0200 <Inst> ...
2023-06-02 15:36:09 +0200 <Inst> yeah okay, it's just product
2023-06-02 15:36:17 +0200 <Inst> triggering stream fusion
2023-06-02 15:37:28 +0200 <probie> Inst: STRef is explicitly for boxed types, so it can never unbox.
2023-06-02 15:38:11 +0200 <Inst> Type -> Type -> Type
2023-06-02 15:38:40 +0200 <Inst> https://hackage.haskell.org/package/unboxed-ref-0.4.0.0/docs/Data-STRef-Unboxed.html
2023-06-02 15:39:03 +0200qhong(~qhong@DN160vrd000d6kpg009l6c0000fj.stanford.edu) (Ping timeout: 265 seconds)
2023-06-02 15:39:07 +0200 <int-e> Inst: (don't forget the type signature. I did that at first and it was much slower than I expected :-P)
2023-06-02 15:39:44 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 15:39:44 +0200 <int-e> It should probably be product [2..n] to match the `Acc` version more closely.
2023-06-02 15:39:57 +0200 <probie> you can certainly build your own ref type that can hold an unboxed type (like that library you linked is doing)
2023-06-02 15:40:09 +0200barcisz(~barcisz@83.6.194.51.ipv4.supernova.orange.pl) (Quit: Connection closed)
2023-06-02 15:40:38 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 15:41:13 +0200 <int-e> Yeah an unboxed mutable vector of size 1 would fit that bill, with some overhead. But it will still be a memory cell rather than ending up in a register.
2023-06-02 15:43:34 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b) (Ping timeout: 250 seconds)
2023-06-02 15:44:00 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:a1a9:9fb0:afec:ec84)
2023-06-02 15:44:27 +0200 <probie> Also, if we're pedantic, it's not "stream fusion". GHC's list fusion is based on foldr/build and not on streams
2023-06-02 15:44:53 +0200img(~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in)
2023-06-02 15:45:10 +0200img(~img@user/img)
2023-06-02 15:45:28 +0200cfricke(~cfricke@user/cfricke) (Quit: WeeChat 3.8)
2023-06-02 15:46:28 +0200xff0x_(~xff0x@2405:6580:b080:900:ad63:f633:72c4:d507) (Ping timeout: 240 seconds)
2023-06-02 15:46:47 +0200mc47(~mc47@xmonad/TheMC47) (Quit: Leaving)
2023-06-02 15:48:28 +0200nate2(~nate@98.45.169.16)
2023-06-02 15:49:12 +0200xff0x_(~xff0x@ai098135.d.east.v6connect.net)
2023-06-02 15:49:29 +0200 <Inst> also, my code makes no sense for 20 and above
2023-06-02 15:49:35 +0200barcisz(~barcisz@83.6.194.51.ipv4.supernova.orange.pl)
2023-06-02 15:49:41 +0200 <Inst> since int overflow kicks in after 20
2023-06-02 15:50:59 +0200 <Inst> okay, this is good, using the dead library
2023-06-02 15:51:08 +0200 <Inst> https://hackage.haskell.org/package/unboxed-ref-0.4.0.0
2023-06-02 15:52:02 +0200 <probie> Also, if you want to be impressed at GHC's ability to optimise, look at the code it generates for `averageFirst2N` in https://play.haskell.org/saved/Jt1RBhJm with `-O2` (it seems like `-O1` doesn't do enough passes)
2023-06-02 15:53:06 +0200nate2(~nate@98.45.169.16) (Ping timeout: 250 seconds)
2023-06-02 15:53:09 +0200img(~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in)
2023-06-02 15:53:30 +0200img(~img@user/img)
2023-06-02 15:53:41 +0200dsrt^(~dsrt@c-71-204-38-59.hsd1.ga.comcast.net) (Remote host closed the connection)
2023-06-02 15:55:47 +0200acidjnk(~acidjnk@p200300d6e7072f7860194c065beb1fb8.dip0.t-ipconnect.de) (Remote host closed the connection)
2023-06-02 15:56:11 +0200acidjnk(~acidjnk@p200300d6e7072f78046b2710f5693988.dip0.t-ipconnect.de)
2023-06-02 15:56:18 +0200 <Inst> ehhh, good enough
2023-06-02 15:56:27 +0200 <Inst> https://media.discordapp.net/attachments/968989726633779215/1114190723735109815/image.png?width=61…
2023-06-02 15:56:58 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:ac1f:c72a:d1cd:9ce8)
2023-06-02 15:58:08 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 15:58:21 +0200motherfsck(~motherfsc@user/motherfsck)
2023-06-02 15:59:09 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b)
2023-06-02 15:59:10 +0200jonathan_(~jonathan@193.234.101.122) (Ping timeout: 250 seconds)
2023-06-02 15:59:52 +0200img(~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in)
2023-06-02 16:00:25 +0200img(~img@user/img)
2023-06-02 16:00:27 +0200MajorBiscuit(~MajorBisc@c-001-031-057.client.tudelft.eduvpn.nl) (Ping timeout: 250 seconds)
2023-06-02 16:00:55 +0200acidjnk(~acidjnk@p200300d6e7072f78046b2710f5693988.dip0.t-ipconnect.de) (Ping timeout: 256 seconds)
2023-06-02 16:01:01 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:ac1f:c72a:d1cd:9ce8) (Ping timeout: 240 seconds)
2023-06-02 16:02:32 +0200MajorBiscuit(~MajorBisc@93-87-168.netrun.cytanet.com.cy)
2023-06-02 16:04:10 +0200img(~img@user/img) (Client Quit)
2023-06-02 16:04:27 +0200acarrico(~acarrico@dhcp-68-142-49-163.greenmountainaccess.net)
2023-06-02 16:04:33 +0200img(~img@user/img)
2023-06-02 16:05:40 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 16:07:56 +0200Guest64(~Guest64@bras-base-toroon4223w-grc-46-70-24-135-121.dsl.bell.ca)
2023-06-02 16:08:34 +0200MajorBiscuit(~MajorBisc@93-87-168.netrun.cytanet.com.cy) (Ping timeout: 268 seconds)
2023-06-02 16:08:35 +0200 <Guest64> > take 5 [1..] ==> [1,2,3,4,5]
2023-06-02 16:08:37 +0200 <lambdabot> error:
2023-06-02 16:08:37 +0200 <lambdabot> • Couldn't match expected type ‘Bool’ with actual type ‘[a0]’
2023-06-02 16:08:37 +0200 <lambdabot> • In the first argument of ‘(==>)’, namely ‘take 5 [1 .. ]’
2023-06-02 16:08:52 +0200 <Guest64> @pl \xs n -> take n xs ==> flip take
2023-06-02 16:08:52 +0200 <lambdabot> flip flip (flip take) . ((==>) .) . flip take
2023-06-02 16:09:01 +0200img(~img@user/img) (Client Quit)
2023-06-02 16:09:25 +0200img(~img@user/img)
2023-06-02 16:09:42 +0200 <Guest64> @undo do { x <- getLine; print x } ==> getLine >>= \ x -> print x
2023-06-02 16:09:42 +0200 <lambdabot> getLine >>= \ x -> print x ==> getLine >>= \ x -> print x
2023-06-02 16:09:46 +0200 <Inst> hmmm, question, would STRefU / IORefU benefit from first-class primitives?
2023-06-02 16:09:47 +0200MajorBiscuit(~MajorBisc@c-001-031-057.client.tudelft.eduvpn.nl)
2023-06-02 16:09:54 +0200 <ncf> Guest64: you can use the bot in private messages
2023-06-02 16:10:18 +0200 <Guest64> oh, sorry about that, how do i use private messages?
2023-06-02 16:10:30 +0200 <ncf> /query lambdabot
2023-06-02 16:10:44 +0200 <Inst> would be totally un-Haskelly, but adding the primitives would speed up Haskell for various benchmark games...
2023-06-02 16:11:38 +0200 <probie> Inst: What makes you think it would speed it up?
2023-06-02 16:12:05 +0200 <Inst> i'm getting 50-90% increased times via STRefU
2023-06-02 16:12:14 +0200 <Inst> which works via bytearray length 1
2023-06-02 16:12:22 +0200 <probie> But still slower than the version which doesn't use ST at all
2023-06-02 16:12:45 +0200 <Inst> vs the version using a naive accumulator
2023-06-02 16:13:26 +0200 <Inst> btw, do we have a C interpreter written in Haskell?
2023-06-02 16:13:44 +0200 <geekosaur> sort of
2023-06-02 16:14:07 +0200 <geekosaur> https://github.com/Eelis/geordi
2023-06-02 16:14:34 +0200stef204(~stef204@user/stef204)
2023-06-02 16:16:56 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 16:20:35 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 16:23:51 +0200 <probie> Inst: out of curiosity, how does https://play.haskell.org/saved/J56GnLvI compare?
2023-06-02 16:28:15 +0200stef204(~stef204@user/stef204) (Quit: WeeChat 3.8)
2023-06-02 16:29:07 +0200machinedgod(~machinedg@93-136-248-42.adsl.net.t-com.hr)
2023-06-02 16:32:36 +0200ft(~ft@p4fc2a88b.dip0.t-ipconnect.de)
2023-06-02 16:35:17 +0200stef204(~stef204@user/stef204)
2023-06-02 16:35:17 +0200ddellacosta(~ddellacos@143.244.47.100)
2023-06-02 16:38:05 +0200shriekingnoise(~shrieking@186.137.175.87)
2023-06-02 16:38:56 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 16:39:28 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 16:40:31 +0200elkcl(~elkcl@broadband-37-110-27-252.ip.moscow.rt.ru) (Ping timeout: 240 seconds)
2023-06-02 16:40:59 +0200 <Inst> fused version probie, performs about the same, perhaps very slightyl faster
2023-06-02 16:41:32 +0200img(~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in)
2023-06-02 16:42:07 +0200 <Inst> thanks for my first ever look at rewrite rules
2023-06-02 16:43:01 +0200barcisz(~barcisz@83.6.194.51.ipv4.supernova.orange.pl) (Quit: Connection closed)
2023-06-02 16:43:34 +0200 <carbolymer> can I have two cabal.project files, one higher in the directory hierarchy, and tell HLS (hie-bios) and cabal to ignore one in $PWD and use the other one from ../ ?
2023-06-02 16:43:42 +0200 <Inst> i declined to rename the thing
2023-06-02 16:43:43 +0200 <Inst> https://media.discordapp.net/attachments/968989726633779215/1114202655758221383/image.png?width=66…
2023-06-02 16:44:07 +0200 <Inst> so it's actually your fused version taking the place of strefu
2023-06-02 16:44:32 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 16:47:07 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 16:48:31 +0200gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c)
2023-06-02 16:49:00 +0200img(~img@user/img)
2023-06-02 16:50:40 +0200 <Inst> btw, last question for the day, does Haskell have a primeswing / fast factorial somewhere?
2023-06-02 16:51:22 +0200Guest64(~Guest64@bras-base-toroon4223w-grc-46-70-24-135-121.dsl.bell.ca) (Quit: Client closed)
2023-06-02 16:53:52 +0200machinedgod(~machinedg@93-136-248-42.adsl.net.t-com.hr) (Ping timeout: 248 seconds)
2023-06-02 16:54:53 +0200 <tomsmeding> why on earth does one need to very quickly compute humongous factorials
2023-06-02 16:56:02 +0200 <tomsmeding> "As a starting point, let us look at the performance ranking for n = 2048007"
2023-06-02 16:57:10 +0200 <tomsmeding> that's an 12036216-digit number
2023-06-02 16:57:37 +0200 <tomsmeding> representing that in memory takes >11 MiB
2023-06-02 16:57:51 +0200 <tomsmeding> that that point you have other problems I'd expect
2023-06-02 16:58:05 +0200MajorBiscuit(~MajorBisc@c-001-031-057.client.tudelft.eduvpn.nl) (Ping timeout: 250 seconds)
2023-06-02 16:58:31 +0200elkcl(~elkcl@broadband-37-110-27-252.ip.moscow.rt.ru)
2023-06-02 16:58:31 +0200motherfsck(~motherfsc@user/motherfsck) (Ping timeout: 240 seconds)
2023-06-02 17:02:35 +0200MajorBiscuit(~MajorBisc@93-87-168.netrun.cytanet.com.cy)
2023-06-02 17:03:44 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 17:05:07 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 17:06:05 +0200Angelz(Angelz@2605:6400:30:fc15:9bd1:2217:41cd:bb15) (Ping timeout: 256 seconds)
2023-06-02 17:08:47 +0200MajorBiscuit(~MajorBisc@93-87-168.netrun.cytanet.com.cy) (Ping timeout: 246 seconds)
2023-06-02 17:10:00 +0200 <Las[m]1> What tools do people usually use to write papers on Haskell?
2023-06-02 17:11:24 +0200 <jade[m]> you asked this previously and I didn't understand
2023-06-02 17:11:30 +0200 <jade[m]> are you looking for latex?
2023-06-02 17:11:48 +0200 <jade[m]> s/latex/LaTeX
2023-06-02 17:11:58 +0200 <Las[m]1> What I did
2023-06-02 17:12:08 +0200__monty__(~toonn@user/toonn) (Quit: leaving)
2023-06-02 17:12:16 +0200 <Las[m]1> I think I forgot that I did and then asked again lol
2023-06-02 17:12:31 +0200 <Las[m]1> Do people usually do it in LaTeX? Then yes.
2023-06-02 17:12:59 +0200 <yushyin> People usually use LaTeX for writing academic papers
2023-06-02 17:13:10 +0200 <jade[m]> I would think so as most scientific papers are written in LaTeX
2023-06-02 17:17:20 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 17:17:30 +0200kuribas(~user@ptr-17d51engv2c1svqneak.18120a2.ip6.access.telenet.be) (Quit: ERC (IRC client for Emacs 27.1))
2023-06-02 17:19:02 +0200captnemo(~captnemo@193.32.127.239)
2023-06-02 17:19:17 +0200 <Inst> tomsmeding: less that you're computing huge factorials, and more that you're computing a lot of factorials
2023-06-02 17:19:33 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b) (Read error: Connection reset by peer)
2023-06-02 17:19:40 +0200 <yushyin> Maybe some use ConTeXt and some even just use ms office :)
2023-06-02 17:19:53 +0200Sgeo(~Sgeo@user/sgeo)
2023-06-02 17:19:57 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b)
2023-06-02 17:21:01 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 17:21:01 +0200MajorBiscuit(~MajorBisc@93-87-168.netrun.cytanet.com.cy)
2023-06-02 17:21:02 +0200 <geekosaur> Inst, memoization helps a lot with lots of factorials
2023-06-02 17:23:43 +0200 <Las[m]1> I'm probably not going to do that then but instead use HTML and MathML. See how it goes.
2023-06-02 17:24:13 +0200 <jade[m]> why not?
2023-06-02 17:24:23 +0200 <jade[m]> (the bridge might have dropped some messages?)
2023-06-02 17:24:28 +0200 <geekosaur> learning curve?
2023-06-02 17:24:50 +0200 <jade[m]> geekosaur: fair enough
2023-06-02 17:25:00 +0200 <Inst> i mean i'm just looking for a replacement for the hgmp solution
2023-06-02 17:25:24 +0200 <geekosaur> took me a while to come up to speed on TeX and LaTeX back when I used it to document a database system
2023-06-02 17:28:09 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:a1a9:9fb0:afec:ec84) (Quit: WeeChat 2.8)
2023-06-02 17:30:22 +0200 <Las[m]1> Yeah, mostly learning curve, especially when HTML seems like it's probably enough. Papers don't have to be paper-native anyway, and printing HTML into PDFs is pretty good nowadays.
2023-06-02 17:31:26 +0200 <jade[m]> sounde good!
2023-06-02 17:31:38 +0200 <jade[m]> what do you plan to write about?
2023-06-02 17:32:48 +0200vandita(~vandit@80-95-82-37.pool.digikabel.hu) (Ping timeout: 240 seconds)
2023-06-02 17:34:07 +0200MajorBiscuit(~MajorBisc@93-87-168.netrun.cytanet.com.cy) (Ping timeout: 240 seconds)
2023-06-02 17:34:43 +0200vandita(~vandit@92-249-179-12.pool.digikabel.hu)
2023-06-02 17:34:45 +0200Sciencentistguy4(~sciencent@hacksoc/ordinary-member)
2023-06-02 17:36:13 +0200nschoe(~q@2a01:e0a:8e:a190:831d:ef93:47dd:6a31) (Ping timeout: 250 seconds)
2023-06-02 17:36:42 +0200szkl(uid110435@id-110435.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
2023-06-02 17:37:07 +0200Sciencentistguy(~sciencent@hacksoc/ordinary-member) (Ping timeout: 240 seconds)
2023-06-02 17:37:07 +0200Sciencentistguy4Sciencentistguy
2023-06-02 17:39:13 +0200 <stefan-_> Las[m]1, there is https://pandoc.org/ which can transform from markdown to latex/pdf for example
2023-06-02 17:39:57 +0200 <EvanR> HTML for papers, yes the rainbow comic sans and spinning skull gifs really get the point across xD
2023-06-02 17:40:16 +0200chromoblob(~user@37.113.158.8)
2023-06-02 17:45:49 +0200 <yushyin> I want to suggest that maybe asciidoc can be a useful source format
2023-06-02 17:49:40 +0200jle`(~jle`@cpe-23-240-75-236.socal.res.rr.com) (Ping timeout: 250 seconds)
2023-06-02 17:51:05 +0200Angelz(Angelz@Angelz.oddprotocol.org)
2023-06-02 17:51:39 +0200jle`(~jle`@cpe-23-240-75-236.socal.res.rr.com)
2023-06-02 17:52:09 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:ac1f:c72a:d1cd:9ce8)
2023-06-02 17:52:55 +0200 <probie> Rainbow comic sans and spinning skull gifs are important, but nothing makes a document look more professional than liberal use of the marquee tag
2023-06-02 17:55:48 +0200cheater(~Username@user/cheater) (Ping timeout: 240 seconds)
2023-06-02 17:57:05 +0200euandreh(~Thunderbi@189.6.18.7) (Ping timeout: 240 seconds)
2023-06-02 17:57:06 +0200cheater(~Username@user/cheater)
2023-06-02 17:59:00 +0200titibandit(~titibandi@user/titibandit) (Remote host closed the connection)
2023-06-02 17:59:14 +0200harveypwca(~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving)
2023-06-02 18:02:07 +0200troydm(~troydm@user/troydm) (Ping timeout: 240 seconds)
2023-06-02 18:05:20 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 18:05:58 +0200MasseR[m](~masserauh@2001:470:69fc:105::3bd) (Remote host closed the connection)
2023-06-02 18:06:09 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 18:06:19 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:ac1f:c72a:d1cd:9ce8) (Remote host closed the connection)
2023-06-02 18:10:56 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 18:11:46 +0200user(~user@dynamic-046-114-179-129.46.114.pool.telefonica.de) (Ping timeout: 250 seconds)
2023-06-02 18:12:54 +0200accord(uid568320@id-568320.hampstead.irccloud.com)
2023-06-02 18:13:47 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 18:14:15 +0200mauke(~mauke@user/mauke)
2023-06-02 18:19:44 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 18:20:19 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b) (Remote host closed the connection)
2023-06-02 18:21:43 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 18:23:58 +0200 <chromoblob> i'm reading some introduction to category theory and noticed that morphisms (except id and compositions of other morphisms) resemble data constructors. in particular, morphisms in a monoid are like ShowS - given g, you can either prepend or append it to any f
2023-06-02 18:24:20 +0200 <chromoblob> is there something more in this line of thought?
2023-06-02 18:25:12 +0200 <EvanR> you can prepend or append any compatible morphism to a morphism, like lego bricks
2023-06-02 18:26:07 +0200 <chromoblob> unary data constructors, i mean
2023-06-02 18:26:08 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 18:26:13 +0200 <EvanR> functions f and g with function composition work this way
2023-06-02 18:26:26 +0200 <EvanR> data constructors act like functions
2023-06-02 18:26:59 +0200 <EvanR> :t Just
2023-06-02 18:27:00 +0200 <lambdabot> a -> Maybe a
2023-06-02 18:27:04 +0200 <tomsmeding> Las[m]1: https://ircbrowse.tomsmeding.com/day/lchaskell/2023/05/31?id=974770#trid974770
2023-06-02 18:27:52 +0200 <EvanR> request a reading of the minutes
2023-06-02 18:27:57 +0200 <tomsmeding> Inst: how large are the factorials that you're computing
2023-06-02 18:28:55 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 18:29:06 +0200 <chromoblob> it's like free something
2023-06-02 18:29:20 +0200 <chromoblob> which you can "interpret"
2023-06-02 18:30:18 +0200 <EvanR> free category (given a set of morphisms, or something)
2023-06-02 18:31:23 +0200 <EvanR> a free monoid with types
2023-06-02 18:32:13 +0200 <ncf> some morphisms are like data constructors (for example colimiting cocones, or universal morphisms into a limit), some are more like eliminators, some have nothing in particular to do with datatypes
2023-06-02 18:32:43 +0200_ht(~Thunderbi@28-52-174-82.ftth.glasoperator.nl)
2023-06-02 18:34:04 +0200acidjnk(~acidjnk@p200300d6e7072f784588bfb78dd6f620.dip0.t-ipconnect.de)
2023-06-02 18:35:32 +0200 <mauke> https://mastodon.online/@octonion888/110475127649874191
2023-06-02 18:37:00 +0200 <EvanR> chromoblob, ah you were introducing an artificial distinction in any category between id, composition of morphisms, and "primitives". A counter example is a category where composition of two morphisms "computes" to some pre-existing morphism that was already there, it's not left "uninterpreted"
2023-06-02 18:37:51 +0200 <EvanR> the classic category with 3 objects, and 3 non-id morphisms x : A->B, y : B->C, and z : C->A
2023-06-02 18:38:23 +0200 <EvanR> which is about as complex a category as I'm able to grasp
2023-06-02 18:39:28 +0200 <EvanR> and I messed that up nonetheless
2023-06-02 18:40:10 +0200 <EvanR> since I didn't list y . x
2023-06-02 18:40:31 +0200 <chromoblob> what i wanted to say is
2023-06-02 18:40:37 +0200ddellacosta(~ddellacos@143.244.47.100) (Ping timeout: 240 seconds)
2023-06-02 18:40:52 +0200 <chromoblob> any morphism is like a "value with hole"
2023-06-02 18:41:20 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 18:41:28 +0200 <EvanR> is this like the monad tutorial analogies
2023-06-02 18:41:42 +0200ddellacosta(~ddellacos@143.244.47.100)
2023-06-02 18:42:10 +0200 <chromoblob> totally
2023-06-02 18:42:23 +0200 <EvanR> hard to say what morphisms are like in full generality, as opposed to specific example categories
2023-06-02 18:42:41 +0200 <EvanR> beyond what little there is in the definition of a category
2023-06-02 18:43:42 +0200 <EvanR> uniform interface vs particular concrete implementations
2023-06-02 18:44:09 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 18:44:54 +0200 <chromoblob> is there a notion of fix : (X `morphism` X) -> (X `morphism` X)?
2023-06-02 18:46:41 +0200 <chromoblob> "left fix" and "right fix"
2023-06-02 18:48:20 +0200 <EvanR> wouldn't fix look more like (X -> X) -> X
2023-06-02 18:48:44 +0200 <EvanR> give or take different kind of arrows
2023-06-02 18:49:20 +0200 <bionade24> What is the better way to write maybe "" id (maybeRes input) `elem` list ?
2023-06-02 18:49:37 +0200 <EvanR> :t fromMaybe
2023-06-02 18:49:38 +0200 <lambdabot> a -> Maybe a -> a
2023-06-02 18:49:54 +0200 <EvanR> @src fromMaybe
2023-06-02 18:49:54 +0200 <lambdabot> fromMaybe d Nothing = d
2023-06-02 18:49:54 +0200 <lambdabot> fromMaybe _ (Just v) = v
2023-06-02 18:50:03 +0200 <EvanR> well that is not what I wanted it to show
2023-06-02 18:50:08 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 18:50:14 +0200 <bionade24> thx
2023-06-02 18:50:22 +0200 <EvanR> = maybe d id
2023-06-02 18:53:58 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 18:55:43 +0200user____1(~user@dynamic-046-114-179-129.46.114.pool.telefonica.de)
2023-06-02 18:57:03 +0200tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net)
2023-06-02 18:58:07 +0200econo(uid147250@user/econo)
2023-06-02 19:01:20 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 19:01:42 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:ac1f:c72a:d1cd:9ce8)
2023-06-02 19:02:07 +0200ddellacosta(~ddellacos@143.244.47.100) (Ping timeout: 240 seconds)
2023-06-02 19:04:18 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 19:09:02 +0200ddellacosta(~ddellacos@146.70.165.100)
2023-06-02 19:11:17 +0200coot(~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot)
2023-06-02 19:11:35 +0200__monty__(~toonn@user/toonn)
2023-06-02 19:14:11 +0200ddellacosta(~ddellacos@146.70.165.100) (Ping timeout: 268 seconds)
2023-06-02 19:15:20 +0200ddellacosta(~ddellacos@143.244.47.72)
2023-06-02 19:19:35 +0200reach(~reach@cpe30b7d4bc76e3-cm30b7d4bc76e0.cpe.net.cable.rogers.com)
2023-06-02 19:23:15 +0200califax(~califax@user/califx) (Remote host closed the connection)
2023-06-02 19:23:45 +0200captnemo(~captnemo@193.32.127.239) (Quit: WeeChat 3.8)
2023-06-02 19:27:37 +0200ddellacosta(~ddellacos@143.244.47.72) (Ping timeout: 240 seconds)
2023-06-02 19:29:39 +0200ddellacosta(~ddellacos@146.70.168.10)
2023-06-02 19:31:20 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 19:31:44 +0200reach(~reach@cpe30b7d4bc76e3-cm30b7d4bc76e0.cpe.net.cable.rogers.com) (Ping timeout: 248 seconds)
2023-06-02 19:34:14 +0200califax(~califax@user/califx)
2023-06-02 19:35:11 +0200Kuttenbrunzer(~Kuttenbru@2a02:8108:8b80:1d48::8c4c) (Quit: Where is it)
2023-06-02 19:37:00 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 19:39:01 +0200 <hellwolf[m]> `Just [1] <> Nothing = Just [1]` <-- what would be the most succinct answer to why it is so instead of expecting Nothing should short circuit it?
2023-06-02 19:40:03 +0200 <geekosaur> the Maybe Monoid takes the first/leftmost `Just`?
2023-06-02 19:40:42 +0200 <[Leary]> `instance Semigroup a => Monoid (Maybe a)` pretty much says it all.
2023-06-02 19:40:54 +0200 <glguy> hellwolf[m]: Nothing is the identity element of the Monoid instance
2023-06-02 19:41:03 +0200 <glguy> It needs to be the case that Nothing <> x = x and x <> Nothing = x
2023-06-02 19:41:14 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b)
2023-06-02 19:41:19 +0200 <[Leary]> The `Monoid` instance for `Maybe` is that derived by extending a `Semigroup` with an identity.
2023-06-02 19:41:52 +0200ddellacosta(~ddellacos@146.70.168.10) (Ping timeout: 248 seconds)
2023-06-02 19:42:08 +0200 <geekosaur> oh, I'm thinking `Alternative`
2023-06-02 19:43:31 +0200 <hellwolf[m]> > It needs to be the case that Nothing <> x = x and x <> Nothing = x
2023-06-02 19:43:31 +0200 <hellwolf[m]> Right, yes, the unital law for the monoids
2023-06-02 19:43:33 +0200 <lambdabot> <hint>:1:44: error: parse error on input ‘=’
2023-06-02 19:43:37 +0200 <hellwolf[m]> makes sense
2023-06-02 19:43:48 +0200 <EvanR> curious, every monoid is a semigroup. You can append a new element to any semigroup to get a monoid. And there is a theorem that says for any monoid, the identity element is unique xD
2023-06-02 19:43:58 +0200ddellacosta(~ddellacos@146.70.165.162)
2023-06-02 19:44:02 +0200 <EvanR> so what happens if you append a new identity element to a monoid
2023-06-02 19:44:40 +0200 <EvanR> a rift opens in spacetime collapsing anyone around who tries
2023-06-02 19:45:07 +0200 <ncf> then the old identity element is not the identity element any more
2023-06-02 19:45:08 +0200 <geekosaur> I think the only possible identity element that could be added while obeying the laws is the one it already has
2023-06-02 19:45:35 +0200 <ncf> if m is a monoid, Maybe m is a new monoid with Nothing as the identity element (not Just mempty)
2023-06-02 19:45:44 +0200 <glguy> The old operation isn't defined to work on the new, larger set
2023-06-02 19:45:52 +0200 <geekosaur> or that, yes, if there's more than one way to be a monoid then picking a new identity renders the existing one not an identity any more
2023-06-02 19:45:54 +0200 <hellwolf[m]> the thing is, Either doesn't provide what I needed since Right [1] <> Right [2] = Right [1
2023-06-02 19:45:58 +0200 <hellwolf[m]> blah...
2023-06-02 19:46:19 +0200 <glguy> hellwolf[m]: just write the function you need and don't worry about reusing the arbitrary choice made in one of those classes?
2023-06-02 19:46:22 +0200 <ncf> (you could say that Maybe is the free-monoid-on-a-semigroup monad)
2023-06-02 19:46:44 +0200 <hellwolf[m]> sure, ad-hoc thing I can always do
2023-06-02 19:47:31 +0200 <EvanR> do you want the First or Last monoid
2023-06-02 19:47:42 +0200 <EvanR> :t First
2023-06-02 19:47:43 +0200 <lambdabot> Maybe a -> First a
2023-06-02 19:47:50 +0200 <geekosaur> I think maybe they wanted it to combine?
2023-06-02 19:48:01 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b) (Ping timeout: 240 seconds)
2023-06-02 19:48:07 +0200ddellacosta(~ddellacos@146.70.165.162) (Ping timeout: 240 seconds)
2023-06-02 19:48:08 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 19:49:09 +0200hellwolf[m]sent a code block: https://libera.ems.host/_matrix/media/v3/download/libera.chat/b8c6b2f4d8be080606f386441694fce6209b…
2023-06-02 19:49:37 +0200 <hellwolf[m]> a bit ugly and noisy, but couldn't find a out of box single type to achieve it
2023-06-02 19:49:54 +0200 <EvanR> what is the behavior you want actually
2023-06-02 19:50:00 +0200nate2(~nate@98.45.169.16)
2023-06-02 19:50:24 +0200 <Inst> tomsmeding: it's more the point that fac and fib aren't good introductions to recursion because at least for fib, you'll never want to use that algorithm because matrix / binet is substantially faster
2023-06-02 19:50:38 +0200 <Inst> fac is more complicated to replace, you need a prime generator and primeswing to do the job
2023-06-02 19:50:47 +0200 <Inst> that's what's underneath gmp, and by extension, hgmp
2023-06-02 19:50:59 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 19:50:59 +0200 <hellwolf[m]> similar to `Maybe [x] <> Nothing = Nothing`, so that I can use Nothing to shortcircuit everything
2023-06-02 19:51:11 +0200 <Inst> the problem is, i don't know how to do a good prime generator for haskell, and that's actually a key problem on Debian benchmarks
2023-06-02 19:51:58 +0200hellwolf[m]sent a code block: https://libera.ems.host/_matrix/media/v3/download/libera.chat/653417b4e2cf872d2ec3f900c614772f48ef…
2023-06-02 19:52:09 +0200 <EvanR> ok Nothing Nothinging out everything is the Monad instance
2023-06-02 19:52:09 +0200 <hellwolf[m]> but what I actually want is a parsing failure.
2023-06-02 19:52:13 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b)
2023-06-02 19:52:33 +0200 <EvanR> > Just [1] >> Just [2] >> Nothing
2023-06-02 19:52:35 +0200 <lambdabot> Nothing
2023-06-02 19:52:50 +0200 <tomsmeding> Inst: is there an actual application where using a different algorithm than the naive one for factorial actually improves performance
2023-06-02 19:53:14 +0200 <Inst> i'd imagine, combinatronics?
2023-06-02 19:53:19 +0200 <EvanR> if you want a parser that's another story
2023-06-02 19:53:24 +0200 <tomsmeding> sure, the naive algorithm is quadratic in the result size and you can probably do better, but I mean, we're talking quadratic in the number of digits in the result
2023-06-02 19:53:29 +0200user____1(~user@dynamic-046-114-179-129.46.114.pool.telefonica.de) (Read error: Connection reset by peer)
2023-06-02 19:53:35 +0200 <Inst> but as others have said, you can just memoize, and honestly, there's only 20 factorials within int64
2023-06-02 19:53:39 +0200 <tomsmeding> for that to become expensive the number needs to get ridiculously large
2023-06-02 19:53:40 +0200 <tomsmeding> that
2023-06-02 19:54:08 +0200 <tomsmeding> I mean it's not like you need fib for an actual application any more than you need factorial
2023-06-02 19:54:11 +0200 <dolio> What does any of that have to do with, "intro to recursion," too?
2023-06-02 19:54:23 +0200 <tomsmeding> but at least for fib the faster algorithms are actually simple :p
2023-06-02 19:54:32 +0200 <tomsmeding> so it works as an intro to neat numerical tricks
2023-06-02 19:54:41 +0200 <tomsmeding> and closed form formulae
2023-06-02 19:54:52 +0200 <Inst> literally a one liner in Julia (Matrix solution), takes a while to build up the appropriate infrastructure in Haskell
2023-06-02 19:54:53 +0200nate2(~nate@98.45.169.16) (Ping timeout: 250 seconds)
2023-06-02 19:56:50 +0200 <Inst> i guess the only real interest of fast factorial would be the prime generator
2023-06-02 19:56:51 +0200bratwurst(~dfadsva@2604:3d09:207f:f650::38e4)
2023-06-02 19:58:54 +0200 <Inst> actually, debian benchmarks doesn't have primes
2023-06-02 19:59:24 +0200 <[Leary]> > Ap (Right [1]) <> Ap (Left "failure") -- hellwolf[m]
2023-06-02 19:59:26 +0200 <lambdabot> Ap {getAp = Left "failure"}
2023-06-02 20:01:42 +0200 <EvanR> the associated press monoid
2023-06-02 20:04:14 +0200user____1(~user@dynamic-046-114-179-129.46.114.pool.telefonica.de)
2023-06-02 20:05:33 +0200Tuplanolla(~Tuplanoll@91-159-68-236.elisa-laajakaista.fi)
2023-06-02 20:11:51 +0200 <Profpatsch> I’m going a bit crazy; I need to construct a schema, which is essentially a rose tree, but with the difference that my leaves should be a different type than the elements at the branches
2023-06-02 20:12:53 +0200 <Profpatsch> Is there anything isomorphic to it that already exists and has all the instances, or do I have to write a type out manually and implement stuff
2023-06-02 20:13:20 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 20:14:09 +0200 <Profpatsch> In particular, Cofree (Map Text) a is very close and has `unfold` and `shoots` and `leaves` already, and I guess I could make a `Either BranchType LeafType` and just live with the overapproximation and be done with it
2023-06-02 20:15:16 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b) (Ping timeout: 250 seconds)
2023-06-02 20:16:10 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b)
2023-06-02 20:17:03 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 20:17:04 +0200 <probie> type RoseTree leaf branch = Fix (Compose (Either leaf) (Compose ((,) branch) NonEmpty))
2023-06-02 20:18:25 +0200pavonia(~user@user/siracusa)
2023-06-02 20:18:25 +0200vandita(~vandit@92-249-179-12.pool.digikabel.hu) (Ping timeout: 265 seconds)
2023-06-02 20:18:52 +0200 <Profpatsch> via Fix? huh
2023-06-02 20:19:49 +0200vandita(~vandit@178-164-188-13.pool.digikabel.hu)
2023-06-02 20:20:51 +0200 <probie> I wasn't serious. The Fix is just so I can define a recursive type with `type` instead of `data`. It's just `data RoseTree leaf branch = Leaf leaf | Branch branch (NonEmpty (RoseTree leaf branch))`
2023-06-02 20:21:21 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:ac1f:c72a:d1cd:9ce8) (Remote host closed the connection)
2023-06-02 20:21:40 +0200 <probie> although I gut the impression what you actually want is something like `data RoseTree leaf branch = Leaf leaf | Branch branch (Map Text (RoseTree leaf branch))`
2023-06-02 20:21:44 +0200 <EvanR> I'm curious how any operations on a normal tree carry over to that
2023-06-02 20:22:20 +0200 <Profpatsch> probie: yeah, exactly that
2023-06-02 20:22:37 +0200 <Profpatsch> I guess I was hoping I don’t have to implement unfolding
2023-06-02 20:23:27 +0200elevenkb(~elevenkb@2001:470:69fc:105::2:cb89)
2023-06-02 20:23:31 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b) (Ping timeout: 240 seconds)
2023-06-02 20:24:55 +0200ddellacosta(~ddellacos@143.244.47.85)
2023-06-02 20:25:29 +0200 <ncf> Free (Compose (Product branch) (Map k)) leaf
2023-06-02 20:26:35 +0200 <Profpatsch> yeah!
2023-06-02 20:26:41 +0200 <Profpatsch> that’s it I guess …
2023-06-02 20:26:41 +0200 <probie> Is unfolding a pain? `unfold :: (a -> Either leaf (branch, [(Text, a)])) -> a -> RoseTree leaf branch` `unfold f x = case f x of { Left l -> Leaf l; Right (b, cs) -> Branch b (Map.fromList (map (fmap (unfold f)) cs)) }`
2023-06-02 20:27:00 +0200 <Profpatsch> probie: that looks like pain to me on a Friday evening :)
2023-06-02 20:27:37 +0200boukenshaou(~Boukensha@223.178.84.62) (Ping timeout: 240 seconds)
2023-06-02 20:28:26 +0200 <probie> luckily for me it's early Saturday morning, so it's not a pain :p
2023-06-02 20:29:15 +0200 <ncf> (er, (,), not Product)
2023-06-02 20:31:10 +0200eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net)
2023-06-02 20:31:28 +0200jero98772(~jero98772@2800:484:1d7f:5d36::2) (Ping timeout: 265 seconds)
2023-06-02 20:32:00 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b)
2023-06-02 20:32:08 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 20:35:01 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 20:35:22 +0200 <hellwolf[m]> I pushed list support now to: https://github.com/hellwolf/haskell-examples/blob/master/2023-06-02-type-level-hlist/type-level-hl… (full message at <https://libera.ems.host/_matrix/media/v3/download/libera.chat/e40c9fa6b8aed403399d269576769dbaa29c…>)
2023-06-02 20:42:05 +0200tom__(~tom@host81-151-255-71.range81-151.btcentralplus.com)
2023-06-02 20:42:12 +0200 <Profpatsch> hellwolf[m]: cute, but is there any benefit over putting the parsers on the value level?
2023-06-02 20:44:21 +0200tom_(~tom@2a00:23c8:970c:4801:5b6a:e81b:79dc:f684) (Read error: Connection reset by peer)
2023-06-02 20:44:40 +0200jero98772(~jero98772@2800:484:1d7f:5d36::2)
2023-06-02 20:46:08 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 20:47:17 +0200 <EvanR> if you want DOOM at the type level, you need to be able to parse wads at the type level
2023-06-02 20:48:25 +0200gmg(~user@user/gehmehgeh)
2023-06-02 20:48:58 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 20:50:39 +0200 <hellwolf[m]> Profpatsch: I have a project that implements an embedded language inside haskell (the linear haskell subset fwiw) to be compiled to some target virtual machine.... (full message at <https://libera.ems.host/_matrix/media/v3/download/libera.chat/775a37a7d1cfd97c9356416dfee749b29488…>)
2023-06-02 20:51:21 +0200 <hellwolf[m]> Though in fairness, maybe lisp Syntax is more convenient and simplistic, but nothing beats Haskell yet in its type level power and maturity.
2023-06-02 20:53:29 +0200ub(~Thunderbi@p200300ecdf000231989ddbac7bf03687.dip0.t-ipconnect.de)
2023-06-02 20:54:07 +0200ubert(~Thunderbi@p548c91e0.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2023-06-02 20:54:07 +0200ububert
2023-06-02 20:54:08 +0200califax(~califax@user/califx) (Ping timeout: 240 seconds)
2023-06-02 20:54:22 +0200califax(~califax@user/califx)
2023-06-02 20:54:41 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b) (Ping timeout: 250 seconds)
2023-06-02 20:55:19 +0200gmg(~user@user/gehmehgeh) (Remote host closed the connection)
2023-06-02 20:56:02 +0200gmg(~user@user/gehmehgeh)
2023-06-02 20:56:42 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b)
2023-06-02 20:58:01 +0200bgs(~bgs@212-85-160-171.dynamic.telemach.net)
2023-06-02 21:01:33 +0200chele(~chele@user/chele) (Remote host closed the connection)
2023-06-02 21:07:26 +0200xstillxstill__
2023-06-02 21:07:51 +0200xstill__xstill_
2023-06-02 21:08:36 +0200dsrt^(~dsrt@c-71-204-38-59.hsd1.ga.comcast.net)
2023-06-02 21:10:34 +0200boukenshaou(~Boukensha@223.178.84.62)
2023-06-02 21:12:56 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 21:13:09 +0200bgs(~bgs@212-85-160-171.dynamic.telemach.net) (Remote host closed the connection)
2023-06-02 21:16:28 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b) (Ping timeout: 240 seconds)
2023-06-02 21:17:21 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 21:17:32 +0200taupiqueur(~taupiqueu@2a02-842a-8180-4601-710f-b3ed-443f-ba6d.rev.sfr.net) (Quit: WeeChat 3.8)
2023-06-02 21:18:20 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b)
2023-06-02 21:23:29 +0200alexherbo2(~alexherbo@2a02-842a-8180-4601-710f-b3ed-443f-ba6d.rev.sfr.net) (Remote host closed the connection)
2023-06-02 21:23:44 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b) (Ping timeout: 248 seconds)
2023-06-02 21:25:44 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 21:28:06 +0200 <Profpatsch> EvanR: ah, silly me :)
2023-06-02 21:28:55 +0200 <Profpatsch> hellwolf[m]: yeah, but the powerful part about Haskell is the value level programming, not the type level programming :)
2023-06-02 21:29:47 +0200 <Profpatsch> EvanR: Now I’m kinda waiting for a hack that implements a doom VM and makes it interactable during GHC compilation time somehow, on the terminal
2023-06-02 21:30:48 +0200 <EvanR> giving a new meaning to "you can shoot yourself in the foot with this language"
2023-06-02 21:31:51 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:4b78:9816:bb59:ebf)
2023-06-02 21:33:17 +0200 <probie> You could probably write a typechecker plugin that can turn constraints to solve into some kind of UI
2023-06-02 21:34:41 +0200taupiqueur(~taupiqueu@2a02-842a-8180-4601-9121-a036-575e-bd7e.rev.sfr.net)
2023-06-02 21:34:57 +0200euandreh(~Thunderbi@189.6.18.7)
2023-06-02 21:35:28 +0200 <probie> Doom is pushing it, but maybe something like zork?
2023-06-02 21:35:44 +0200 <probie> and if you don't win, your code doesn't compile
2023-06-02 21:36:21 +0200alexherbo2(~alexherbo@2a02-842a-8180-4601-9121-a036-575e-bd7e.rev.sfr.net)
2023-06-02 21:36:50 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 21:39:14 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b)
2023-06-02 21:40:20 +0200 <MangoIV[m]> <Profpatsch> "I guess I was hoping I don’t..." <- use a base functor, Fix it then use `unfoldFix`
2023-06-02 21:40:36 +0200 <MangoIV[m]> (or ana, if you want to be fancy)
2023-06-02 21:40:37 +0200jero98772(~jero98772@2800:484:1d7f:5d36::2) (Ping timeout: 250 seconds)
2023-06-02 21:40:43 +0200 <probie> e.g. you have an output constraint of what to say to the user, and you also have an input constraint. Given a constraint `(Output "some string", Input context a)`, the type checker plugin prints `"some string"`, waits for input (let's say the user responds `"some input"`) and then returns `Input context "user input"` to GHC
2023-06-02 21:41:21 +0200 <probie> s/user input/some input/
2023-06-02 21:42:32 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 21:43:26 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 21:45:17 +0200 <cheater> hello
2023-06-02 21:45:39 +0200 <cheater> i wish haskell had a fnord-like word.
2023-06-02 21:46:22 +0200 <EvanR> mu?
2023-06-02 21:46:29 +0200 <Rembane> nu?
2023-06-02 21:46:34 +0200 <cheater> hu?
2023-06-02 21:47:02 +0200califax(~califax@user/califx) (Remote host closed the connection)
2023-06-02 21:47:51 +0200Inst_(~Inst@c-98-208-218-119.hsd1.fl.comcast.net)
2023-06-02 21:48:05 +0200Inst(~Inst@2601:6c4:4081:2fc0:dc31:eeab:3120:a68f) (Ping timeout: 246 seconds)
2023-06-02 21:48:29 +0200califax(~califax@user/califx)
2023-06-02 21:48:47 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b) (Ping timeout: 246 seconds)
2023-06-02 21:52:42 +0200jero98772(~jero98772@2800:484:1d7f:5d36::2)
2023-06-02 21:54:31 +0200euandreh(~Thunderbi@189.6.18.7) (Quit: euandreh)
2023-06-02 21:54:50 +0200euandreh(~Thunderbi@189.6.18.7)
2023-06-02 21:57:36 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 268 seconds)
2023-06-02 21:57:59 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2023-06-02 22:03:08 +0200Pickchea(~private@user/pickchea)
2023-06-02 22:03:12 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b)
2023-06-02 22:03:44 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 22:04:54 +0200bratwurst(~dfadsva@2604:3d09:207f:f650::38e4) (Ping timeout: 250 seconds)
2023-06-02 22:06:54 +0200euandreh(~Thunderbi@189.6.18.7) (Quit: euandreh)
2023-06-02 22:07:04 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 22:07:10 +0200gehmehgeh(~user@user/gehmehgeh)
2023-06-02 22:07:13 +0200euandreh(~Thunderbi@189.6.18.7)
2023-06-02 22:07:20 +0200gmg(~user@user/gehmehgeh) (Ping timeout: 240 seconds)
2023-06-02 22:07:43 +0200sllk(~sllk@user/sllk)
2023-06-02 22:16:57 +0200stef204(~stef204@user/stef204) (Quit: WeeChat 3.8)
2023-06-02 22:18:56 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 22:19:27 +0200use-value(~Thunderbi@2a00:23c6:8a03:2f01:adf5:88c1:b508:38b3) (Remote host closed the connection)
2023-06-02 22:26:38 +0200_ht(~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Quit: _ht)
2023-06-02 22:28:36 +0200ezzieyguywuf(~Unknown@user/ezzieyguywuf) (Remote host closed the connection)
2023-06-02 22:30:13 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 22:34:56 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 22:37:53 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 22:43:09 +0200user____1(~user@dynamic-046-114-179-129.46.114.pool.telefonica.de) (Read error: Connection reset by peer)
2023-06-02 22:48:08 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 22:49:24 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 22:51:08 +0200jero98772(~jero98772@2800:484:1d7f:5d36::2) (Ping timeout: 240 seconds)
2023-06-02 22:54:21 +0200barcisz(~barcisz@83.6.194.51.ipv4.supernova.orange.pl)
2023-06-02 22:55:01 +0200motherfsck(~motherfsc@user/motherfsck)
2023-06-02 23:00:03 +0200gehmehgehgmg
2023-06-02 23:00:36 +0200ub(~Thunderbi@p200300ecdf0002351300242c44b15f80.dip0.t-ipconnect.de)
2023-06-02 23:01:20 +0200ubert(~Thunderbi@p200300ecdf000231989ddbac7bf03687.dip0.t-ipconnect.de) (Ping timeout: 248 seconds)
2023-06-02 23:01:20 +0200ububert
2023-06-02 23:04:23 +0200jero98772(~jero98772@2800:484:1d7f:5d36::2)
2023-06-02 23:09:09 +0200gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8)
2023-06-02 23:09:45 +0200mncheckm(~mncheck@193.224.205.254) (Ping timeout: 268 seconds)
2023-06-02 23:10:46 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b) (Ping timeout: 250 seconds)
2023-06-02 23:12:13 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b)
2023-06-02 23:12:53 +0200trev(~trev@user/trev) (Quit: trev)
2023-06-02 23:12:56 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 23:13:23 +0200jonathan_(~jonathan@193.234.101.122)
2023-06-02 23:16:36 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 23:18:59 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:4b78:9816:bb59:ebf) (Ping timeout: 250 seconds)
2023-06-02 23:22:53 +0200jonathan_(~jonathan@193.234.101.122) (Ping timeout: 250 seconds)
2023-06-02 23:22:56 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 23:25:50 +0200takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2023-06-02 23:26:19 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 23:30:15 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b) (Ping timeout: 250 seconds)
2023-06-02 23:31:32 +0200coot(~coot@89-69-206-216.dynamic.chello.pl)
2023-06-02 23:32:08 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 23:33:51 +0200tcard_(~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303) (Quit: Leaving)
2023-06-02 23:35:40 +0200tcard(~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303)
2023-06-02 23:35:42 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 23:39:25 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b)
2023-06-02 23:46:56 +0200ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds)
2023-06-02 23:47:26 +0200cheater_(~Username@user/cheater)
2023-06-02 23:49:28 +0200cheater(~Username@user/cheater) (Ping timeout: 240 seconds)
2023-06-02 23:49:31 +0200cheater_cheater
2023-06-02 23:50:33 +0200ec_(~ec@gateway/tor-sasl/ec)
2023-06-02 23:51:33 +0200nate2(~nate@98.45.169.16)
2023-06-02 23:52:02 +0200foul_owl(~kerry@71.212.137.212) (Quit: WeeChat 2.3)
2023-06-02 23:54:05 +0200barcisz(~barcisz@83.6.194.51.ipv4.supernova.orange.pl) (Quit: Connection closed)
2023-06-02 23:56:37 +0200nate2(~nate@98.45.169.16) (Ping timeout: 268 seconds)
2023-06-02 23:57:52 +0200reach(~reach@2607:fea8:4c0:990:f891:b512:3659:bf1b) (Ping timeout: 248 seconds)