Logs: freenode/#haskell
| 2021-03-11 17:20:08 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds) |
| 2021-03-11 17:20:30 | → | xff0x_ joins (~xff0x@2001:1a81:53d2:5300:e04c:47fc:a26:1d1) |
| 2021-03-11 17:21:59 | → | tomboy64 joins (~tomboy64@unaffiliated/tomboy64) |
| 2021-03-11 17:22:18 | → | APugNamedPugsley joins (~13052@2601:58a:8300:f6a0:70c9:fc3c:b74d:902d) |
| 2021-03-11 17:22:39 | → | gienah joins (~mwright@gentoo/developer/gienah) |
| 2021-03-11 17:22:47 | → | tromp joins (~tromp@dhcp-077-249-230-040.chello.nl) |
| 2021-03-11 17:24:33 | → | pavonia joins (~user@unaffiliated/siracusa) |
| 2021-03-11 17:25:30 | × | gienah_ quits (~mwright@119-18-2-241.771202.syd.nbn.aussiebb.net) (Ping timeout: 246 seconds) |
| 2021-03-11 17:30:00 | × | CaptainIRS quits (9d31e24f@157.49.226.79) (Quit: Connection closed) |
| 2021-03-11 17:32:04 | <geekosaur> | ghcup can install precompiled binaries, yes |
| 2021-03-11 17:33:17 | → | usr25 joins (~usr25@unaffiliated/usr25) |
| 2021-03-11 17:33:56 | <maerwald> | or compile uncompiled binaries and install them |
| 2021-03-11 17:34:12 | → | dbmikus joins (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) |
| 2021-03-11 17:34:16 | → | electricityZZZZ joins (~electrici@108-216-157-17.lightspeed.sntcca.sbcglobal.net) |
| 2021-03-11 17:34:36 | × | jneira quits (5127adbf@gateway/web/cgi-irc/kiwiirc.com/ip.81.39.173.191) (Ping timeout: 246 seconds) |
| 2021-03-11 17:37:33 | → | gienah_ joins (~mwright@119-18-2-23.771202.syd.nbn.aussiebb.net) |
| 2021-03-11 17:40:32 | × | son0p quits (~son0p@181.136.122.143) (Quit: Lost terminal) |
| 2021-03-11 17:40:33 | × | gienah quits (~mwright@gentoo/developer/gienah) (Ping timeout: 246 seconds) |
| 2021-03-11 17:40:59 | × | Boomerang quits (~Boomerang@2a05:f6c7:2179:0:ccd0:d305:d616:ff16) (Ping timeout: 272 seconds) |
| 2021-03-11 17:41:33 | <Gurkenglas_> | Recall unit_or :: () -> () -> (), which runs both inputs in parallel and returns the first that succeeds. Could one build the following? or :: a -> a -> a, which runs both inputs in parallel and returns the constructor of the first to get to WHNF; then once forced further, both keep running; to the extent that they contradict, the first trumps; the second might overtake the first in the race to get ever more defined. |
| 2021-03-11 17:41:36 | → | st8less joins (~st8less@2603:a060:11fd:0:a7cf:8774:67e6:aff8) |
| 2021-03-11 17:42:18 | → | todda7 joins (~torstein@2a02:587:1b10:ea00:db5:2d40:d00d:cce4) |
| 2021-03-11 17:42:32 | × | zebrag quits (~inkbottle@alagny-551-1-20-55.w83-200.abo.wanadoo.fr) (Quit: Konversation terminated!) |
| 2021-03-11 17:42:53 | → | zebrag joins (~inkbottle@alagny-551-1-20-55.w83-200.abo.wanadoo.fr) |
| 2021-03-11 17:42:55 | → | redmp_ joins (~redmp@172.58.75.6) |
| 2021-03-11 17:43:10 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-03-11 17:43:45 | × | elliott_ quits (~elliott_@pool-108-51-101-42.washdc.fios.verizon.net) (Ping timeout: 264 seconds) |
| 2021-03-11 17:44:10 | <Gurkenglas_> | Left (fix (trace "left")) `or` Right (fix (trace "right")), evaluated fully, would trace either lots of "left" or lots of "right", because the runner-up is abandoned once it's clear that he has chosen another constructor |
| 2021-03-11 17:44:32 | <Gurkenglas_> | f `or` g would presumably be \x -> f x `or` g x |
| 2021-03-11 17:45:53 | × | redmp quits (~redmp@172.58.38.165) (Ping timeout: 245 seconds) |
| 2021-03-11 17:46:17 | <Gurkenglas_> | (1,1,fix id) `or` (fix id,0,fix id) could be (1,1,fix id) `or` (1,0,fix id) |
| 2021-03-11 17:47:34 | → | justsomeguy joins (~justsomeg@unaffiliated/--/x-3805311) |
| 2021-03-11 17:48:45 | <geekosaur> | one hopes not, unless it's in IO |
| 2021-03-11 17:49:02 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
| 2021-03-11 17:49:38 | <Gurkenglas_> | (reading domain theory and trying to construct the closest thing we get to the least value more defined than two given values, or the closest thing we can get) |
| 2021-03-11 17:49:48 | × | justsomeguy quits (~justsomeg@unaffiliated/--/x-3805311) (Client Quit) |
| 2021-03-11 17:49:52 | × | Yumasi quits (~guillaume@2a01cb0506313c00e14be01ac4a050f7.ipv6.abo.wanadoo.fr) (Ping timeout: 260 seconds) |
| 2021-03-11 17:50:03 | → | justsomeguy joins (~justsomeg@unaffiliated/--/x-3805311) |
| 2021-03-11 17:50:16 | <Gurkenglas_> | (((scratch last ,-clause ._.))) |
| 2021-03-11 17:51:24 | <Gurkenglas_> | "could be (1,1,fix id) `or` (1,0,fix id)" i meant to write "could be (1,1,fix id) or (1,0,fix id)", but this is surprisingly appropriate |
| 2021-03-11 17:51:28 | × | rajivr quits (uid269651@gateway/web/irccloud.com/x-ruipfsajaahduasm) (Quit: Connection closed for inactivity) |
| 2021-03-11 17:55:27 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:8ce3:ab05:2761:c61a) (Remote host closed the connection) |
| 2021-03-11 17:56:22 | <Gurkenglas_> | (i guess simply erroring out whenever the two arguments don't have a value that's more defined than both is close enough) |
| 2021-03-11 17:56:26 | × | st8less quits (~st8less@2603:a060:11fd:0:a7cf:8774:67e6:aff8) (Ping timeout: 264 seconds) |
| 2021-03-11 17:57:10 | → | st8less joins (~st8less@2603:a060:11fd:0:a7cf:8774:67e6:aff8) |
| 2021-03-11 17:57:31 | <Gurkenglas_> | when implementing this, one would wish that ghc could hand the knowledge that one of the two thunks has returned a constructor to the other thunk, so that it might use the knowledge to finish faster |
| 2021-03-11 17:58:02 | → | cole-h joins (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) |
| 2021-03-11 17:58:45 | × | zebrag quits (~inkbottle@alagny-551-1-20-55.w83-200.abo.wanadoo.fr) (Ping timeout: 246 seconds) |
| 2021-03-11 17:58:48 | × | aqd quits (~aqd@84.20.147.33) (Ping timeout: 245 seconds) |
| 2021-03-11 17:58:53 | → | inkbottle joins (~inkbottle@aaubervilliers-654-1-101-29.w86-212.abo.wanadoo.fr) |
| 2021-03-11 18:01:17 | <Gurkenglas_> | although that would change the behavior... fix (fmap (2:)) `or` (fix id : fix id) would be more defined than either |
| 2021-03-11 18:01:35 | <Gurkenglas_> | wait, thats the wrong term uhh |
| 2021-03-11 18:02:05 | <Gurkenglas_> | fix (fmap (2:)) `or` Just (fix id) <- there, that's what I meant |
| 2021-03-11 18:02:15 | × | dyeplexer quits (~lol@unaffiliated/terpin) (Remote host closed the connection) |
| 2021-03-11 18:05:00 | × | graf_blutwurst quits (~user@2001:171b:226e:adc0:81da:cf62:15f1:d8b5) (Remote host closed the connection) |
| 2021-03-11 18:09:15 | → | lewky_ joins (~lewky@159.65.37.240) |
| 2021-03-11 18:10:15 | × | kuribas quits (~user@ip-188-118-57-242.reverse.destiny.be) (Remote host closed the connection) |
| 2021-03-11 18:12:01 | × | lewky_ quits (~lewky@159.65.37.240) (Client Quit) |
| 2021-03-11 18:13:14 | → | Pickchea joins (~private@unaffiliated/pickchea) |
| 2021-03-11 18:13:51 | <Gurkenglas_> | i suppose if or were implemented, it's thinkable that ghc might apply this knowledge: If the x thunk in "let x = fmap (2:) x in x" is the same thunk as the return thunk in `or`, then at some point the "Just (fix id)" could put Just at the front of x, after which point whatever fmaps have accumulated can resolve. hmm, not really optimally fast, but combined two looping programs into a colooping one :) |
| 2021-03-11 18:15:10 | <Gurkenglas_> | All hell breaks loose though if the assumption is broken that the two values have a value that's more defined than both - fix (2:) `or` fix (1:) could come out 1:1:2:1:2:2:1:... :D |
| 2021-03-11 18:17:41 | → | Mrbuck joins (~Mrbuck@gateway/tor-sasl/mrbuck) |
| 2021-03-11 18:18:10 | Gurkenglas_ | .oO(so huh, this optimization gives me just some value more defined than both instead of the least one. I've been wondering why in this domain theory book, directed sets only require some upper bound rather than the least one.) |
| 2021-03-11 18:18:55 | → | aarvar joins (~foewfoiew@2601:602:a080:fa0:f5c0:50eb:5dcd:a8d4) |
| 2021-03-11 18:18:59 | <ski> | Gurkenglas_ : is that like `unamb' ? |
| 2021-03-11 18:19:36 | <monochrom> | Domain theory books try to require the minimum required to explain most existing programming languages. |
| 2021-03-11 18:19:45 | × | justsomeguy quits (~justsomeg@unaffiliated/--/x-3805311) (Ping timeout: 264 seconds) |
| 2021-03-11 18:20:16 | <monochrom> | Err, misread. |
| 2021-03-11 18:20:23 | <Gurkenglas_> | monochrom, i read some of the first chapter and ran off trying to invent the math myself :P |
| 2021-03-11 18:20:33 | <ski> | @hackage unamb |
| 2021-03-11 18:20:33 | <lambdabot> | https://hackage.haskell.org/package/unamb |
| 2021-03-11 18:20:38 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-03-11 18:20:45 | <Gurkenglas_> | ski, nice! better yet according to unamb, https://hackage.haskell.org/package/lub |
| 2021-03-11 18:21:56 | <ski> | @hackage lvish |
| 2021-03-11 18:21:56 | <lambdabot> | https://hackage.haskell.org/package/lvish |
| 2021-03-11 18:22:06 | <monochrom> | Actually what I said applies, despite a misread. |
| 2021-03-11 18:22:16 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 2021-03-11 18:23:27 | → | frozenErebus joins (~frozenEre@94.128.82.20) |
| 2021-03-11 18:23:56 | <Gurkenglas_> | monochrom, well yea, the book might as well apply its own theory :3 |
| 2021-03-11 18:24:12 | → | gitgoood joins (~gitgood@82-132-217-138.dab.02.net) |
| 2021-03-11 18:25:29 | × | myShoggoth quits (~myShoggot@75.164.81.55) (Ping timeout: 245 seconds) |
| 2021-03-11 18:25:54 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
| 2021-03-11 18:26:39 | × | rond_ quits (594020c5@89-64-32-197.dynamic.chello.pl) (Quit: Connection closed) |
| 2021-03-11 18:26:52 | → | myShoggoth joins (~myShoggot@75.164.81.55) |
| 2021-03-11 18:27:02 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Ping timeout: 264 seconds) |
| 2021-03-11 18:27:07 | × | gitgood quits (~gitgood@82-132-218-168.dab.02.net) (Read error: Connection reset by peer) |
| 2021-03-11 18:30:02 | × | st8less quits (~st8less@2603:a060:11fd:0:a7cf:8774:67e6:aff8) (Ping timeout: 264 seconds) |
| 2021-03-11 18:30:53 | × | ukari quits (~ukari@unaffiliated/ukari) (Remote host closed the connection) |
| 2021-03-11 18:31:22 | → | elliott_ joins (~elliott_@pool-108-51-101-42.washdc.fios.verizon.net) |
| 2021-03-11 18:31:23 | → | st8less joins (~st8less@inet-167-224-197-181.isp.ozarksgo.net) |
| 2021-03-11 18:31:59 | → | ukari joins (~ukari@unaffiliated/ukari) |
| 2021-03-11 18:32:31 | × | conal quits (~conal@66.115.157.109) (Quit: Computer has gone to sleep.) |
| 2021-03-11 18:33:15 | → | conal joins (~conal@66.115.157.109) |
| 2021-03-11 18:36:35 | <Gurkenglas_> | yep lub sure looks like it'll combine fix (fmap (2:)) and Just (fix id) into Just (repeat 2), time to test and issue report that his library and all the functions have the wrong name :D |
| 2021-03-11 18:37:21 | × | asheshambasta quits (~user@ptr-e1lysav9wm55yti8rns.18120a2.ip6.access.telenet.be) (Ping timeout: 272 seconds) |
| 2021-03-11 18:39:15 | × | chele quits (~chele@ip5b40237d.dynamic.kabel-deutschland.de) (Remote host closed the connection) |
| 2021-03-11 18:39:20 | × | Mrbuck quits (~Mrbuck@gateway/tor-sasl/mrbuck) (Quit: WeeChat 1.9.1) |
| 2021-03-11 18:40:09 | × | frozenErebus quits (~frozenEre@94.128.82.20) (Ping timeout: 264 seconds) |
| 2021-03-11 18:45:28 | × | Guest49 quits (~textual@host31-51-7-202.range31-51.btcentralplus.com) (Ping timeout: 245 seconds) |
| 2021-03-11 18:46:05 | → | ADG1089__ joins (~aditya@223.226.229.230) |
All times are in UTC.