Logs: freenode/#haskell
| 2021-03-01 17:49:41 | <dolio> | Hahaha. Okay. |
| 2021-03-01 17:50:01 | → | nhs_ joins (~nhs@cpe-70-113-67-118.austin.res.rr.com) |
| 2021-03-01 17:50:31 | → | shutdown_-h_now joins (~arjan@2001:1c06:2d0b:2312:154f:4e40:6da2:bc2f) |
| 2021-03-01 17:50:31 | → | ep1ctetus joins (~epictetus@ip72-194-215-136.sb.sd.cox.net) |
| 2021-03-01 17:50:57 | × | emmanuel_erc quits (~user@rrcs-23-246-116-5.nys.biz.rr.com) (Ping timeout: 264 seconds) |
| 2021-03-01 17:50:58 | <boxscape> | oh no wait, it's arbitrary if *all* candidates are incoherent, otherwise it picks the non-incoherent one |
| 2021-03-01 17:51:16 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 2021-03-01 17:51:19 | <dolio> | Oh, I guess that makes sense. |
| 2021-03-01 17:51:31 | <dolio> | If all but one are incoherent, you pick the 'coherent' one. |
| 2021-03-01 17:51:36 | <boxscape> | right |
| 2021-03-01 17:51:36 | × | nhs quits (~nhs@cpe-70-113-67-118.austin.res.rr.com) (Ping timeout: 240 seconds) |
| 2021-03-01 17:51:56 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-03-01 17:53:17 | → | geekosaur joins (82650c7a@130.101.12.122) |
| 2021-03-01 17:54:08 | <Dysfunctional> | I don't understand Haskell's type system when it comes to type classes. I just imagine there's some kind of compiler machinery that choses an instance and then... what does it mean if a type class is incoherent? |
| 2021-03-01 17:56:11 | <sclv> | incoherent is virtually never what you want |
| 2021-03-01 17:56:20 | <Dysfunctional> | I mean, overlapping is like: Make a choice, where the priority is: overlappable < overlaps < overlapping (has the highest priority). Incoherent? "Use me as a last resort?" |
| 2021-03-01 17:56:22 | <sclv> | it means what the discussion above said -- just give up |
| 2021-03-01 17:56:34 | <sclv> | i've never found a case where i wanted it |
| 2021-03-01 17:56:35 | <dolio> | Incoherent means that arbitrary decisions are made, rather than there being a canonical choice. |
| 2021-03-01 17:56:50 | <Dysfunctional> | sounds fun |
| 2021-03-01 17:56:51 | <sclv> | i guess it _only_ makes sense if the different instances all "mean" the same thing |
| 2021-03-01 17:57:04 | <dolio> | In this example, neither `Maybe a` nor `f Bool` are more specific than one another, so it just picks one. |
| 2021-03-01 17:57:07 | <sclv> | i.e. no matter which instance you pick, the code is equivalent |
| 2021-03-01 17:57:19 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds) |
| 2021-03-01 17:57:42 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-03-01 17:57:59 | <sclv> | the better way to try to disambiguate something like the above is fundeps |
| 2021-03-01 17:58:04 | <sclv> | or closed type families |
| 2021-03-01 17:58:11 | → | Pickchea joins (~private@unaffiliated/pickchea) |
| 2021-03-01 17:58:19 | <Dysfunctional> | ok, thanks, tbh never undestood fundeps too |
| 2021-03-01 17:58:27 | <dolio> | Also the explanation of overlapping above is missing things. |
| 2021-03-01 17:59:06 | → | apache8080 joins (~rishi@wsip-70-168-153-252.oc.oc.cox.net) |
| 2021-03-01 17:59:12 | <dolio> | An 'overlapping' instance isn't deemed preferable to an 'overlappable' instance just because they can unify. |
| 2021-03-01 17:59:38 | → | bitmagie joins (~Thunderbi@200116b8061b980088bf1ce130705d54.dip.versatel-1u1.de) |
| 2021-03-01 18:00:29 | → | rj joins (~x@gateway/tor-sasl/rj) |
| 2021-03-01 18:00:35 | <dolio> | Overlappable means that more specific instances don't need to specificaly say 'overlapping'. And 'overlapping' means that it can override a less specific instance that is not declared 'overlappable'. Or something like that. |
| 2021-03-01 18:00:49 | × | vchlup_ quits (~vchlup@nat.brnet.cz) (Ping timeout: 260 seconds) |
| 2021-03-01 18:00:49 | <dolio> | The specificity of the instance heads still matter. |
| 2021-03-01 18:02:22 | × | kritzefitz quits (~kritzefit@fw-front.credativ.com) (Remote host closed the connection) |
| 2021-03-01 18:02:35 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 2021-03-01 18:02:50 | <Dysfunctional> | Ok, thanks. 'Overlaps' is overlap without considertion for the instance head? |
| 2021-03-01 18:03:10 | × | juri_ quits (~juri@178.63.35.222) (Ping timeout: 276 seconds) |
| 2021-03-01 18:03:33 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-03-01 18:03:34 | <dolio> | I don't remember the difference between 'overlaps' and 'overlapping', because I barely ever use this stuff. |
| 2021-03-01 18:03:54 | → | juri_ joins (~juri@79.140.120.239) |
| 2021-03-01 18:03:54 | × | juri_ quits (~juri@79.140.120.239) (Read error: Connection reset by peer) |
| 2021-03-01 18:04:04 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:7853:81e7:49e6:31d8) (Remote host closed the connection) |
| 2021-03-01 18:04:09 | → | vchlup_ joins (~vchlup@nat.brnet.cz) |
| 2021-03-01 18:04:21 | <dolio> | The only thing that's going to ignore the actual specialization order of the instance is 'incoherent' I think. |
| 2021-03-01 18:04:46 | <aarvar> | I think overlaps = overlappable + overlapping, or something like that |
| 2021-03-01 18:05:15 | × | mananamenos quits (~mananamen@193.red-88-11-66.dynamicip.rima-tde.net) (Ping timeout: 240 seconds) |
| 2021-03-01 18:06:35 | × | xff0x quits (~xff0x@2001:1a81:5383:2100:48ad:dc4f:6fad:3ff7) (Ping timeout: 240 seconds) |
| 2021-03-01 18:07:05 | <Dysfunctional> | so for example for a datatype with kind two and a type class that specializes one of the type arguments |
| 2021-03-01 18:07:47 | × | geekosaur quits (82650c7a@130.101.12.122) (Quit: Connection closed) |
| 2021-03-01 18:07:53 | → | xff0x joins (~xff0x@2001:1a81:5383:2100:76a2:26e:424a:1092) |
| 2021-03-01 18:08:37 | × | nbloomf quits (~nbloomf@2600:1700:ad14:3020:4c96:674d:b3c3:8428) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 2021-03-01 18:08:47 | → | geekosaur joins (82650c7a@130.101.12.122) |
| 2021-03-01 18:08:55 | → | juri_ joins (~juri@178.63.35.222) |
| 2021-03-01 18:08:57 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds) |
| 2021-03-01 18:09:03 | × | chisui quits (577bc9b7@i577BC9B7.versanet.de) (Quit: Connection closed) |
| 2021-03-01 18:09:05 | × | banyanRob quits (268ce492@38.140.228.146) (Quit: Connection closed) |
| 2021-03-01 18:09:07 | → | vk3wtf_ joins (~doc@115-64-102-158.tpgi.com.au) |
| 2021-03-01 18:09:19 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-03-01 18:09:56 | → | nbloomf joins (~nbloomf@2600:1700:ad14:3020:4c96:674d:b3c3:8428) |
| 2021-03-01 18:11:56 | × | vk3wtf quits (~doc@203.221.224.44) (Ping timeout: 240 seconds) |
| 2021-03-01 18:12:53 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 2021-03-01 18:13:09 | × | bitmagie quits (~Thunderbi@200116b8061b980088bf1ce130705d54.dip.versatel-1u1.de) (Quit: bitmagie) |
| 2021-03-01 18:13:27 | → | bitmagie joins (~Thunderbi@200116b8061b980088bf1ce130705d54.dip.versatel-1u1.de) |
| 2021-03-01 18:13:51 | <perrier-jouet> | hi all |
| 2021-03-01 18:14:16 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 2021-03-01 18:14:29 | <perrier-jouet> | my /root/.stack folder is it save to delete it ? I am using archlinux |
| 2021-03-01 18:14:46 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Remote host closed the connection) |
| 2021-03-01 18:14:53 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-03-01 18:15:02 | → | mananamenos joins (~mananamen@193.red-88-11-66.dynamicip.rima-tde.net) |
| 2021-03-01 18:15:05 | <geekosaur> | why have you been running stack as root |
| 2021-03-01 18:15:58 | × | bitmagie quits (~Thunderbi@200116b8061b980088bf1ce130705d54.dip.versatel-1u1.de) (Client Quit) |
| 2021-03-01 18:16:13 | <monochrom> | If you vow to never run stack as root again, you can delete it. |
| 2021-03-01 18:16:21 | × | dyeplexer quits (~lol@unaffiliated/terpin) (Remote host closed the connection) |
| 2021-03-01 18:17:07 | <monochrom> | stack is fundamentally a per-user program, "sudo stack" does not mean /usr/local. Whoever runs stack, it always means $HOME. |
| 2021-03-01 18:17:07 | <perrier-jouet> | geekosaur: monochrom sometime installing packages it says you don't have permission so when I do su I guess that's when it created the /root/.stack |
| 2021-03-01 18:18:10 | <geekosaur> | my guess is ypou ran stack as root once and now there are root-owned files in your own .stack and/or .stack-work |
| 2021-03-01 18:19:13 | <geekosaur> | so you'll also need to fix that with sudo chown -R $USER ~/.stack ~/.stack-work |
| 2021-03-01 18:19:14 | × | gehmehgeh quits (~ircuser1@gateway/tor-sasl/gehmehgeh) (Remote host closed the connection) |
| 2021-03-01 18:19:24 | <geekosaur> | and then don't run stack as root any more |
| 2021-03-01 18:19:32 | × | DTZUZU quits (~DTZUZU@205.ip-149-56-132.net) (Read error: Connection reset by peer) |
| 2021-03-01 18:19:46 | × | nbloomf quits (~nbloomf@2600:1700:ad14:3020:4c96:674d:b3c3:8428) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 2021-03-01 18:20:04 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 260 seconds) |
| 2021-03-01 18:20:35 | → | gehmehgeh joins (~ircuser1@gateway/tor-sasl/gehmehgeh) |
| 2021-03-01 18:20:47 | <geekosaur> | just pulling out sudo any time you have a permission problem is a lovely way to destroy your OS install |
| 2021-03-01 18:21:42 | × | rj quits (~x@gateway/tor-sasl/rj) (Ping timeout: 268 seconds) |
| 2021-03-01 18:21:45 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 2021-03-01 18:22:20 | → | son0p joins (~son0p@181.136.122.143) |
| 2021-03-01 18:25:19 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds) |
| 2021-03-01 18:25:55 | × | jonathanx quits (~jonathan@h-176-109.A357.priv.bahnhof.se) (Remote host closed the connection) |
| 2021-03-01 18:26:02 | → | rj joins (~x@gateway/tor-sasl/rj) |
| 2021-03-01 18:26:21 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-03-01 18:28:31 | <Dysfunctional> | what's your opinion on nix? |
| 2021-03-01 18:28:49 | <boxscape> | Dysfunctional dolio OVERLAPS marks an instance as both overlappable and overlapping |
| 2021-03-01 18:29:18 | → | tweek joins (~tweek@2603-6010-b207-6d3b-058f-45fa-65e0-88fa.res6.spectrum.com) |
| 2021-03-01 18:29:29 | <boxscape> | oh aarvar said as much |
| 2021-03-01 18:29:33 | → | Tops2 joins (~Tobias@dyndsl-095-033-090-074.ewe-ip-backbone.de) |
All times are in UTC.