2020/10/07

2020-10-07 00:00:00 +0200 <monochrom> But I should stop.
2020-10-07 00:00:52 +0200albert_99(~Albert@p200300e5ff0b5b39340e476afbaec452.dip0.t-ipconnect.de) (Quit: WeeChat 2.9)
2020-10-07 00:03:45 +0200snakemas1(~snakemast@213.100.206.23)
2020-10-07 00:04:12 +0200worc3131(~quassel@2a02:c7f:c026:9500:7d0b:65d0:38a4:4786)
2020-10-07 00:05:10 +0200Rudd0(~Rudd0@185.189.115.103)
2020-10-07 00:05:26 +0200urdh(~urdh@unaffiliated/urdh) (Ping timeout: 256 seconds)
2020-10-07 00:06:31 +0200urdh(~urdh@unaffiliated/urdh)
2020-10-07 00:08:04 +0200Vq(~vq@90-227-195-41-no77.tbcn.telia.com) (Ping timeout: 246 seconds)
2020-10-07 00:08:25 +0200Stanley00(~stanley00@unaffiliated/stanley00)
2020-10-07 00:09:02 +0200 <orzo> what's the best practice for switching cabal between ghc versions?
2020-10-07 00:09:13 +0200 <orzo> i think i should have an independent dist folder
2020-10-07 00:09:25 +0200 <orzo> but this .freeze thing clearly needs to be duplicated too
2020-10-07 00:09:28 +0200snakemas1(~snakemast@213.100.206.23) (Ping timeout: 272 seconds)
2020-10-07 00:09:41 +0200 <monochrom> If it is a temp or frequent change, without any meaningful default, "-w ghc-9.4"
2020-10-07 00:09:56 +0200Vq(~vq@90-227-195-41-no77.tbcn.telia.com)
2020-10-07 00:10:10 +0200 <orzo> well i have basically 2 versions i would like to test with
2020-10-07 00:10:22 +0200 <orzo> and i don't want to have to rebuild everything when i switch
2020-10-07 00:10:31 +0200 <orzo> assuming it was built before with the other version
2020-10-07 00:11:35 +0200 <orzo> even if cabal has some higene in the dist folder, i'd have more peice of mind separating it so i could nuke one without impacting the other
2020-10-07 00:12:10 +0200 <monochrom> Perhaps the --builddir= option helps you?
2020-10-07 00:13:24 +0200 <orzo> yeah
2020-10-07 00:13:26 +0200Kaeipi(~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection)
2020-10-07 00:13:34 +0200conal(~conal@209.58.130.230) (Quit: Computer has gone to sleep.)
2020-10-07 00:13:36 +0200Stanley00(~stanley00@unaffiliated/stanley00) (Ping timeout: 260 seconds)
2020-10-07 00:13:39 +0200 <orzo> there's probably no equivelent for .freeze though is there?
2020-10-07 00:13:47 +0200Kaeipi(~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net)
2020-10-07 00:14:03 +0200 <orzo> it's not in the builddir but it is strongly associated
2020-10-07 00:14:20 +0200 <orzo> i guess i'll need to manually rename it when i switch
2020-10-07 00:14:25 +0200alp(~alp@2a01:e0a:58b:4920:11c4:1b60:3a4e:bcb2) (Ping timeout: 272 seconds)
2020-10-07 00:14:47 +0200 <sm[m]> re orzo's original q - does cabal always install the latest version of a package even if there's a good-enough version already installed ? I thought it didn't
2020-10-07 00:15:14 +0200 <orzo> it probably checks the hackage index
2020-10-07 00:15:16 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6) (Quit: cosimone)
2020-10-07 00:15:23 +0200 <sm[m]> ie orzo's intuition about path of least effort sounded correct
2020-10-07 00:15:29 +0200 <orzo> i used it for a long time without even downloading and updating that so i didn't realize it behaved this way
2020-10-07 00:15:36 +0200 <sclv> the build dirs are kept by version
2020-10-07 00:15:38 +0200 <sclv> of ghc
2020-10-07 00:15:57 +0200 <sclv> so it won't rebuild more than necessary when you pass different -w flags
2020-10-07 00:16:00 +0200 <sm[m]> oh, you upgraded ghc since then perhaps orzo
2020-10-07 00:17:06 +0200conal(~conal@209.58.130.230)
2020-10-07 00:17:33 +0200 <orzo> i think the least-effort way makes the most sense for the user, but the new way probably has benifits for the community/eco-system since it makes it more likely maintainers will build against newer libs
2020-10-07 00:17:59 +0200 <ski> koz_ : also `let's in list comprehensions don't have `in'. (and (toplevel) `let's in the interactor)
2020-10-07 00:18:21 +0200 <sm[m]> least effort is what it still does I believe
2020-10-07 00:18:25 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6)
2020-10-07 00:18:33 +0200 <orzo> not so
2020-10-07 00:18:41 +0200 <orzo> re me&monochrome's discussion
2020-10-07 00:18:44 +0200 <orzo> i needed the .freeze file
2020-10-07 00:18:51 +0200 <orzo> i need to manually edit it
2020-10-07 00:18:57 +0200 <orzo> the build worked fine
2020-10-07 00:19:04 +0200 <orzo> after i did so
2020-10-07 00:19:26 +0200 <sm[m]> I think ordinarily it will use an installed version if it can. There are lots of reasons it may think it can't use it
2020-10-07 00:19:32 +0200oisdk(~oisdk@2001:bb6:3329:d100:c982:e387:7052:58be) (Quit: oisdk)
2020-10-07 00:19:41 +0200 <sm[m]> such as a ghc upgrade ?
2020-10-07 00:19:43 +0200 <orzo> i think it must be just using the latest if it can
2020-10-07 00:19:52 +0200 <orzo> i did not upgrade ghc
2020-10-07 00:19:55 +0200 <monochrom> OK, I need to actually test it.
2020-10-07 00:19:55 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6) (Client Quit)
2020-10-07 00:20:13 +0200 <sm[m]> ok. I was hoping the cabal gods would pronounce on this
2020-10-07 00:20:39 +0200 <sclv> new-build always calculates a fresh build plan
2020-10-07 00:20:47 +0200 <sclv> from the latest version of the hackage index it has around
2020-10-07 00:20:56 +0200 <sm[m]> wow
2020-10-07 00:20:57 +0200 <sclv> but unless you `cabal update` you don't refresh your indexx
2020-10-07 00:21:19 +0200 <sclv> and `cabal update` tells you how to pin to an index snapshot if you want to not recalc
2020-10-07 00:21:39 +0200 <sm[m]> cabal really doesn't prioritise repeatable builds by default does it
2020-10-07 00:22:00 +0200 <sclv> it gives lots of tools for getting them, but it defaults to not having them
2020-10-07 00:22:02 +0200 <orzo> actually the .freeze makes it more repeatable, not less
2020-10-07 00:22:09 +0200twanvl(~twanvl@77.165.89.227) (Read error: Connection reset by peer)
2020-10-07 00:22:11 +0200 <orzo> as it makes it more explicitly configured
2020-10-07 00:22:19 +0200 <sm[m]> nod
2020-10-07 00:23:43 +0200 <sm[m]> personally I think repeatability should be the priority for the default, with adventurous new build plans as a power use option
2020-10-07 00:23:46 +0200 <orzo> sclv, shouldn't the installed deps take precedence over available-in-index deps?
2020-10-07 00:24:22 +0200 <sclv> its very hard to say what the "best" install plan is given trying to use installed deps
2020-10-07 00:24:40 +0200 <sclv> you have to explore every possible path to see which uses the greatest percentage of them or whatever
2020-10-07 00:24:51 +0200 <sclv> its not a straightforward optimization compared to the normal solver
2020-10-07 00:25:12 +0200 <sclv> and the payoff isnt very clear -- calculating from scratch is an easier behavior to explain and understand
2020-10-07 00:25:40 +0200 <orzo> it could just do what i did but automatically
2020-10-07 00:26:08 +0200 <sclv> like auto-freeze on the first run?
2020-10-07 00:26:10 +0200 <orzo> which is to just look for installed versions of things its trying to download and freeze them to the insalled version
2020-10-07 00:26:32 +0200 <sclv> that isn't so simple to automate -- what if those installed versions are incompat
2020-10-07 00:26:33 +0200Buntspecht(~user@unaffiliated/siracusa)
2020-10-07 00:26:44 +0200 <orzo> it should be an either or thing
2020-10-07 00:26:49 +0200 <sclv> or some are incompat with some and you have to pick the bigger set
2020-10-07 00:27:06 +0200 <orzo> either it can use installed versions in every case, or it falls back to downloading according to the index build plan
2020-10-07 00:27:09 +0200 <sclv> there's a big design space, and again, its not clear what advantage if any therre is
2020-10-07 00:27:40 +0200 <sclv> that's certainly one behavior, but i doubt its the only one people would like, or even thee one most people would expect or like
2020-10-07 00:28:15 +0200 <sm[m]> cabal could act more like stack - leaning on the tested stackage snapshots for repeatability, where it makes sense
2020-10-07 00:28:26 +0200 <sm[m]> <blue sky>
2020-10-07 00:28:29 +0200 <unclechu> hi. a question about `lens` package. imagine a have complex lens like this one: `_2._Just._3._Just._2._Right .~ 200`.
2020-10-07 00:28:29 +0200 <unclechu> in case something cannot be reached (like some of these points was `Nothing` or `Left`) can i have `Maybe` or `Either` wrap which would tell me whether something was changed or not?
2020-10-07 00:28:30 +0200 <unclechu> to be more precise whether something was *able to change* (whole path was reachable)
2020-10-07 00:29:53 +0200 <orzo> actually, the behavior i think people would want is a --no-download option that completely disabled network operation
2020-10-07 00:29:54 +0200seanvert(~user@177.84.244.242)
2020-10-07 00:30:09 +0200 <yushyin> You can pin the index you can also use stackage package constrains with cabal if you like.
2020-10-07 00:30:15 +0200LKoen(~LKoen@81.255.219.130) (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”)
2020-10-07 00:30:32 +0200 <orzo> is pinning the index a per-package thing?
2020-10-07 00:30:36 +0200 <orzo> per-project
2020-10-07 00:30:37 +0200 <orzo> i mean
2020-10-07 00:30:55 +0200 <sclv> yes you can put it in the project fil
2020-10-07 00:30:57 +0200 <sclv> file
2020-10-07 00:31:02 +0200 <unclechu> instead of having `smth` type i would have either `Maybe smth` where `Just` means that a value was successfully updated or `Either smth smth` where `Left` means that a value couldn’t be updated
2020-10-07 00:31:32 +0200 <monochrom> https://cabal.readthedocs.io/en/3.4/cabal-project.html#cfg-field-index-state
2020-10-07 00:32:11 +0200 <yushyin> https://www.stackage.org/lts-16.17/cabal.config :P
2020-10-07 00:32:31 +0200 <dminuoso> unclechu: My instint says it's unlikely to exist.
2020-10-07 00:32:59 +0200 <dminuoso> I'd use `has` separately beforehand
2020-10-07 00:33:57 +0200 <ski> (perhaps one could get list of updated values ?)
2020-10-07 00:35:47 +0200 <monochrom> yushyin: In the Haskell Platform and cabal-v1 days, I used to recommend something like that, but using version numbers chosen by Haskell Platform.
2020-10-07 00:36:52 +0200son0p(~son0p@181.136.122.143) (Remote host closed the connection)
2020-10-07 00:38:18 +0200pacak(~pacak@bb116-14-220-91.singnet.com.sg) (Read error: Connection reset by peer)
2020-10-07 00:38:18 +0200nineonin_(~nineonine@216.81.48.202) (Read error: Connection reset by peer)
2020-10-07 00:38:27 +0200nineonine(~nineonine@216.81.48.202)
2020-10-07 00:38:43 +0200pacak(~pacak@bb116-14-220-91.singnet.com.sg)
2020-10-07 00:39:45 +0200 <yushyin> Hehe, I don't really recommend it, though. I'm also fine with the behaviour of cabal v2- like it is today. After I update the index (and no pinning) I *do* expect some rebuilds.
2020-10-07 00:42:29 +0200__monty__(~toonn@unaffiliated/toonn) (Quit: leaving)
2020-10-07 00:43:04 +0200DataComputist(~lumeng@static-50-43-26-251.bvtn.or.frontiernet.net) (Ping timeout: 258 seconds)
2020-10-07 00:43:50 +0200lagothrix(~lagothrix@unaffiliated/lagothrix) (Ping timeout: 258 seconds)
2020-10-07 00:45:19 +0200shatriff(~vitaliish@217.27.153.240) (Remote host closed the connection)
2020-10-07 00:45:27 +0200Amras(~Amras@unaffiliated/amras0000) (Ping timeout: 272 seconds)
2020-10-07 00:45:39 +0200shatriff(~vitaliish@217.27.153.240)
2020-10-07 00:46:08 +0200shatriff(~vitaliish@217.27.153.240) (Remote host closed the connection)
2020-10-07 00:46:27 +0200shatriff(~vitaliish@217.27.153.240)
2020-10-07 00:46:56 +0200shatriff(~vitaliish@217.27.153.240) (Remote host closed the connection)
2020-10-07 00:47:14 +0200shatriff(~vitaliish@217.27.153.240)
2020-10-07 00:47:43 +0200shatriff(~vitaliish@217.27.153.240) (Remote host closed the connection)
2020-10-07 00:47:53 +0200 <monochrom> cabal v1 reusing installed libs was actually only true in its last days. Over most of v1's life it wantonly brought in newer versions as much as v2 does today.
2020-10-07 00:47:59 +0200shatriff(~vitaliish@217.27.153.240)
2020-10-07 00:48:31 +0200shatriff(~vitaliish@217.27.153.240) (Remote host closed the connection)
2020-10-07 00:48:35 +0200 <monochrom> It is why my historical advice such as http://www.vex.net/~trebla/haskell/cabal-cabal.xhtml#lockdown existed.
2020-10-07 00:49:49 +0200 <monochrom> The difference though is v1 did it unsafely, v2 does it safely.
2020-10-07 00:49:58 +0200conal(~conal@209.58.130.230) (Quit: Computer has gone to sleep.)
2020-10-07 00:52:26 +0200chaosmasttter(~chaosmast@p200300c4a73b2e01d0131264df465fff.dip0.t-ipconnect.de) (Quit: WeeChat 2.9)
2020-10-07 00:53:45 +0200zaquest(~notzaques@5.128.210.178) (Quit: Leaving)
2020-10-07 00:54:26 +0200m0rphism(~m0rphism@HSI-KBW-046-005-177-122.hsi8.kabel-badenwuerttemberg.de) (Ping timeout: 272 seconds)
2020-10-07 00:54:57 +0200zaquest(~notzaques@5.128.210.178)
2020-10-07 00:56:32 +0200 <orzo> how do i use index-state? The docs show putting a time stamp there, but where do i get the time stamp
2020-10-07 00:56:37 +0200 <unclechu> dminuoso: i’m trying to define my own operator: `(??~) :: Lens' s a -> a -> s -> Either s s; (??~) lens x s = (if has lens s then Right else Left) (set lens x s)`
2020-10-07 00:56:37 +0200 <unclechu> but when i try to use it: `((),Just(10,True,Just(20,Right 30))) & (_2._Just._3._Just._2._Right) ??~ 200` i get this: error `Could not deduce (Applicative f) arising from a use of ‘_Just’`
2020-10-07 00:57:13 +0200 <monochrom> I haven't tried, but I would try just choosing a time in the past I like.
2020-10-07 00:58:07 +0200 <unclechu> dminuoso: maybe you have any idea what i’m missing?
2020-10-07 01:01:15 +0200DataComputist(~lumeng@static-50-43-26-251.bvtn.or.frontiernet.net)
2020-10-07 01:01:29 +0200 <monochrom> You know, if you really still like v1 the commands and their semantics, you can still use them, most of them are still available in cabal-install-3.2, or you could even find and use an older cabal-install.
2020-10-07 01:01:40 +0200 <Axman6> orzo: what's index-state?
2020-10-07 01:02:02 +0200 <monochrom> Axman6: this one: https://cabal.readthedocs.io/en/3.4/cabal-project.html#cfg-field-index-state
2020-10-07 01:03:53 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-10-07 01:04:26 +0200conal(~conal@209.58.130.230)
2020-10-07 01:08:00 +0200lagothrix(~lagothrix@unaffiliated/lagothrix)
2020-10-07 01:08:27 +0200 <dsal> > ((),Just(10,True,Just(20,Right 30))) & (_2 . _Just . _3 . _Just . _2 . _Right) ?~ 200 -- unclechu I'm not entirely sure what you're going for there.
2020-10-07 01:08:30 +0200 <lambdabot> ((),Just (10,True,Just (20,Right (Just 200))))
2020-10-07 01:08:39 +0200 <dsal> But in any case, I'd probably start with a smaller example. :)
2020-10-07 01:11:50 +0200danso(~dan@107-190-41-58.cpe.teksavvy.com) (Read error: Connection reset by peer)
2020-10-07 01:12:22 +0200danso(~dan@107-190-41-58.cpe.teksavvy.com)
2020-10-07 01:16:15 +0200 <unclechu> dsal: `?~` has a completely different purpose
2020-10-07 01:16:45 +0200 <dminuoso> 00:33:57 ski | (perhaps one could get list of updated values ?)
2020-10-07 01:16:46 +0200conal(~conal@209.58.130.230) (Quit: Computer has gone to sleep.)
2020-10-07 01:16:49 +0200 <dminuoso> That would be a Fold then.
2020-10-07 01:16:50 +0200 <unclechu> dsal: it doesn’t wrap the whole value into `Maybe`, only the value deep inside
2020-10-07 01:16:53 +0200mirrorbird(~psutcliff@2a00:801:2d5:9d73:ff00:6553:d451:a276) (Quit: Leaving)
2020-10-07 01:17:05 +0200zebrag(~inkbottle@aaubervilliers-654-1-95-218.w86-212.abo.wanadoo.fr) (Ping timeout: 240 seconds)
2020-10-07 01:17:33 +0200zebrag(~inkbottle@aaubervilliers-654-1-109-218.w86-212.abo.wanadoo.fr)
2020-10-07 01:18:49 +0200 <dminuoso> unclechu: Dunno, my lens-fu is quite weak. I'd just write it in optics and let their advanced diagnostics figure it out.
2020-10-07 01:18:54 +0200 <dsal> > ((),Just(10,True,Just(20,Right 30))) & (_2._Just._3._Just._2._Right) .~ 200 -- ok. Like I said, I don't quite understand your goal.
2020-10-07 01:18:57 +0200 <lambdabot> ((),Just (10,True,Just (20,Right 200)))
2020-10-07 01:19:57 +0200 <dminuoso> ski: Or are you suggesting some kind of `ASetter s t a b -> b -> s -> (t, [s])`
2020-10-07 01:20:25 +0200 <unclechu> dsal: `((),Just(10,True,Just(20,Right 30))) & (_2._Just._3._Just._2._Right) ??~ 200` would give me `Just ((),Just (10,True,Just (20,Right 200)))`
2020-10-07 01:20:25 +0200 <unclechu> this `((),Just(10,True,Just(20,Left 30))) & (_2._Just._3._Just._2._Right) ??~ 200` would give me `Nothing`
2020-10-07 01:20:54 +0200 <dminuoso> Which I guess you can concoct if you run the lens with State
2020-10-07 01:21:20 +0200 <dminuoso> Or.. not quite
2020-10-07 01:21:40 +0200zargoertzel(~zar@fw1.ciirc.cvut.cz)
2020-10-07 01:21:43 +0200 <ski> dminuoso : more like `ASetter s t a b -> b -> s -> (t,[b])', then, i think
2020-10-07 01:22:18 +0200 <ski> although, i suppose i had in mind updating with a function
2020-10-07 01:22:18 +0200 <unclechu> Setter would not work with `has`
2020-10-07 01:22:31 +0200 <Axman6> :T has
2020-10-07 01:22:34 +0200 <Axman6> :t has
2020-10-07 01:22:36 +0200 <lambdabot> Getting Any s a -> s -> Bool
2020-10-07 01:23:35 +0200 <ski> the idea was just, if you get a list of the updated values, then you could easily check if this is empty, to see whether any value was updated
2020-10-07 01:24:16 +0200zariuq(~zar@fw1.ciirc.cvut.cz) (Ping timeout: 256 seconds)
2020-10-07 01:25:10 +0200 <ski> (but perhaps unclechu wanted not to see whether any value was updated, but rather whether "any expected update failed (due to absence of the intended location)", if that makes sense (not sure))
2020-10-07 01:26:26 +0200 <unclechu> ski: well, yes, i just want to see whether a value is failed to update or not
2020-10-07 01:27:02 +0200 <ski> (anyway, going from `(t,[b])' to `Maybe t' or `Either s t' is obvious)
2020-10-07 01:27:25 +0200thc202(~thc202@unaffiliated/thc202) (Ping timeout: 240 seconds)
2020-10-07 01:28:01 +0200 <ski> unclechu : even if some other locations was succeddfully updated, at the same time ?
2020-10-07 01:28:13 +0200 <unclechu> ski: but i missed how do i get to `(t,[b])`?
2020-10-07 01:28:54 +0200 <ski> i didn't figure that out. it just sounded like something that could be possible
2020-10-07 01:29:09 +0200 <unclechu> ski: well, my main intention was to check a single update, i didn’t think much about multiple updates
2020-10-07 01:29:28 +0200 <ski> (in the worst case, by separately extracting the values at the requested locations. but nicer would be to be able to do both at the same time)
2020-10-07 01:29:53 +0200da39a3ee5e6b4b0d(~textual@n11211935170.netvigator.com)
2020-10-07 01:29:59 +0200 <ski> the point is that having zero locations to update is a special case of having multiple locations
2020-10-07 01:30:14 +0200conal(~conal@209.58.130.230)
2020-10-07 01:30:44 +0200nitrixnitrix-or-treats
2020-10-07 01:31:01 +0200 <ski> and, afaik, updating with `_Just' and `_Right' is treated like updating zero or one location (depending on whether you have `Nothing'/`Left (...)' or `Just (...)'/`Right (...)')
2020-10-07 01:33:07 +0200 <ski> but say you have a list of type `[Maybe Int]', or of type `[Either String Int]', and you want to add two to each `Int'. it should be able to get an indication if there was no `Int's there at all to update. but, from what you're saying, it sounds like maybe you'd want to get an indication as soon as at least one (rather than all) of the list elements is of the form `Nothing'/`Left (...)'
2020-10-07 01:34:35 +0200DataComputist(~lumeng@static-50-43-26-251.bvtn.or.frontiernet.net) (Quit: Leaving...)
2020-10-07 01:40:01 +0200jneira_(~jneira@80.30.101.206) (Remote host closed the connection)
2020-10-07 01:44:46 +0200thir(~thir@p200300f27f0fc60038c1b16891cbfa03.dip0.t-ipconnect.de)
2020-10-07 01:49:07 +0200thir(~thir@p200300f27f0fc60038c1b16891cbfa03.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2020-10-07 01:52:04 +0200snakemas1(~snakemast@213.100.206.23)
2020-10-07 01:52:07 +0200seanvert(~user@177.84.244.242) (Remote host closed the connection)
2020-10-07 01:56:43 +0200snakemas1(~snakemast@213.100.206.23) (Ping timeout: 256 seconds)
2020-10-07 01:56:53 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 260 seconds)
2020-10-07 01:57:17 +0200ahmr88(~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net)
2020-10-07 01:58:43 +0200 <sm[m]> monochrom: re "v1 did it unsafely, v2 does it safely" - I know what you mean, but I'd amend that to "more safely" - it's still going to the net and downloading a new chunk of software, which may or may not compile or have correct bounds, which the user often has not intended. I think this is still a weakness of cabal-install as a practical tool - it's too willing to do risky operations when the user is not wanting anything to
2020-10-07 01:58:43 +0200 <sm[m]> change
2020-10-07 01:58:45 +0200conal(~conal@209.58.130.230) (Quit: Computer has gone to sleep.)
2020-10-07 01:59:17 +0200conal(~conal@209.58.130.230)
2020-10-07 01:59:22 +0200DirefulSalt(DirefulSal@gateway/vpn/privateinternetaccess/direfulsalt)
2020-10-07 02:00:01 +0200yar1(~yar@185.163.110.116) ()
2020-10-07 02:00:59 +0200Tuplanolla(~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.)
2020-10-07 02:04:59 +0200 <sm[m]> apt-get update, composer upgrade, brew upgrade - all of these you expect to download and install new software, that's their only purpose; cabal build - not so much, unless you've learned that "build" means "upgrade-and-build"
2020-10-07 02:05:53 +0200conal(~conal@209.58.130.230) (Quit: Computer has gone to sleep.)
2020-10-07 02:05:56 +0200Stanley00(~stanley00@unaffiliated/stanley00)
2020-10-07 02:06:27 +0200hackageXSaiga 1.7.0.0 - An implementation of a polynomial-time top-down parser suitable for NLP https://hackage.haskell.org/package/XSaiga-1.7.0.0 (InBetweenNames)
2020-10-07 02:08:13 +0200conal(~conal@209.58.130.230)
2020-10-07 02:10:40 +0200Stanley00(~stanley00@unaffiliated/stanley00) (Ping timeout: 256 seconds)
2020-10-07 02:12:42 +0200PtxDK(~quassel@2a01:7c8:aac3:591:5054:ff:fe3d:cac6) (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
2020-10-07 02:12:50 +0200conal(~conal@209.58.130.230) (Client Quit)
2020-10-07 02:14:23 +0200jespada(~jespada@90.254.246.48) (Ping timeout: 244 seconds)
2020-10-07 02:16:06 +0200Lycurgus(~niemand@98.4.96.130) (Quit: Exeunt)
2020-10-07 02:16:25 +0200DavidEichmann(~david@43.240.198.146.dyn.plus.net) (Ping timeout: 264 seconds)
2020-10-07 02:17:17 +0200justanotheruser(~justanoth@unaffiliated/justanotheruser) (Ping timeout: 260 seconds)
2020-10-07 02:18:01 +0200jespada(~jespada@90.254.245.15)
2020-10-07 02:18:17 +0200sh4rm4^bnc(~sh4rm4@unaffiliated/sh4rm4)
2020-10-07 02:19:27 +0200 <sh4rm4^bnc> hello, i'm wondering whether JHC compiler could be used to translate a haskell project i'm interested in into portable C code which i could use to compile that project on systems where i dont have a haskell compiler available
2020-10-07 02:20:02 +0200 <sh4rm4^bnc> ftr, that's the compiler in question http://repetae.net/computer/jhc/manual.html
2020-10-07 02:20:44 +0200 <sh4rm4^bnc> supposedly it can produce C, but it's not described whether that's portable C or tailored to the system/arch it's been invoked on (e.g. like pypy)
2020-10-07 02:20:56 +0200 <sm[m]> more precisely, it can mean "build" or "upgrade-and-build" depending on whether you ran cabal update. (I assume cabal doesn't do that automatically like stack does.) This is non-obvious statefulness making cabal more complicated than those tools where the command tells all
2020-10-07 02:21:13 +0200kpyke(~kpyke@s91904426.blix.com)
2020-10-07 02:22:40 +0200 <sm[m]> hello sh4rm4^bnc. I'd guess it's worth a try for small amounts of haskell, but unlikely to compile anything off hackage
2020-10-07 02:23:17 +0200 <ghoulguy> sh4rm4^bnc: As far as I know JHC isn't being maintained. The README does mention something about cross-compiling: https://github.com/jimcrayne/jhc#cross-compiling
2020-10-07 02:23:47 +0200 <sh4rm4^bnc> sm[m], the project i'm intereted in is https://github.com/diku-kmc/kleenexlang . can i see whether it uses "hackage" ?
2020-10-07 02:24:04 +0200 <sm[m]> it won't build that
2020-10-07 02:25:02 +0200 <sm[m]> (because that's a modern haskell codebase, depending on many other modern haskell packages, and JHC is much older)
2020-10-07 02:25:38 +0200ryansmccoy(~ryansmcco@193.37.254.27) (Ping timeout: 272 seconds)
2020-10-07 02:25:45 +0200conal(~conal@209.58.130.230)
2020-10-07 02:26:03 +0200 <sm[m]> and is not GHC. Basically most haskell packages require GHC (and a specific range of versions of it)
2020-10-07 02:26:06 +0200ryansmccoy(~ryansmcco@193.37.254.27)
2020-10-07 02:26:15 +0200 <sh4rm4^bnc> ah :/
2020-10-07 02:26:34 +0200 <ghoulguy> What platform are you targetting?
2020-10-07 02:27:32 +0200 <sh4rm4^bnc> my own distro sabotage linux (based on musl libc)
2020-10-07 02:27:39 +0200ahmr88(~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net) (Remote host closed the connection)
2020-10-07 02:28:18 +0200 <sh4rm4^bnc> once a contributor tried to bootstrap GHC from source but he gave up
2020-10-07 02:28:43 +0200 <sh4rm4^bnc> i don't know the details, but iirc it was a very involving process
2020-10-07 02:28:48 +0200 <sm[m]> #ghc might be more help (in a few hours)
2020-10-07 02:30:18 +0200Wuzzy(~Wuzzy@p5790e6f5.dip0.t-ipconnect.de) (Remote host closed the connection)
2020-10-07 02:30:21 +0200 <sm[m]> I suspect what matters more is the architecture
2020-10-07 02:30:42 +0200 <sh4rm4^bnc> we support mips, arm, powerpc... and intel ofc
2020-10-07 02:31:22 +0200 <sh4rm4^bnc> though in this case it's just me wanting to toy with kleenex, so x86_64 would be sufficient for the experiment
2020-10-07 02:31:30 +0200 <sm[m]> I believe people sometimes link haskell programs with musl, on intel. Don't know if that works for GHC also
2020-10-07 02:31:58 +0200hackagehttp-date 0.0.10 - HTTP Date parser/formatter https://hackage.haskell.org/package/http-date-0.0.10 (KazuYamamoto)
2020-10-07 02:32:37 +0200jedws(~jedws@121.209.161.98)
2020-10-07 02:34:03 +0200mirrorbird(~psutcliff@2a00:801:2d5:9d73:ff00:6553:d451:a276)
2020-10-07 02:35:27 +0200cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Ping timeout: 240 seconds)
2020-10-07 02:38:20 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-10-07 02:41:17 +0200cp-(~cp-@b157153.ppp.asahi-net.or.jp) (Quit: Disappeared in a puff of smoke)
2020-10-07 02:42:08 +0200cp-(~cp-@b157153.ppp.asahi-net.or.jp)
2020-10-07 02:43:03 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 258 seconds)
2020-10-07 02:46:07 +0200machinedgod(~machinedg@24.105.81.50) (Ping timeout: 240 seconds)
2020-10-07 02:46:20 +0200mirrorbird(~psutcliff@2a00:801:2d5:9d73:ff00:6553:d451:a276) (Quit: Leaving)
2020-10-07 02:47:43 +0200plutoniix(~q@ppp-223-24-94-169.revip6.asianet.co.th)
2020-10-07 02:48:08 +0200zariuq(~zar@fw1.ciirc.cvut.cz)
2020-10-07 02:48:17 +0200zargoertzel(~zar@fw1.ciirc.cvut.cz) (Remote host closed the connection)
2020-10-07 02:52:47 +0200justanotheruser(~justanoth@unaffiliated/justanotheruser)
2020-10-07 03:00:27 +0200xerox_(~xerox@unaffiliated/xerox) (Ping timeout: 240 seconds)
2020-10-07 03:00:51 +0200darjeeling_(~darjeelin@115.215.43.235) (Ping timeout: 265 seconds)
2020-10-07 03:01:10 +0200Gurkenglas(~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 256 seconds)
2020-10-07 03:01:29 +0200conal(~conal@209.58.130.230) (Quit: Computer has gone to sleep.)
2020-10-07 03:02:04 +0200polyrain(~polyrain@203.51.166.163)
2020-10-07 03:05:07 +0200plutoniix(~q@ppp-223-24-94-169.revip6.asianet.co.th) (Read error: Connection reset by peer)
2020-10-07 03:08:35 +0200polyrain(~polyrain@203.51.166.163) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-07 03:13:12 +0200wroathe(~wroathe@c-73-24-27-54.hsd1.mn.comcast.net)
2020-10-07 03:13:34 +0200hyiltiz(~quassel@unaffiliated/hyiltiz) (Ping timeout: 256 seconds)
2020-10-07 03:13:48 +0200voyons_calisse(~dan@107-190-41-58.cpe.teksavvy.com)
2020-10-07 03:13:57 +0200hackagej 0.1.0.0 - J in Haskell https://hackage.haskell.org/package/j-0.1.0.0 (vmchale)
2020-10-07 03:14:13 +0200CMCDragonkai1(~Thunderbi@124.19.3.250)
2020-10-07 03:15:29 +0200nineonine(~nineonine@216.81.48.202) (Remote host closed the connection)
2020-10-07 03:15:45 +0200hyiltiz(~quassel@82.118.227.47)
2020-10-07 03:15:45 +0200hyiltiz(~quassel@82.118.227.47) (Changing host)
2020-10-07 03:15:45 +0200hyiltiz(~quassel@unaffiliated/hyiltiz)
2020-10-07 03:16:11 +0200a3f(~a3f@chimeria.ext.pengutronix.de) (Ping timeout: 272 seconds)
2020-10-07 03:16:24 +0200voyons_calice(~dan@162.246.216.28) (Ping timeout: 256 seconds)
2020-10-07 03:17:53 +0200plutoniix(~q@175.176.222.7)
2020-10-07 03:19:07 +0200borne(~fritjof@200116b864d97f00d30d76f456a7111b.dip.versatel-1u1.de) (Ping timeout: 260 seconds)
2020-10-07 03:19:39 +0200a3f(~a3f@chimeria.ext.pengutronix.de)
2020-10-07 03:21:07 +0200jle`(~mstksg@cpe-23-240-75-236.socal.res.rr.com)
2020-10-07 03:21:07 +0200jle`(~mstksg@cpe-23-240-75-236.socal.res.rr.com) (Changing host)
2020-10-07 03:21:07 +0200jle`(~mstksg@unaffiliated/mstksg)
2020-10-07 03:27:17 +0200mozzarella(~sam@unaffiliated/sam113101)
2020-10-07 03:30:39 +0200GyroW_(~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie)
2020-10-07 03:30:57 +0200GyroW(~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
2020-10-07 03:30:57 +0200GyroW(~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
2020-10-07 03:30:57 +0200GyroW(~GyroW@unaffiliated/gyrow)
2020-10-07 03:31:27 +0200machinedgod(~machinedg@24.105.81.50)
2020-10-07 03:33:03 +0200CMCDragonkai1(~Thunderbi@124.19.3.250) (Quit: CMCDragonkai1)
2020-10-07 03:34:53 +0200ystael(~ystael@209.6.50.55) (Ping timeout: 260 seconds)
2020-10-07 03:37:45 +0200mrchampion(~mrchampio@216-211-57-41.dynamic.tbaytel.net) (Ping timeout: 240 seconds)
2020-10-07 03:39:12 +0200xerox_(~xerox@unaffiliated/xerox)
2020-10-07 03:39:20 +0200brandly(~brandly@c-73-68-15-46.hsd1.ma.comcast.net)
2020-10-07 03:40:17 +0200snakemas1(~snakemast@213.100.206.23)
2020-10-07 03:40:20 +0200mrchampion(~mrchampio@216-211-57-41.dynamic.tbaytel.net)
2020-10-07 03:41:10 +0200xff0x_(~fox@2001:1a81:5374:e100:c1d9:fc1f:d0ea:8e49)
2020-10-07 03:43:10 +0200kl1xto(~klixto@130.220.8.140)
2020-10-07 03:43:38 +0200pieguy128_(~pieguy128@bras-base-mtrlpq5031w-grc-26-67-71-116-211.dsl.bell.ca) (Ping timeout: 260 seconds)
2020-10-07 03:43:56 +0200xsperry(~as@unaffiliated/xsperry) (Remote host closed the connection)
2020-10-07 03:44:23 +0200xff0x(~fox@port-92-193-207-209.dynamic.as20676.net) (Ping timeout: 258 seconds)
2020-10-07 03:44:46 +0200snakemas1(~snakemast@213.100.206.23) (Ping timeout: 258 seconds)
2020-10-07 03:48:27 +0200sand_dull(~theuser@104.140.53.43)
2020-10-07 03:52:00 +0200ski(~ski@m-1163-19.studat.chalmers.se) (Remote host closed the connection)
2020-10-07 03:53:13 +0200conal(~conal@209.58.130.230)
2020-10-07 03:57:27 +0200Rudd0(~Rudd0@185.189.115.103) (Ping timeout: 240 seconds)
2020-10-07 04:00:28 +0200ski(~ski@m-1163-19.studat.chalmers.se)
2020-10-07 04:01:43 +0200jle`(~mstksg@unaffiliated/mstksg) (Ping timeout: 260 seconds)
2020-10-07 04:04:06 +0200nineonine(~nineonine@216-19-190-182.dyn.novuscom.net)
2020-10-07 04:11:09 +0200jle`(~mstksg@unaffiliated/mstksg)
2020-10-07 04:12:08 +0200Rudd0(~Rudd0@185.189.115.103)
2020-10-07 04:13:18 +0200brandly(~brandly@c-73-68-15-46.hsd1.ma.comcast.net) (Ping timeout: 272 seconds)
2020-10-07 04:16:27 +0200hackagereanimate 1.1.0.0 - Animation library based on SVGs. https://hackage.haskell.org/package/reanimate-1.1.0.0 (DavidHimmelstrup)
2020-10-07 04:17:06 +0200jle`(~mstksg@unaffiliated/mstksg) (Ping timeout: 272 seconds)
2020-10-07 04:19:07 +0200ralejs_(~ralejs@2620:10d:c093:400::5:2842)
2020-10-07 04:19:07 +0200ralejs(~ralejs@2620:10d:c093:400::5:2842) (Read error: Connection reset by peer)
2020-10-07 04:19:15 +0200lagothrixGuest60564
2020-10-07 04:19:15 +0200Guest60564(~lagothrix@unaffiliated/lagothrix) (Killed (hitchcock.freenode.net (Nickname regained by services)))
2020-10-07 04:19:25 +0200lagothrix(~lagothrix@unaffiliated/lagothrix)
2020-10-07 04:21:14 +0200jle`(~mstksg@cpe-23-240-75-236.socal.res.rr.com)
2020-10-07 04:21:14 +0200jle`(~mstksg@cpe-23-240-75-236.socal.res.rr.com) (Changing host)
2020-10-07 04:21:14 +0200jle`(~mstksg@unaffiliated/mstksg)
2020-10-07 04:22:11 +0200urodna(~urodna@unaffiliated/urodna) (Quit: urodna)
2020-10-07 04:22:20 +0200Kaeipi(~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection)
2020-10-07 04:22:23 +0200Merfont(~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net)
2020-10-07 04:24:26 +0200 <jackdk> Does this (or something like it) exist? If it did, I would expect to find it in `lens` but I didn't: `splitting :: Char -> Traversal' Text Text` or something
2020-10-07 04:24:33 +0200kori(~kori@arrowheads/kori) (Quit: WeeChat 2.8)
2020-10-07 04:25:25 +0200 <jackdk> might even be an Iso'?
2020-10-07 04:26:10 +0200jle`(~mstksg@unaffiliated/mstksg) (Ping timeout: 258 seconds)
2020-10-07 04:26:12 +0200plutoniix(~q@175.176.222.7) (Quit: Leaving)
2020-10-07 04:28:02 +0200kori(~kori@2804:14c:85a3:9105::1000)
2020-10-07 04:28:02 +0200kori(~kori@2804:14c:85a3:9105::1000) (Changing host)
2020-10-07 04:28:02 +0200kori(~kori@arrowheads/kori)
2020-10-07 04:29:59 +0200Sheilong(uid293653@gateway/web/irccloud.com/x-duklgmscrxrumecv)
2020-10-07 04:30:24 +0200ryansmccoy(~ryansmcco@193.37.254.27) (Ping timeout: 272 seconds)
2020-10-07 04:31:07 +0200ryansmccoy(~ryansmcco@193.37.254.27)
2020-10-07 04:31:13 +0200ralejs_(~ralejs@2620:10d:c093:400::5:2842) (Read error: Connection reset by peer)
2020-10-07 04:31:37 +0200ralejs(~ralejs@2620:10d:c093:400::5:2842)
2020-10-07 04:31:45 +0200emb(602910b8@096-041-016-184.res.spectrum.com)
2020-10-07 04:32:57 +0200polyrain(~polyrain@pa49-197-142-210.pa.qld.optusnet.com.au)
2020-10-07 04:33:53 +0200polyrain(~polyrain@pa49-197-142-210.pa.qld.optusnet.com.au) (Client Quit)
2020-10-07 04:34:17 +0200 <emb> Any recomendations for (post covid) haskell meetups in los angeles, ca?
2020-10-07 04:36:58 +0200 <LarryTheCow> am also curious ^^^
2020-10-07 04:36:59 +0200 <Axman6> meetups are somewhat moving away from being location based
2020-10-07 04:37:42 +0200 <Axman6> jackdk: I'm assuming the pointed to texts are the strings between the given char?
2020-10-07 04:38:00 +0200 <jackdk> Axman6: yeah, like for slicing and dicing arns
2020-10-07 04:38:15 +0200Stanley00(~stanley00@unaffiliated/stanley00)
2020-10-07 04:38:40 +0200sand_dull(~theuser@104.140.53.43) (Ping timeout: 260 seconds)
2020-10-07 04:38:55 +0200wroathe_(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-10-07 04:38:58 +0200wroathe(~wroathe@c-73-24-27-54.hsd1.mn.comcast.net) (Ping timeout: 246 seconds)
2020-10-07 04:39:07 +0200vicfred(~vicfred@unaffiliated/vicfred) (Quit: Leaving)
2020-10-07 04:39:57 +0200emb(602910b8@096-041-016-184.res.spectrum.com) (Remote host closed the connection)
2020-10-07 04:40:03 +0200vicfred(~vicfred@unaffiliated/vicfred)
2020-10-07 04:41:18 +0200sand_dull(~theuser@104.140.53.43)
2020-10-07 04:43:35 +0200 <Axman6> @ :t \c -> iso (Text.splitOn (Text.singleton x)) (Text.intercalate (Text.singleton c)
2020-10-07 04:43:52 +0200 <Axman6> % :t \c -> iso (Text.splitOn (Text.singleton x)) (Text.intercalate (Text.singleton c)
2020-10-07 04:43:52 +0200 <yahb> Axman6: ; <interactive>:1:81: error: parse error (possibly incorrect indentation or mismatched brackets)
2020-10-07 04:43:56 +0200 <Axman6> % :t \c -> iso (Text.splitOn (Text.singleton x)) (Text.intercalate (Text.singleton c))
2020-10-07 04:43:57 +0200 <yahb> Axman6: ; <interactive>:1:12: error:; Not in scope: `Text.splitOn'; No module named `Text' is imported.; <interactive>:1:26: error:; Not in scope: `Text.singleton'; Perhaps you meant one of these: `Seq.singleton' (imported from Data.Sequence), `S.singleton' (imported from Data.Set), `M.singleton' (imported from Data.Map); No module named `Text' is imported.; <interactive>:1:46: error:; No
2020-10-07 04:43:57 +0200hackageyesod-filter 0.1.0.1 - Automatic filter generator for Yesod https://hackage.haskell.org/package/yesod-filter-0.1.0.1 (KenzoYotsuya)
2020-10-07 04:44:23 +0200 <Axman6> % import Data.Text as Text
2020-10-07 04:44:23 +0200 <yahb> Axman6:
2020-10-07 04:44:26 +0200 <Axman6> % :t \c -> iso (Text.splitOn (Text.singleton x)) (Text.intercalate (Text.singleton c))
2020-10-07 04:44:27 +0200 <yahb> Axman6: ; <interactive>:1:41: error: Variable not in scope: x :: Char
2020-10-07 04:44:35 +0200 <Axman6> % :t \c -> iso (Text.splitOn (Text.singleton c)) (Text.intercalate (Text.singleton c))
2020-10-07 04:44:35 +0200 <yahb> Axman6: (Profunctor p, Functor f) => Char -> p [Text] (f [Text]) -> p Text (f Text)
2020-10-07 04:44:46 +0200 <Axman6> % :t \c -> iso (Text.splitOn (Text.singleton c)) (Text.intercalate (Text.singleton c)) . each
2020-10-07 04:44:47 +0200 <yahb> Axman6: Applicative f => Char -> (Text -> f Text) -> Text -> f Text
2020-10-07 04:45:42 +0200GyroW(~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie)
2020-10-07 04:45:55 +0200GyroW(~GyroW@d54c03e98.access.telenet.be)
2020-10-07 04:45:55 +0200GyroW(~GyroW@d54c03e98.access.telenet.be) (Changing host)
2020-10-07 04:45:55 +0200GyroW(~GyroW@unaffiliated/gyrow)
2020-10-07 04:46:14 +0200machinedgod(~machinedg@24.105.81.50) (Ping timeout: 272 seconds)
2020-10-07 04:47:00 +0200vicfred(~vicfred@unaffiliated/vicfred) (Quit: Leaving)
2020-10-07 04:47:33 +0200 <jackdk> Axman6: yeah using iso and splitOn and intercalate is where we are at too
2020-10-07 04:48:37 +0200 <Axman6> it is unsatisfying though
2020-10-07 04:49:33 +0200wroathe_(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 260 seconds)
2020-10-07 04:52:07 +0200shatriff(~vitaliish@217.27.153.240)
2020-10-07 04:53:13 +0200conal(~conal@209.58.130.230) (Quit: Computer has gone to sleep.)
2020-10-07 04:54:01 +0200conal(~conal@209.58.130.230)
2020-10-07 04:54:03 +0200plutoniix(~q@175.176.222.7)
2020-10-07 05:00:02 +0200kpyke(~kpyke@s91904426.blix.com) ()
2020-10-07 05:01:15 +0200AlterEgo-(~ladew@124-198-158-163.dynamic.caiway.nl) (Quit: Leaving)
2020-10-07 05:01:48 +0200conal(~conal@209.58.130.230) (Quit: Computer has gone to sleep.)
2020-10-07 05:03:13 +0200robotmay(~beepboop@80.172.187.81.in-addr.arpa) (Ping timeout: 272 seconds)
2020-10-07 05:03:32 +0200conal(~conal@209.58.130.230)
2020-10-07 05:04:43 +0200GyroW_(~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
2020-10-07 05:04:43 +0200GyroW_(~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
2020-10-07 05:04:43 +0200GyroW_(~GyroW@unaffiliated/gyrow)
2020-10-07 05:05:08 +0200petersen(~petersen@redhat/juhp)
2020-10-07 05:05:11 +0200GyroW(~GyroW@unaffiliated/gyrow) (Read error: Connection reset by peer)
2020-10-07 05:09:27 +0200Kaeipi(~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net)
2020-10-07 05:10:30 +0200robotmay(~beepboop@2001:8b0:7af0:2580:ed9c:4bf8:10df:f97a)
2020-10-07 05:11:48 +0200Merfont(~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net) (Ping timeout: 260 seconds)
2020-10-07 05:17:03 +0200livvy(~livvy@gateway/tor-sasl/livvy) (Ping timeout: 240 seconds)
2020-10-07 05:17:04 +0200bloodstalker(~bloodstal@46.166.187.154) (Read error: Connection reset by peer)
2020-10-07 05:19:47 +0200polyrain(~polyrain@2001:8003:e501:6901:ec3c:d1e0:e12d:d528)
2020-10-07 05:20:23 +0200toorevitimirp(~tooreviti@117.182.180.245)
2020-10-07 05:25:22 +0200ransom(~c4264035@c-73-243-2-10.hsd1.co.comcast.net)
2020-10-07 05:27:09 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-10-07 05:28:30 +0200snakemas1(~snakemast@213.100.206.23)
2020-10-07 05:32:06 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 258 seconds)
2020-10-07 05:33:18 +0200snakemas1(~snakemast@213.100.206.23) (Ping timeout: 260 seconds)
2020-10-07 05:35:58 +0200Clough(~Cain@27-33-147-252.static.tpgi.com.au)
2020-10-07 05:43:22 +0200carlomagno(~cararell@inet-hqmc01-o.oracle.com) (Remote host closed the connection)
2020-10-07 05:44:34 +0200carlomagno(~cararell@inet-hqmc01-o.oracle.com)
2020-10-07 05:46:13 +0200thir(~thir@p200300f27f0fc60038c1b16891cbfa03.dip0.t-ipconnect.de)
2020-10-07 05:49:40 +0200Amras(~Amras@unaffiliated/amras0000)
2020-10-07 05:50:25 +0200thir(~thir@p200300f27f0fc60038c1b16891cbfa03.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2020-10-07 05:50:34 +0200shatriff(~vitaliish@217.27.153.240) (Remote host closed the connection)
2020-10-07 05:50:49 +0200shatriff(~vitaliish@217.27.153.240)
2020-10-07 05:56:14 +0200dansho(~dansho@ip68-108-167-185.lv.lv.cox.net)
2020-10-07 05:57:53 +0200 <Squarism> ski, you around? I dwelved down the Generic track yesterday. I'm not really sure what route you thought could be fruitful. Did you mean I should analyze the "from valueOfheType" or something else ? https://paste.ofcode.org/aAUKgA5fz5mzUHSQuWCH8u
2020-10-07 05:59:33 +0200solonarv(~solonarv@adijon-655-1-70-207.w90-13.abo.wanadoo.fr) (Ping timeout: 260 seconds)
2020-10-07 06:01:04 +0200 <ghoulguy> Squarism: What was the goal?
2020-10-07 06:02:03 +0200 <Squarism> ghoulguy, the ghoul is to be able to address "leafs" (Registration a) of Pr2 using textual addresses.
2020-10-07 06:02:52 +0200 <Squarism> Pr2 is just an example type it should work for any type constructed using combinations of records/lists/maybe/either/tuple2
2020-10-07 06:03:01 +0200 <ghoulguy> What were the addresses?
2020-10-07 06:03:20 +0200 <ghoulguy> record field names?
2020-10-07 06:03:53 +0200 <Squarism> say for the Pr2 case valid addresses would be : s1/
2020-10-07 06:03:54 +0200 <Squarism> s2/just/_2_1/
2020-10-07 06:03:54 +0200 <Squarism> s2/just/_2_2/just
2020-10-07 06:04:22 +0200 <ghoulguy> So for a sum type, the address is the constructor name and for a record type the field name?
2020-10-07 06:04:43 +0200 <ghoulguy> Or do you expect to need the constructor address whether or not there are alternatives?
2020-10-07 06:04:56 +0200 <ghoulguy> like: data T = C { field1 :: Int }
2020-10-07 06:04:58 +0200 <Squarism> oh sum types are not allowed other than Maybe / Either
2020-10-07 06:05:19 +0200 <ghoulguy> Oh, so just, nothing, left, right, and then any record field names?
2020-10-07 06:05:32 +0200 <ghoulguy> or only just tuple names?
2020-10-07 06:05:33 +0200 <Squarism> yeqah
2020-10-07 06:06:00 +0200 <Squarism> tuple2 addresses would be _2_<index>
2020-10-07 06:06:15 +0200 <Squarism> list addresses would be <index>
2020-10-07 06:06:16 +0200 <ghoulguy> First step will be to make a data type for your addresses and a parser :: String -> Maybe Address
2020-10-07 06:06:38 +0200snakemas1(~snakemast@213.100.206.23)
2020-10-07 06:06:38 +0200 <Squarism> sounds good.
2020-10-07 06:06:40 +0200hololeap(~hololeap@unaffiliated/hololeap) (Ping timeout: 272 seconds)
2020-10-07 06:07:27 +0200polyphem(~p0lyph3m@2a02:810d:640:776c:76d7:55f6:f85b:c889) (Ping timeout: 240 seconds)
2020-10-07 06:08:13 +0200nineonine(~nineonine@216-19-190-182.dyn.novuscom.net) (Remote host closed the connection)
2020-10-07 06:08:40 +0200hololeap(~hololeap@unaffiliated/hololeap)
2020-10-07 06:08:47 +0200nineonine(~nineonine@50.216.62.2)
2020-10-07 06:08:52 +0200 <ghoulguy> The second issue is that the types of things are going to be tricky
2020-10-07 06:09:04 +0200 <ghoulguy> Then I'd suggest: class C a where m :: [Address] -> Traversal a WhatHere?
2020-10-07 06:09:33 +0200 <ghoulguy> We could do: class C a where m :: Typeable b => [Address] -> Traversal a b
2020-10-07 06:09:54 +0200 <ghoulguy> or we could make the addresses indexed by the type of thing they lookup
2020-10-07 06:10:07 +0200hyiltiz(~quassel@unaffiliated/hyiltiz) (Ping timeout: 240 seconds)
2020-10-07 06:10:12 +0200 <ghoulguy> and move the type matching into address parsing
2020-10-07 06:10:26 +0200 <ghoulguy> In that case you'd have something like: m :: Address a b -> Traversable a b
2020-10-07 06:11:01 +0200 <ghoulguy> but you'll have to decide when you want things to fail if an address is provided for something of the wrong type
2020-10-07 06:11:07 +0200snakemas1(~snakemast@213.100.206.23) (Ping timeout: 240 seconds)
2020-10-07 06:11:10 +0200 <Squarism> Oh ok. I think I understand your idea there.
2020-10-07 06:11:58 +0200 <ghoulguy> Of you could decide what the valid types of things to pull out with an address are
2020-10-07 06:12:10 +0200 <ghoulguy> m :: Address -> Traversal a Value
2020-10-07 06:13:24 +0200 <Squarism> Lets call the "target type" (as Pr2 in the example ) TheType'
2020-10-07 06:14:02 +0200 <Squarism> how do you see the actual probing of a value/allowed type component of an value of TheType' is done?
2020-10-07 06:14:42 +0200 <Squarism> say TheType' is just Pr3 { fld1 :: Registration SomeType }
2020-10-07 06:14:53 +0200justsomeguy(~justsomeg@unaffiliated/--/x-3805311) ()
2020-10-07 06:15:02 +0200hyiltiz(~quassel@82.118.227.47)
2020-10-07 06:15:02 +0200hyiltiz(~quassel@82.118.227.47) (Changing host)
2020-10-07 06:15:02 +0200hyiltiz(~quassel@unaffiliated/hyiltiz)
2020-10-07 06:15:36 +0200vicfred(~vicfred@unaffiliated/vicfred)
2020-10-07 06:15:47 +0200 <Squarism> given an Address for fld1, how would I check there its a valid address and retrieve the value there?
2020-10-07 06:15:52 +0200 <Squarism> ghoulguy, ^
2020-10-07 06:17:57 +0200Kaeipi(~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net) (Ping timeout: 256 seconds)
2020-10-07 06:20:26 +0200Kaiepi(~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net)
2020-10-07 06:20:41 +0200falafel(~falafel@2605:e000:1527:d491:1ccf:5c8d:7928:e9cc)
2020-10-07 06:24:18 +0200 <ghoulguy> I'm trying something; this isn't something sensible to do "in general" but I'm seeing where we can start
2020-10-07 06:26:06 +0200Kaeipi(~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net)
2020-10-07 06:27:06 +0200Kaiepi(~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection)
2020-10-07 06:27:43 +0200Frost(~Frost@185.204.1.185)
2020-10-07 06:28:12 +0200 <ghoulguy> Squarism: Consider this https://paste.tomsmeding.com/OtGxhxea
2020-10-07 06:28:15 +0200 <Squarism> ghoulguy, cool. Thanks a bunch
2020-10-07 06:29:20 +0200 <ghoulguy> bugfix: https://paste.tomsmeding.com/YdJDhEKP
2020-10-07 06:31:47 +0200 <ghoulguy> oops, the first instance was still wrong!
2020-10-07 06:32:17 +0200 <Squarism> Nice stuff! Elegant.How about arbitrary records, any idea there?
2020-10-07 06:32:39 +0200 <Squarism> where fld name is the accessor. I guess I need to TH those right?
2020-10-07 06:32:52 +0200 <ghoulguy> no, you can get field names with GHC.Generics
2020-10-07 06:33:19 +0200 <ghoulguy> or TH or Data.Generics
2020-10-07 06:36:20 +0200 <Squarism> I cannot find Data.Generics with google
2020-10-07 06:36:29 +0200 <ghoulguy> ?hackage syb
2020-10-07 06:36:29 +0200 <lambdabot> https://hackage.haskell.org/package/syb
2020-10-07 06:37:07 +0200jneira(501e65ce@gateway/web/cgi-irc/kiwiirc.com/ip.80.30.101.206) (Ping timeout: 240 seconds)
2020-10-07 06:37:43 +0200day_(~Unknown@unaffiliated/day)
2020-10-07 06:39:29 +0200jneira_(~jneira@215.red-37-10-140.dynamicip.rima-tde.net)
2020-10-07 06:40:03 +0200 <Squarism> ghoulguy, so for the GHC.Generics case (Data.Generics seems to have a bunch of dead links so would prefer GHC.Generics). What should I be looking for to create a Deliver for an Address constructor FieldName String ?
2020-10-07 06:41:26 +0200 <Squarism> or maybe call it "AField String" for consistency
2020-10-07 06:41:30 +0200day(~Unknown@unaffiliated/day) (Ping timeout: 272 seconds)
2020-10-07 06:41:30 +0200day_day
2020-10-07 06:42:28 +0200shafox(~shafox@106.51.234.111)
2020-10-07 06:44:38 +0200 <ghoulguy> Squarism: Do use generics you'd need something like this: https://paste.tomsmeding.com/29Geypre
2020-10-07 06:45:32 +0200 <Squarism> ghoulguy, Sweet. I'm gonna try it out right away
2020-10-07 06:47:48 +0200 <sm[m]> @freenode_emb:matrix.org: there was a LA haskellers meetup for years, maybe it's on meetup.com
2020-10-07 06:47:49 +0200 <lambdabot> Unknown command, try @list
2020-10-07 06:50:52 +0200voyons_calisse(~dan@107-190-41-58.cpe.teksavvy.com) (Quit: Leaving)
2020-10-07 06:50:56 +0200jtmarjamestmartin
2020-10-07 06:57:07 +0200da39a3ee5e6b4b0d(~textual@n11211935170.netvigator.com) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-07 06:57:13 +0200Amras(~Amras@unaffiliated/amras0000) (Ping timeout: 272 seconds)
2020-10-07 06:58:12 +0200 <shafox> @list
2020-10-07 06:58:12 +0200 <lambdabot> What module? Try @listmodules for some ideas.
2020-10-07 06:58:57 +0200da39a3ee5e6b4b0d(~textual@n11211935170.netvigator.com)
2020-10-07 07:03:56 +0200kl1xto(~klixto@130.220.8.140) (Quit: WeeChat 2.9)
2020-10-07 07:07:25 +0200taurux(~taurux@net-188-152-143-247.cust.dsl.teletu.it) (Ping timeout: 264 seconds)
2020-10-07 07:07:57 +0200taurux(~taurux@net-93-144-24-109.cust.vodafonedsl.it)
2020-10-07 07:08:41 +0200ransom(~c4264035@c-73-243-2-10.hsd1.co.comcast.net) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-07 07:08:44 +0200 <Squarism> ghoulguy, man. That actually worked!
2020-10-07 07:08:45 +0200sand_dull(~theuser@104.140.53.43) (Ping timeout: 240 seconds)
2020-10-07 07:09:11 +0200 <Squarism> Great stuff. Now I have a road to explore. Thanks a bunch.
2020-10-07 07:09:57 +0200hackagedimensional-codata 2014.0.0.2 - CODATA Recommended Physical Constants with Dimensional Types https://hackage.haskell.org/package/dimensional-codata-2014.0.0.2 (BjornBuckwalter)
2020-10-07 07:13:38 +0200plutoniix(~q@175.176.222.7) (Quit: Leaving)
2020-10-07 07:13:50 +0200aqd(~aqd@84.20.147.33)
2020-10-07 07:17:32 +0200Frost(~Frost@185.204.1.185) (Remote host closed the connection)
2020-10-07 07:17:35 +0200jneira_(~jneira@215.red-37-10-140.dynamicip.rima-tde.net) (Read error: Connection reset by peer)
2020-10-07 07:24:22 +0200takuan(~takuan@178-116-218-225.access.telenet.be)
2020-10-07 07:26:10 +0200tzh(~tzh@2601:448:c500:5300::143b) (Quit: zzz)
2020-10-07 07:31:40 +0200ransom(c4264035@gateway/vpn/protonvpn/c4264035)
2020-10-07 07:35:37 +0200vonfry(~user@li1870-189.members.linode.com)
2020-10-07 07:36:58 +0200hackagecabal-rpm 2.0.7 - RPM packaging tool for Haskell Cabal-based packages https://hackage.haskell.org/package/cabal-rpm-2.0.7 (JensPetersen)
2020-10-07 07:37:45 +0200xff0x_(~fox@2001:1a81:5374:e100:c1d9:fc1f:d0ea:8e49) (Ping timeout: 272 seconds)
2020-10-07 07:38:19 +0200xff0x_(~fox@2001:1a81:5374:e100:2800:5137:cbd5:b8c6)
2020-10-07 07:38:48 +0200fresheyeball(~isaac@c-71-237-105-37.hsd1.co.comcast.net)
2020-10-07 07:39:51 +0200bahamas(~lucian@unaffiliated/bahamas)
2020-10-07 07:46:45 +0200snakemas1(~snakemast@213.100.206.23)
2020-10-07 07:47:33 +0200howdoi(uid224@gateway/web/irccloud.com/x-bptppyjybdukwtgy) (Quit: Connection closed for inactivity)
2020-10-07 07:47:41 +0200thir(~thir@p200300f27f0fc60038c1b16891cbfa03.dip0.t-ipconnect.de)
2020-10-07 07:47:55 +0200justanotheruser(~justanoth@unaffiliated/justanotheruser) (Ping timeout: 240 seconds)
2020-10-07 07:48:35 +0200LarryTheCow(~user@cpe-104-34-71-94.socal.res.rr.com) (Remote host closed the connection)
2020-10-07 07:48:50 +0200LarryTheCow(~user@cpe-104-34-71-94.socal.res.rr.com)
2020-10-07 07:51:55 +0200thir(~thir@p200300f27f0fc60038c1b16891cbfa03.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2020-10-07 07:52:16 +0200danso(~dan@107-190-41-58.cpe.teksavvy.com) (Quit: WeeChat 2.9)
2020-10-07 08:00:31 +0200thir(~thir@p200300f27f0fc60038c1b16891cbfa03.dip0.t-ipconnect.de)
2020-10-07 08:03:03 +0200LarryThe`(~user@cpe-104-34-71-94.socal.res.rr.com)
2020-10-07 08:05:06 +0200LarryTheCow(~user@cpe-104-34-71-94.socal.res.rr.com) (Ping timeout: 272 seconds)
2020-10-07 08:05:45 +0200ransom(c4264035@gateway/vpn/protonvpn/c4264035) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-07 08:07:08 +0200dansho(~dansho@ip68-108-167-185.lv.lv.cox.net) (Remote host closed the connection)
2020-10-07 08:07:34 +0200dansho(~dansho@ip68-108-167-185.lv.lv.cox.net)
2020-10-07 08:08:02 +0200LarryThe`(~user@cpe-104-34-71-94.socal.res.rr.com) (Remote host closed the connection)
2020-10-07 08:08:55 +0200Sheilong(uid293653@gateway/web/irccloud.com/x-duklgmscrxrumecv) (Quit: Connection closed for inactivity)
2020-10-07 08:09:01 +0200danvet_(~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa)
2020-10-07 08:13:25 +0200ryansmccoy(~ryansmcco@193.37.254.27) (Ping timeout: 264 seconds)
2020-10-07 08:14:05 +0200ryansmccoy(~ryansmcco@193.37.254.27)
2020-10-07 08:14:17 +0200gxt(~gxt@gateway/tor-sasl/gxt) (Remote host closed the connection)
2020-10-07 08:14:17 +0200ChaiTRex(~ChaiTRex@gateway/tor-sasl/chaitrex) (Remote host closed the connection)
2020-10-07 08:14:17 +0200gehmehgeh(~ircuser1@gateway/tor-sasl/gehmehgeh) (Remote host closed the connection)
2020-10-07 08:14:17 +0200andreas303(~andreas@gateway/tor-sasl/andreas303) (Write error: Connection reset by peer)
2020-10-07 08:14:17 +0200ech(~user@gateway/tor-sasl/ech) (Remote host closed the connection)
2020-10-07 08:14:18 +0200Unhammer(~Unhammer@gateway/tor-sasl/unhammer) (Remote host closed the connection)
2020-10-07 08:14:18 +0200hekkaidekapus{(~tchouri@gateway/tor-sasl/hekkaidekapus) (Remote host closed the connection)
2020-10-07 08:14:18 +0200xelxebar(~xelxebar@gateway/tor-sasl/xelxebar) (Read error: Connection reset by peer)
2020-10-07 08:14:18 +0200jb55(~jb55@gateway/tor-sasl/jb55) (Write error: Connection reset by peer)
2020-10-07 08:14:18 +0200tomboy64(~tomboy64@gateway/tor-sasl/tomboy64) (Write error: Connection reset by peer)
2020-10-07 08:14:38 +0200xelxebar(~xelxebar@gateway/tor-sasl/xelxebar)
2020-10-07 08:14:45 +0200jb55(~jb55@gateway/tor-sasl/jb55)
2020-10-07 08:15:01 +0200tomboy64(~tomboy64@gateway/tor-sasl/tomboy64)
2020-10-07 08:15:02 +0200hekkaidekapus{(~tchouri@gateway/tor-sasl/hekkaidekapus)
2020-10-07 08:15:22 +0200gxt(~gxt@gateway/tor-sasl/gxt)
2020-10-07 08:16:02 +0200ChaiTRex(~ChaiTRex@gateway/tor-sasl/chaitrex)
2020-10-07 08:16:38 +0200Unhammer(~Unhammer@gateway/tor-sasl/unhammer)
2020-10-07 08:17:21 +0200andreas303(~andreas@gateway/tor-sasl/andreas303)
2020-10-07 08:17:55 +0200chele(~chele@ip5b416ea2.dynamic.kabel-deutschland.de)
2020-10-07 08:18:18 +0200cfricke(~cfricke@unaffiliated/cfricke)
2020-10-07 08:18:29 +0200danvet(~danvet@2a02:168:57f4:0:5f80:650d:c6e6:3453)
2020-10-07 08:18:39 +0200danvet(~danvet@2a02:168:57f4:0:5f80:650d:c6e6:3453) (Remote host closed the connection)
2020-10-07 08:18:51 +0200cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net)
2020-10-07 08:20:04 +0200alp(~alp@2a01:e0a:58b:4920:18a9:ec9:c879:c1d7)
2020-10-07 08:24:32 +0200gehmehgeh(~ircuser1@gateway/tor-sasl/gehmehgeh)
2020-10-07 08:24:33 +0200ech(~user@gateway/tor-sasl/ech)
2020-10-07 08:25:58 +0200hackagewebby 1.0.0 - A super-simple web server framework https://hackage.haskell.org/package/webby-1.0.0 (AdityaManthramurthy)
2020-10-07 08:29:37 +0200ddellacosta(~dd@86.106.121.168) (Ping timeout: 264 seconds)
2020-10-07 08:30:11 +0200Unhammer(~Unhammer@gateway/tor-sasl/unhammer) (Remote host closed the connection)
2020-10-07 08:31:34 +0200Unhammer(~Unhammer@gateway/tor-sasl/unhammer)
2020-10-07 08:32:45 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-10-07 08:33:08 +0200bitmagie(~Thunderbi@200116b806544c0001b098a712f8f440.dip.versatel-1u1.de)
2020-10-07 08:33:27 +0200hackagehw-balancedparens 0.4.1.1 - Balanced parentheses https://hackage.haskell.org/package/hw-balancedparens-0.4.1.1 (haskellworks)
2020-10-07 08:35:23 +0200steve__(~quassel@ool-18b99d28.dyn.optonline.net) (Ping timeout: 240 seconds)
2020-10-07 08:35:53 +0200steve_(~quassel@ool-18b99d28.dyn.optonline.net) (Ping timeout: 260 seconds)
2020-10-07 08:37:09 +0200snakemas1(~snakemast@213.100.206.23) (Ping timeout: 260 seconds)
2020-10-07 08:37:15 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 258 seconds)
2020-10-07 08:37:58 +0200xsperry(~as@unaffiliated/xsperry)
2020-10-07 08:40:06 +0200snakemas1(~snakemast@213.100.206.23)
2020-10-07 08:41:52 +0200spew(uid195861@gateway/web/irccloud.com/x-srtpfsrzrguwlscu) (Quit: Connection closed for inactivity)
2020-10-07 08:43:54 +0200steve_(~quassel@ool-18b99d28.dyn.optonline.net)
2020-10-07 08:43:55 +0200steve__(~quassel@ool-18b99d28.dyn.optonline.net)
2020-10-07 08:43:57 +0200bitmagie(~Thunderbi@200116b806544c0001b098a712f8f440.dip.versatel-1u1.de) (Quit: bitmagie)
2020-10-07 08:51:04 +0200coot(~coot@37.30.49.218.nat.umts.dynamic.t-mobile.pl)
2020-10-07 08:53:02 +0200coot_(~coot@37.30.49.218.nat.umts.dynamic.t-mobile.pl)
2020-10-07 08:54:33 +0200dhouthoo(~dhouthoo@ptr-eiv6509pb4ifhdr9lsd.18120a2.ip6.access.telenet.be)
2020-10-07 08:55:16 +0200Mlpearc(~Mlpearc@178.239.168.171)
2020-10-07 08:56:05 +0200coot(~coot@37.30.49.218.nat.umts.dynamic.t-mobile.pl) (Ping timeout: 240 seconds)
2020-10-07 08:56:05 +0200coot_coot
2020-10-07 08:56:20 +0200m0rphism(~m0rphism@HSI-KBW-046-005-177-122.hsi8.kabel-badenwuerttemberg.de)
2020-10-07 08:57:16 +0200tomku(~tomku@unaffiliated/tomku) (Ping timeout: 246 seconds)
2020-10-07 09:01:35 +0200todda7(~torstein@ppp141255053143.access.hol.gr)
2020-10-07 09:03:12 +0200gxt(~gxt@gateway/tor-sasl/gxt) (Remote host closed the connection)
2020-10-07 09:03:47 +0200thir(~thir@p200300f27f0fc60038c1b16891cbfa03.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2020-10-07 09:03:54 +0200gxt(~gxt@gateway/tor-sasl/gxt)
2020-10-07 09:04:18 +0200tomku(~tomku@unaffiliated/tomku)
2020-10-07 09:04:37 +0200ryansmccoy(~ryansmcco@193.37.254.27) (Ping timeout: 246 seconds)
2020-10-07 09:05:22 +0200ryansmccoy(~ryansmcco@193.37.254.27)
2020-10-07 09:05:37 +0200snakemas1(~snakemast@213.100.206.23) (Ping timeout: 258 seconds)
2020-10-07 09:06:55 +0200darjeeling_(~darjeelin@112.16.171.8)
2020-10-07 09:07:26 +0200fresheyeball(~isaac@c-71-237-105-37.hsd1.co.comcast.net) (Quit: WeeChat 2.7.1)
2020-10-07 09:09:25 +0200iteratee(~kyle@162.211.154.4)
2020-10-07 09:10:25 +0200glamas(~glamas@107.182.17.237) (Ping timeout: 264 seconds)
2020-10-07 09:10:58 +0200glamas(~glamas@107.182.17.237)
2020-10-07 09:11:51 +0200jinblack-(~JinBlack@2001:41d0:8:4b28::1)
2020-10-07 09:12:30 +0200lyxia_(~lyxia@poisson.chat)
2020-10-07 09:12:50 +0200jluttine_(~jluttine@87-95-204-180.bb.dnainternet.fi)
2020-10-07 09:13:03 +0200vicfred(~vicfred@unaffiliated/vicfred) (Quit: Leaving)
2020-10-07 09:13:03 +0200jinblack(~JinBlack@new.jinblack.it) (Ping timeout: 272 seconds)
2020-10-07 09:13:03 +0200iteratee_(~kyle@162.211.154.4) (Read error: Connection reset by peer)
2020-10-07 09:13:03 +0200lyxia(~lyxia@poisson.chat) (Ping timeout: 272 seconds)
2020-10-07 09:13:03 +0200jluttine(~jluttine@87-95-204-180.bb.dnainternet.fi) (Ping timeout: 272 seconds)
2020-10-07 09:13:03 +0200deu(de@uio.re) (Ping timeout: 272 seconds)
2020-10-07 09:13:23 +0200deu(de@uio.re)
2020-10-07 09:16:29 +0200 <dminuoso> % setr (each . _Left) 1 [Left 'c', Left 'd', Right "foo"] -- ski
2020-10-07 09:16:30 +0200 <yahb> dminuoso: ([1,1],[Left 1,Left 1,Right "foo"])
2020-10-07 09:16:36 +0200 <dminuoso> % setr :: Traversal s t a b -> b -> s -> ([b], t); setr l b = runRemember #. l (\_ -> Remember ([b], b))
2020-10-07 09:16:37 +0200 <yahb> dminuoso:
2020-10-07 09:16:48 +0200 <dminuoso> % newtype Remember b t = Remember ([b], t) deriving (Eq, Ord, Functor)
2020-10-07 09:16:49 +0200 <yahb> dminuoso:
2020-10-07 09:16:59 +0200 <dminuoso> % instance Applicative (Remember b) where pure a = Remember ([], a); Remember (fs, f) <*> Remember (gs, g) = Remember ((fs <> gs), f g)
2020-10-07 09:16:59 +0200 <yahb> dminuoso:
2020-10-07 09:17:51 +0200 <dminuoso> Also for you, unclechu, ^-
2020-10-07 09:18:55 +0200GyroW_(~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie)
2020-10-07 09:19:06 +0200carlomagno1(~cararell@inet-hqmc01-o.oracle.com)
2020-10-07 09:19:10 +0200GyroW(~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
2020-10-07 09:19:10 +0200GyroW(~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
2020-10-07 09:19:10 +0200GyroW(~GyroW@unaffiliated/gyrow)
2020-10-07 09:19:11 +0200 <dminuoso> It also occured to me, that you can just use (a,) instead of Remember.
2020-10-07 09:19:22 +0200fredcy(~fredcy@mail.yankowski.com) (Quit: ZNC - http://znc.in)
2020-10-07 09:19:24 +0200Graypup_(Graypup@lfcode.ca) (Quit: ZNC 1.6.1 - http://znc.in)
2020-10-07 09:19:38 +0200fredcy(~fredcy@mail.yankowski.com)
2020-10-07 09:19:38 +0200Graypup__(Graypup@lfcode.ca)
2020-10-07 09:20:00 +0200polux2001(~polux@51.15.169.172) (Quit: Ping timeout (120 seconds))
2020-10-07 09:20:01 +0200drupol(sid117588@gateway/web/irccloud.com/x-rynwclhcvdkvjpek) (Read error: Connection reset by peer)
2020-10-07 09:20:01 +0200alexknvl(sid259568@gateway/web/irccloud.com/x-shhushfytlhxjajz) (Read error: Connection reset by peer)
2020-10-07 09:20:05 +0200carlomagno(~cararell@inet-hqmc01-o.oracle.com) (Ping timeout: 240 seconds)
2020-10-07 09:20:12 +0200alexknvl(sid259568@gateway/web/irccloud.com/x-esxzjxwhwfjmhmwu)
2020-10-07 09:20:17 +0200polux2001(~polux@51.15.169.172)
2020-10-07 09:20:18 +0200drupol(sid117588@gateway/web/irccloud.com/x-botdgnvcemakmhms)
2020-10-07 09:20:25 +0200abhixec(~abhixec@c-67-169-141-95.hsd1.ca.comcast.net) (Ping timeout: 240 seconds)
2020-10-07 09:20:44 +0200vonfry(~user@li1870-189.members.linode.com) (Remote host closed the connection)
2020-10-07 09:20:49 +0200 <dminuoso> % setr :: Traversal s t a b -> b -> s -> ([b], t); setr l b = l (\_ -> ([b], b))
2020-10-07 09:20:49 +0200 <yahb> dminuoso:
2020-10-07 09:20:53 +0200 <dminuoso> Oh yeah, that's much much simpler. :)
2020-10-07 09:21:52 +0200snakemas1(~snakemast@213.100.206.23)
2020-10-07 09:22:22 +0200 <Squarism> dminuoso, was that for me?
2020-10-07 09:23:23 +0200 <dminuoso> No
2020-10-07 09:27:08 +0200mmohammadi98126(~mmohammad@5.238.172.236)
2020-10-07 09:30:20 +0200raichoo(~raichoo@213.240.178.58)
2020-10-07 09:33:33 +0200plutoniix(~q@175.176.222.7)
2020-10-07 09:34:16 +0200justsomeguy(~justsomeg@unaffiliated/--/x-3805311)
2020-10-07 09:35:06 +0200GyroW(~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie)
2020-10-07 09:35:11 +0200livvy(~livvy@gateway/tor-sasl/livvy)
2020-10-07 09:35:24 +0200GyroW(~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
2020-10-07 09:35:25 +0200GyroW(~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
2020-10-07 09:35:25 +0200GyroW(~GyroW@unaffiliated/gyrow)
2020-10-07 09:41:47 +0200nineonine(~nineonine@50.216.62.2) (Remote host closed the connection)
2020-10-07 09:41:59 +0200frot-lab(3b47f017@gateway/web/cgi-irc/kiwiirc.com/ip.59.71.240.23)
2020-10-07 09:42:27 +0200aarvar(~foewfoiew@50.35.43.33) (Ping timeout: 240 seconds)
2020-10-07 09:44:00 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-10-07 09:44:39 +0200 <siraben> If Foo is a newtype constructor, is map Foo a no-op?
2020-10-07 09:46:10 +0200 <dminuoso> % newtype Foo a = Foo a
2020-10-07 09:46:11 +0200 <yahb> dminuoso:
2020-10-07 09:46:40 +0200 <dminuoso> siraben: I dont think so.
2020-10-07 09:46:50 +0200 <dminuoso> But you can use coerce if you want it to be free.
2020-10-07 09:46:50 +0200 <siraben> dminuoso: I would need to use coerce right?
2020-10-07 09:46:52 +0200 <dminuoso> Right
2020-10-07 09:47:23 +0200 <tomsmeding> which begs the question: why _isn't_ it a no-op?
2020-10-07 09:47:23 +0200 <siraben> Ok
2020-10-07 09:47:46 +0200 <siraben> tomsmeding: looks like it's in the paper https://www.microsoft.com/en-us/research/uploads/prod/2018/05/coercible-JFP.pdf
2020-10-07 09:47:59 +0200 <siraben> The optimiser in the Glasgow Haskell Compiler (GHC) is powerless to fix the problem because it
2020-10-07 09:47:59 +0200 <siraben> works over a typed intermediate language; the MkHTML constructor changes the type of its operand, and hence cannot be optimised away.
2020-10-07 09:48:34 +0200 <tomsmeding> I see
2020-10-07 09:48:45 +0200 <tomsmeding> that's unfortunate
2020-10-07 09:51:19 +0200 <tomsmeding> still, that claim is untrue
2020-10-07 09:51:27 +0200 <tomsmeding> the map could be replaced with a coerce!
2020-10-07 09:51:31 +0200 <tomsmeding> and the result would still typecheck
2020-10-07 09:52:06 +0200 <tomsmeding> that's quite a specific optimisation, but "cannot be optimised away" is too strong I think
2020-10-07 09:52:19 +0200 <siraben> can it be optimized away without coerce
2020-10-07 09:53:02 +0200 <dminuoso> tomsmeding: Given the 4 authors of the paper, Im quite convinced they do know what they're talking about. :p
2020-10-07 09:53:10 +0200 <tomsmeding> dminuoso: fair point :p
2020-10-07 09:53:29 +0200 <tomsmeding> perhaps they meant that it could not be optimised without coerce, as siraben said
2020-10-07 09:53:34 +0200 <tomsmeding> but then now we have coerce...? :p
2020-10-07 09:53:40 +0200 <tomsmeding> anyhow
2020-10-07 09:53:58 +0200 <dminuoso> Well, coerce is the *result* of that paper.
2020-10-07 09:53:59 +0200 <siraben> tomsmeding: the paper is about implementing coerce...
2020-10-07 09:54:04 +0200 <tomsmeding> I know!
2020-10-07 09:54:19 +0200borne(~fritjof@2001:638:708:30da:5a9f:5f48:16a:a1d1)
2020-10-07 09:54:21 +0200 <tomsmeding> I'm asking about now, 4 years after that paper :p
2020-10-07 09:54:32 +0200 <siraben> I think claim is still true then? Seems like you would have to insert coerce manually
2020-10-07 09:54:33 +0200 <tomsmeding> why map Foo is apparently not a no-op
2020-10-07 09:54:35 +0200 <siraben> Would have to check GHC Core to be sure.
2020-10-07 09:54:53 +0200 <tomsmeding> so my core (heh) question is, why doesn't ghc insert a coerce as an optimisation
2020-10-07 09:55:48 +0200 <siraben> fmap Foo is a no-op because of the functor law, right?
2020-10-07 09:55:55 +0200 <siraben> fmap id = idF
2020-10-07 09:56:11 +0200 <dminuoso> 09:55:48 siraben | fmap Foo is a no-op because of the functor law, right?
2020-10-07 09:56:18 +0200 <dminuoso> GHC does not use these laws.
2020-10-07 09:56:26 +0200 <dminuoso> It cant because it doesn't know whether they are even satisfied.
2020-10-07 09:57:05 +0200 <dminuoso> (This is why things like Co/Yoneda are so useful, because they help GHC fuse without knowing about functor laws)
2020-10-07 09:57:29 +0200cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Ping timeout: 265 seconds)
2020-10-07 09:57:50 +0200 <siraben> Ah I have not used the yoneda library
2020-10-07 09:58:06 +0200 <dminuoso> So it'd have to reconstruct that knowledge from the definition of map (if its inlined at all!)
2020-10-07 09:58:21 +0200 <dminuoso> And I dont know whether GHC can do that at all.
2020-10-07 09:58:22 +0200bor0(~boro@unaffiliated/boro/x-000000001)
2020-10-07 09:58:43 +0200 <dminuoso> So, for all GHC knows, `map Foo` could change the length of a list for example.
2020-10-07 09:59:35 +0200 <dminuoso> In some trivial cases GHC can figure this out for sure. But once you get into recursive definitions, I think it starts to get slippery.
2020-10-07 10:00:08 +0200 <dminuoso> So perhaps `fmap Foo` might be a no-op for Identity
2020-10-07 10:00:27 +0200 <dminuoso> (Again, if the definition of fmap is inlined at all)
2020-10-07 10:00:48 +0200jonatanb(~jonatanb@79.184.190.239.ipv4.supernova.orange.pl)
2020-10-07 10:00:52 +0200 <tomsmeding> > `map Foo` could change the length for example | indeed, this is quite an involved optimisation that would have to inspect the definition of 'map'
2020-10-07 10:00:55 +0200 <lambdabot> <hint>:1:1: error: <hint>:1:1: error: parse error on input ‘`’
2020-10-07 10:00:59 +0200CheRRy2fly21(~CheRRy@129.205.112.30)
2020-10-07 10:00:59 +0200 <tomsmeding> that's a fair point
2020-10-07 10:01:40 +0200 <tomsmeding> for the trivial program: newtype Foo a = Foo a deriving (Show) ; main = getContents >>= print . map Foo . lines
2020-10-07 10:01:49 +0200 <tomsmeding> ghc -ddump-simpl does seem to introduce a `cast`
2020-10-07 10:02:10 +0200chaosmasttter(~chaosmast@p200300c4a70b400140e8baf6489c3871.dip0.t-ipconnect.de)
2020-10-07 10:02:40 +0200frot-labhungrydonkey
2020-10-07 10:02:48 +0200 <tomsmeding> https://paste.tomsmeding.com/fzcokv87
2020-10-07 10:03:36 +0200 <tomsmeding> (that's the only definition in the -ddump-simpl output that contains a call to 'lines', to sort-of justify exclusion of all the rest)
2020-10-07 10:04:12 +0200 <dminuoso> Well you cant trust GHC to do this in all the places. So if you really need this to be free, just coerce.
2020-10-07 10:04:28 +0200 <dminuoso> I'd be interested in how GHC knows that cast is appropriate here.
2020-10-07 10:04:28 +0200GyroW(~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie)
2020-10-07 10:04:34 +0200 <dminuoso> Perhaps it's special cased for map?
2020-10-07 10:04:48 +0200GyroW(~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
2020-10-07 10:04:49 +0200GyroW(~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
2020-10-07 10:04:49 +0200GyroW(~GyroW@unaffiliated/gyrow)
2020-10-07 10:05:00 +0200 <dminuoso> Since GHC can know that map at least satisfies functor laws.
2020-10-07 10:05:14 +0200 <tomsmeding> perhaps
2020-10-07 10:05:21 +0200 <dminuoso> What happens if you use fmap instead of map?
2020-10-07 10:05:33 +0200 <dminuoso> Oh well, that might not be helpfujl
2020-10-07 10:05:48 +0200 <dminuoso> https://hackage.haskell.org/package/base-4.14.0.0/docs/src/GHC.Base.html#line-1115
2020-10-07 10:05:54 +0200 <dminuoso> Yeah no that wont help, it'll just get inlined
2020-10-07 10:06:13 +0200 <tomsmeding> same output :p
2020-10-07 10:06:28 +0200 <dminuoso> What if you had `IO [Something]` and `fmap . fmap` with that?
2020-10-07 10:06:32 +0200yoneda(~mike@193.206.102.122)
2020-10-07 10:07:48 +0200 <tomsmeding> I re-implemented map as map2 and called that instead, and now I _think_ the cast is gone?
2020-10-07 10:07:56 +0200 <tomsmeding> like, there still is a cast, but it also explicitly calls map2
2020-10-07 10:08:05 +0200todda7(~torstein@ppp141255053143.access.hol.gr) (Ping timeout: 240 seconds)
2020-10-07 10:08:21 +0200 <tomsmeding> https://paste.tomsmeding.com/gdJrKr2U
2020-10-07 10:09:30 +0200 <tomsmeding> dminuoso: for 'main = fmap (fmap Foo) (fmap lines getContents) >>= print', same output as the original case, so map is elided
2020-10-07 10:09:55 +0200falafel(~falafel@2605:e000:1527:d491:1ccf:5c8d:7928:e9cc) (Ping timeout: 240 seconds)
2020-10-07 10:10:10 +0200cpressey(~cpressey@88.144.95.3)
2020-10-07 10:11:32 +0200Sgeo(~Sgeo@ool-18b982ad.dyn.optonline.net) (Read error: Connection reset by peer)
2020-10-07 10:12:52 +0200 <dminuoso> Well, it's good to know that for the `IO [A]` case it gets optimized away. That's nice to hear, since getting a coerce in can create some additional undesirable noise.
2020-10-07 10:13:29 +0200 <dminuoso> I frequently have that problem when working with postgresql-simple, say for some (query ...) :: IO [Only Int]
2020-10-07 10:13:44 +0200 <dminuoso> Never bothered to analyze core because it was just an annoyance, not a performance issue.
2020-10-07 10:13:45 +0200bahamas(~lucian@unaffiliated/bahamas) (Ping timeout: 240 seconds)
2020-10-07 10:17:54 +0200Clough(~Cain@27-33-147-252.static.tpgi.com.au) (Read error: Connection reset by peer)
2020-10-07 10:19:19 +0200mmohammadi981266(~mmohammad@5.115.44.157)
2020-10-07 10:19:23 +0200GyroW(~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie)
2020-10-07 10:19:33 +0200GyroW(~GyroW@d54C03E98.access.telenet.be)
2020-10-07 10:19:33 +0200GyroW(~GyroW@d54C03E98.access.telenet.be) (Changing host)
2020-10-07 10:19:33 +0200GyroW(~GyroW@unaffiliated/gyrow)
2020-10-07 10:20:53 +0200mmohammadi98126(~mmohammad@5.238.172.236) (Ping timeout: 260 seconds)
2020-10-07 10:21:09 +0200 <dminuoso> maerwald: https://gist.github.com/dminuoso/daa633ce513a71b5df3bfef0c0b41e5c
2020-10-07 10:21:18 +0200 <dminuoso> I feel being lied to.
2020-10-07 10:21:43 +0200bahamas(~lucian@188.24.181.166)
2020-10-07 10:21:43 +0200bahamas(~lucian@188.24.181.166) (Changing host)
2020-10-07 10:21:43 +0200bahamas(~lucian@unaffiliated/bahamas)
2020-10-07 10:21:58 +0200 <maerwald> dminuoso: ghcup set ghc 8.6.5
2020-10-07 10:22:17 +0200 <dminuoso> Ah. :>
2020-10-07 10:22:20 +0200 <maerwald> both commands shouldn't even parse
2020-10-07 10:22:25 +0200 <dminuoso> They do!
2020-10-07 10:22:28 +0200sw1nn(~sw1nn@2a00:23c6:2385:3a00:f5c5:6984:9c64:d791) (Quit: WeeChat 2.9)
2020-10-07 10:22:32 +0200 <dminuoso> The install even worked that wa
2020-10-07 10:22:38 +0200 <maerwald> that's because the version parser is too lax
2020-10-07 10:22:41 +0200 <dminuoso> heh
2020-10-07 10:22:51 +0200 <dminuoso> [ Error ] NotInstalled GHC "8.6.5"
2020-10-07 10:22:59 +0200xerox_(~xerox@unaffiliated/xerox) (Ping timeout: 240 seconds)
2020-10-07 10:23:02 +0200 <dminuoso> The diagnostic suggested that `ghc set ghc-8.6.5` was parsed properly
2020-10-07 10:23:15 +0200 <maerwald> read the second line of the output :)
2020-10-07 10:23:23 +0200 <dminuoso> Sure, but that reads more like a deprecation notice
2020-10-07 10:23:45 +0200 <dminuoso> But anyhow, cheers.
2020-10-07 10:23:50 +0200sw1nn(~sw1nn@host86-173-104-87.range86-173.btcentralplus.com)
2020-10-07 10:24:09 +0200 <maerwald> I'm not even sure why the first one succeeds
2020-10-07 10:25:32 +0200xerox_(~xerox@unaffiliated/xerox)
2020-10-07 10:26:07 +0200mmohammadi981266(~mmohammad@5.115.44.157) (Ping timeout: 258 seconds)
2020-10-07 10:26:21 +0200CheRRy2fly21(~CheRRy@129.205.112.30) (Ping timeout: 260 seconds)
2020-10-07 10:28:15 +0200hungrydonkey(3b47f017@gateway/web/cgi-irc/kiwiirc.com/ip.59.71.240.23) (Quit: Connection closed)
2020-10-07 10:28:38 +0200justsomeguy(~justsomeg@unaffiliated/--/x-3805311) ()
2020-10-07 10:28:57 +0200 <maerwald> dminuoso: I think you just made ghcup believe that is a cross-compiler :)
2020-10-07 10:29:52 +0200 <maerwald> ghcup install bar-8.6.3 # works as well
2020-10-07 10:30:40 +0200 <maerwald> the pre-version part is assumed to be a triple like armv7-unknown-linux-gnueabihf
2020-10-07 10:30:41 +0200frot-lab(3b47f017@gateway/web/cgi-irc/kiwiirc.com/ip.59.71.240.23)
2020-10-07 10:30:56 +0200mmohammadi981266(~mmohammad@5.238.172.236)
2020-10-07 10:33:18 +0200 <dminuoso> GHC is a pretty obscure architecture
2020-10-07 10:33:29 +0200 <dminuoso> :P
2020-10-07 10:33:44 +0200 <dminuoso> Btw, that triple has 4 parts to it!
2020-10-07 10:33:47 +0200darjeeling_(~darjeelin@112.16.171.8) (Ping timeout: 240 seconds)
2020-10-07 10:36:27 +0200Mlpearc(~Mlpearc@178.239.168.171) (Remote host closed the connection)
2020-10-07 10:37:19 +0200GyroW_(~GyroW@d54C03E98.access.telenet.be)
2020-10-07 10:37:19 +0200GyroW_(~GyroW@d54C03E98.access.telenet.be) (Changing host)
2020-10-07 10:37:19 +0200GyroW_(~GyroW@unaffiliated/gyrow)
2020-10-07 10:37:44 +0200GyroW(~GyroW@unaffiliated/gyrow) (Ping timeout: 272 seconds)
2020-10-07 10:39:24 +0200kuribas(~user@ptr-25vy0i76pxhcqkyum1g.18120a2.ip6.access.telenet.be)
2020-10-07 10:42:39 +0200shatriff(~vitaliish@217.27.153.240) (Remote host closed the connection)
2020-10-07 10:43:20 +0200shatriff(~vitaliish@217.27.153.240)
2020-10-07 10:44:27 +0200GyroW(~GyroW@d54C03E98.access.telenet.be)
2020-10-07 10:44:27 +0200GyroW(~GyroW@d54C03E98.access.telenet.be) (Changing host)
2020-10-07 10:44:27 +0200GyroW(~GyroW@unaffiliated/gyrow)
2020-10-07 10:44:45 +0200GyroW_(~GyroW@unaffiliated/gyrow) (Ping timeout: 240 seconds)
2020-10-07 10:44:45 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-07 10:45:15 +0200thc202(~thc202@unaffiliated/thc202)
2020-10-07 10:45:27 +0200xff0x_(~fox@2001:1a81:5374:e100:2800:5137:cbd5:b8c6) (Ping timeout: 240 seconds)
2020-10-07 10:45:33 +0200 <tomsmeding> 2020, the year in which triples have four elements
2020-10-07 10:46:06 +0200LKoen(~LKoen@81.255.219.130)
2020-10-07 10:46:31 +0200xff0x_(~fox@2001:1a81:5374:e100:90a4:ed3f:c45e:9759)
2020-10-07 10:47:56 +0200ixlun(~matthew@213.205.241.94)
2020-10-07 10:49:46 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 272 seconds)
2020-10-07 10:52:15 +0200 <maerwald> dminuoso: 3
2020-10-07 10:52:31 +0200 <maerwald> "unknown-linux" is one :p
2020-10-07 10:52:37 +0200 <kuribas> > length (1, 2, (3, 4))
2020-10-07 10:52:39 +0200 <lambdabot> error:
2020-10-07 10:52:39 +0200 <lambdabot> • No instance for (Foldable ((,,) Integer Integer))
2020-10-07 10:52:39 +0200 <lambdabot> arising from a use of ‘length’
2020-10-07 10:52:47 +0200 <kuribas> > length (1, (2, (3, 4)))
2020-10-07 10:52:49 +0200 <lambdabot> 1
2020-10-07 10:53:55 +0200shatriff(~vitaliish@217.27.153.240) (Ping timeout: 256 seconds)
2020-10-07 10:55:53 +0200hnOsmium0001(uid453710@gateway/web/irccloud.com/x-wkoagvlxhlhmtgti) (Quit: Connection closed for inactivity)
2020-10-07 10:56:44 +0200 <dminuoso> maerwald: Oh I know. ;)
2020-10-07 10:58:11 +0200 <dminuoso> kuribas: There's a debatable `instance Foldable ((,) a)`
2020-10-07 10:58:19 +0200 <dminuoso> But it doesn't exist for longer tuples
2020-10-07 10:58:53 +0200 <kuribas> :t length
2020-10-07 10:58:54 +0200 <lambdabot> Foldable t => t a -> Int
2020-10-07 10:59:32 +0200 <dminuoso> The idea is that `(a,)` is a Foldable if we think of it as a 1-element container with some extra baggage. :p
2020-10-07 11:00:29 +0200ttc(tomtauma1@gateway/shell/matrix.org/x-jhgolvjpuztnuiul) (Quit: Idle for 30+ days)
2020-10-07 11:01:13 +0200thir(~thir@p200300f27f0fc60038c1b16891cbfa03.dip0.t-ipconnect.de)
2020-10-07 11:02:03 +0200wangoe[m](wangoematr@gateway/shell/matrix.org/x-ygktxbgtoupbgdmu) (Quit: Idle for 30+ days)
2020-10-07 11:02:22 +0200gcoakes[m](gcoakesmat@gateway/shell/matrix.org/x-klflsytbyxwgnxns) ("Kicked by @appservice-irc:matrix.org : Idle for 30+ days")
2020-10-07 11:02:58 +0200 <kuribas> > (1, 2, (3, 4)) ..^ (folded . to length)
2020-10-07 11:03:00 +0200 <lambdabot> error:
2020-10-07 11:03:00 +0200 <lambdabot> • Variable not in scope:
2020-10-07 11:03:00 +0200 <lambdabot> (..^)
2020-10-07 11:03:12 +0200 <kuribas> > (1, 2, (3, 4)) ^.. (folded . to length)
2020-10-07 11:03:15 +0200 <lambdabot> error:
2020-10-07 11:03:15 +0200 <lambdabot> • No instance for (Foldable ((,,) Integer Integer))
2020-10-07 11:03:15 +0200 <lambdabot> arising from a use of ‘folded’
2020-10-07 11:03:38 +0200DavidEichmann(~david@43.240.198.146.dyn.plus.net)
2020-10-07 11:03:46 +0200 <kuribas> dminuoso: the type system prevents any other instance for tuple.
2020-10-07 11:04:28 +0200 <dminuoso> Huh?
2020-10-07 11:04:42 +0200 <dminuoso> We can write `instance Foldable ((,,) a b) where ...` just fine
2020-10-07 11:04:54 +0200ahmr88(~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net)
2020-10-07 11:05:27 +0200thir(~thir@p200300f27f0fc60038c1b16891cbfa03.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2020-10-07 11:05:35 +0200tsrt^(tsrt@ip98-184-89-2.mc.at.cox.net) ()
2020-10-07 11:06:48 +0200 <kuribas> I mean for 2 tuple
2020-10-07 11:07:15 +0200ffl^(ffl@ip98-184-89-2.mc.at.cox.net)
2020-10-07 11:08:02 +0200 <dminuoso> kuribas: Just because it's possible to write an instance, it doesn't make it good.
2020-10-07 11:08:17 +0200 <dminuoso> I think the `Foldable ((,) a)` instance shouldn't exist at all
2020-10-07 11:08:26 +0200mmohammadi981266(~mmohammad@5.238.172.236) (Ping timeout: 256 seconds)
2020-10-07 11:08:44 +0200 <dminuoso> It will just type check for the odd `foldMap f g` and very likely do something unexpected.
2020-10-07 11:08:51 +0200 <kuribas> it doesn't look that useful.
2020-10-07 11:09:07 +0200__skn(~sunil@sec.nimmagadda.net) (Quit: ZNC 1.7.1 - https://znc.in)
2020-10-07 11:09:31 +0200 <dminuoso> I mean if I did `sum (10,20)` I'd naively expect that to yield 30 or not type check.
2020-10-07 11:09:36 +0200 <dminuoso> Instead I get `20`
2020-10-07 11:09:45 +0200todda7(~torstein@athedsl-4367507.home.otenet.gr)
2020-10-07 11:09:47 +0200 <dminuoso> Principle of maximum surprise. :)
2020-10-07 11:09:56 +0200 <kuribas> dminuoso: but that sum is more polymorphic
2020-10-07 11:10:17 +0200 <dminuoso> So?
2020-10-07 11:10:46 +0200 <ptrcmd> > sum (10, 20)
2020-10-07 11:10:49 +0200 <lambdabot> 20
2020-10-07 11:10:54 +0200 <ptrcmd> lol
2020-10-07 11:11:02 +0200 <kuribas> how do you sum ("10", 20)?
2020-10-07 11:11:15 +0200alp(~alp@2a01:e0a:58b:4920:18a9:ec9:c879:c1d7) (Remote host closed the connection)
2020-10-07 11:11:34 +0200alp(~alp@2a01:e0a:58b:4920:3027:b807:1b0e:5ebe)
2020-10-07 11:12:18 +0200__monty__(~toonn@unaffiliated/toonn)
2020-10-07 11:12:25 +0200 <dminuoso> It's sort of how `lens` allows you to view through a Traversal.
2020-10-07 11:12:37 +0200 <dminuoso> I mean yeah, there's a sensible implementation, but it likely doesn't do what you think it does.
2020-10-07 11:13:19 +0200 <dminuoso> % [Product 10, Product 20, Product 30] ^. each
2020-10-07 11:13:19 +0200 <yahb> dminuoso: Product {getProduct = 6000}
2020-10-07 11:14:30 +0200 <dminuoso> Sometimes leaving out an obvious implementation helps avoid people trip into bugs because the code type checks and does something very unexpected.
2020-10-07 11:15:33 +0200 <kuribas> % (Sum 10, Sum 20) ^. each
2020-10-07 11:15:33 +0200 <yahb> kuribas: Sum {getSum = 30}
2020-10-07 11:15:53 +0200 <dminuoso> If you consider something less obvious like
2020-10-07 11:16:11 +0200bor0(~boro@unaffiliated/boro/x-000000001) (Quit: Leaving)
2020-10-07 11:16:16 +0200 <dminuoso> % [Left 'f', Right 1, Left 'o', Right 2, Left 'o'] ^. each._Left
2020-10-07 11:16:16 +0200 <yahb> dminuoso: ; <interactive>:71:53: error:; * No instance for (Monoid Char) arising from a use of `each'; * In the first argument of `(.)', namely `each'; In the second argument of `(^.)', namely `each . _Left'; In the expression: [Left 'f', Right 1, Left 'o', Right 2, ....] ^. each . _Left
2020-10-07 11:16:16 +0200 <kuribas> :t each
2020-10-07 11:16:19 +0200 <lambdabot> (Each s t a b, Applicative f) => (a -> f b) -> s -> f t
2020-10-07 11:16:37 +0200 <dminuoso> But then do something like
2020-10-07 11:16:50 +0200 <dminuoso> % [Left "f", Right 1, Left "o", Right 2, Left "o"] ^. (each._Left)
2020-10-07 11:16:50 +0200 <yahb> dminuoso: "foo"
2020-10-07 11:17:13 +0200 <dminuoso> It's not very obvious what's happening. Especially because `(^.)` doesnt make that obvious
2020-10-07 11:17:33 +0200 <dminuoso> (^.) :: s -> Getting a s a -> a
2020-10-07 11:17:37 +0200 <dminuoso> type Getting r s a = (a -> Const r a) -> s -> Const r s
2020-10-07 11:17:48 +0200 <dminuoso> And then, if you stare at the above Applicative constraint
2020-10-07 11:17:50 +0200 <dminuoso> you get
2020-10-07 11:18:00 +0200 <dminuoso> instance Monoid m => Applicative (Const m :: Type -> Type)
2020-10-07 11:18:21 +0200 <dminuoso> So yeah. Everything works out somehow
2020-10-07 11:18:39 +0200mmohammadi981266(~mmohammad@5.238.172.236)
2020-10-07 11:19:15 +0200alp(~alp@2a01:e0a:58b:4920:3027:b807:1b0e:5ebe) (Read error: Connection reset by peer)
2020-10-07 11:19:23 +0200 <kuribas> lenses leaky abstractions
2020-10-07 11:19:27 +0200 <dminuoso> Which is one of the reasons I like optics more
2020-10-07 11:19:33 +0200 <dminuoso> optics just flat out fails with a type error on that one
2020-10-07 11:19:35 +0200alp(~alp@2a01:e0a:58b:4920:3027:b807:1b0e:5ebe)
2020-10-07 11:19:40 +0200 <dminuoso> And forces you to use a fold explicitly if you wanted that
2020-10-07 11:20:46 +0200ubert(~Thunderbi@2a02:8109:9880:303c:ca5b:76ff:fe29:f233)
2020-10-07 11:24:57 +0200 <tomjaguarpaw> I've been bitten by (^.) doing mconcat on the targets. I wish they hadn't supported that (but instead provided a different combinator that does do that. "mconcatOf" would have been fine).
2020-10-07 11:25:38 +0200bahamas(~lucian@unaffiliated/bahamas) (Ping timeout: 260 seconds)
2020-10-07 11:29:35 +0200shatriff(~vitaliish@88.155.140.206)
2020-10-07 11:31:05 +0200oxide(~lambda@unaffiliated/mclaren) (Ping timeout: 240 seconds)
2020-10-07 11:31:49 +0200seanvert(~user@177.84.244.242)
2020-10-07 11:36:00 +0200GyroW(~GyroW@unaffiliated/gyrow) (Ping timeout: 272 seconds)
2020-10-07 11:36:04 +0200GyroW_(~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
2020-10-07 11:36:04 +0200GyroW_(~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
2020-10-07 11:36:04 +0200GyroW_(~GyroW@unaffiliated/gyrow)
2020-10-07 11:38:47 +0200dansho(~dansho@ip68-108-167-185.lv.lv.cox.net) (Quit: Leaving)
2020-10-07 11:39:44 +0200ahmr88(~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net) (Remote host closed the connection)
2020-10-07 11:41:38 +0200Kaeipi(~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net) (Ping timeout: 258 seconds)
2020-10-07 11:42:47 +0200toorevitimirp(~tooreviti@117.182.180.245) (Ping timeout: 240 seconds)
2020-10-07 11:45:18 +0200da39a3ee5e6b4b0d(~textual@n11211935170.netvigator.com) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-07 11:46:06 +0200darjeeling_(~darjeelin@115.215.43.235)
2020-10-07 11:47:01 +0200zebrag(~inkbottle@aaubervilliers-654-1-109-218.w86-212.abo.wanadoo.fr) (Ping timeout: 246 seconds)
2020-10-07 11:47:06 +0200inkbottle(~inkbottle@aaubervilliers-654-1-100-191.w86-212.abo.wanadoo.fr)
2020-10-07 11:47:07 +0200GyroW_(~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie)
2020-10-07 11:47:25 +0200GyroW(~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
2020-10-07 11:47:26 +0200GyroW(~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
2020-10-07 11:47:26 +0200GyroW(~GyroW@unaffiliated/gyrow)
2020-10-07 11:47:28 +0200Gurkenglas(~Gurkengla@unaffiliated/gurkenglas)
2020-10-07 11:48:50 +0200CheRRy2fly21(~CheRRy@129.205.112.30)
2020-10-07 11:50:10 +0200CheRRy2fly21(~CheRRy@129.205.112.30) (Read error: Connection reset by peer)
2020-10-07 11:50:59 +0200CheRRy2fly21(~CheRRy@178.ip-51-38-83.eu)
2020-10-07 11:51:34 +0200xerox_(~xerox@unaffiliated/xerox) (Ping timeout: 256 seconds)
2020-10-07 11:52:05 +0200aveltras(~user@2a04:cec0:1102:eae2:4787:5217:6352:49cb)
2020-10-07 11:52:40 +0200CheRRy243(~CheRRy@129.205.112.30)
2020-10-07 11:55:29 +0200CheRRy2fly21(~CheRRy@178.ip-51-38-83.eu) (Ping timeout: 260 seconds)
2020-10-07 11:55:36 +0200seanvert`(~user@177.84.244.242)
2020-10-07 11:56:16 +0200MarkusH1(~MarkusH@185.163.110.116)
2020-10-07 11:56:36 +0200plutoniix(~q@175.176.222.7) (Ping timeout: 256 seconds)
2020-10-07 11:56:47 +0200seanvert(~user@177.84.244.242) (Ping timeout: 240 seconds)
2020-10-07 11:56:49 +0200lemmih_lemmih
2020-10-07 11:58:10 +0200toorevitimirp(~tooreviti@117.182.180.245)
2020-10-07 11:58:49 +0200shatriff(~vitaliish@88.155.140.206) (Remote host closed the connection)
2020-10-07 11:59:41 +0200CheRRy243(~CheRRy@129.205.112.30) (Ping timeout: 260 seconds)
2020-10-07 12:00:19 +0200theDon(~td@muedsl-82-207-238-023.citykom.de)
2020-10-07 12:01:52 +0200aveltras(~user@2a04:cec0:1102:eae2:4787:5217:6352:49cb) (Remote host closed the connection)
2020-10-07 12:02:02 +0200ahmr88(~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net)
2020-10-07 12:02:35 +0200ahmr88(~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net) (Remote host closed the connection)
2020-10-07 12:03:00 +0200aveltras(~user@80.214.147.197)
2020-10-07 12:03:43 +0200ahmr88(~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net)
2020-10-07 12:05:07 +0200seanvert`(~user@177.84.244.242) (Ping timeout: 240 seconds)
2020-10-07 12:06:46 +0200aveltras`(~user@2a04:cec0:110f:7659:874c:71a7:1699:6ea)
2020-10-07 12:06:53 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6)
2020-10-07 12:07:28 +0200aveltras`(~user@2a04:cec0:110f:7659:874c:71a7:1699:6ea) (Remote host closed the connection)
2020-10-07 12:09:27 +0200hackagehsinspect 0.0.15 - Inspect Haskell source files. https://hackage.haskell.org/package/hsinspect-0.0.15 (tseenshe)
2020-10-07 12:09:42 +0200aveltras(~user@80.214.147.197) (Ping timeout: 256 seconds)
2020-10-07 12:09:52 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6) (Read error: Connection reset by peer)
2020-10-07 12:09:52 +0200xerox_(~xerox@unaffiliated/xerox)
2020-10-07 12:11:00 +0200raichoo(~raichoo@213.240.178.58) (Quit: Lost terminal)
2020-10-07 12:11:14 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6)
2020-10-07 12:11:17 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6) (Remote host closed the connection)
2020-10-07 12:12:02 +0200da39a3ee5e6b4b0d(~textual@n11211935170.netvigator.com)
2020-10-07 12:17:15 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6)
2020-10-07 12:17:33 +0200ralejs(~ralejs@2620:10d:c093:400::5:2842) (Read error: Connection reset by peer)
2020-10-07 12:17:47 +0200fendor(~fendor@77.119.128.199.wireless.dyn.drei.com)
2020-10-07 12:18:01 +0200ralejs(~ralejs@2620:10d:c093:400::5:2842)
2020-10-07 12:19:59 +0200carlomagno(~cararell@inet-hqmc01-o.oracle.com)
2020-10-07 12:22:52 +0200carlomagno1(~cararell@inet-hqmc01-o.oracle.com) (Ping timeout: 272 seconds)
2020-10-07 12:26:42 +0200Echosolace(99e47769@p790105-ipngn4101hiraide.tochigi.ocn.ne.jp)
2020-10-07 12:26:45 +0200boxscape(86ab2d1a@gateway/web/cgi-irc/kiwiirc.com/ip.134.171.45.26)
2020-10-07 12:27:04 +0200 <Echosolace> Whoa... this looks like the place.
2020-10-07 12:27:44 +0200 <boxscape> hmm I wonder if there could be a way to add a default signature requiring Monad to one of the Applicative methods (so you don't have to write liftA2 = liftM2 explicitly) without compromising the existing mutual definitions of liftA2 and <*>
2020-10-07 12:27:45 +0200Gurkenglas(~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 240 seconds)
2020-10-07 12:28:09 +0200olligobber(olligobber@gateway/vpn/privateinternetaccess/olligobber) (Ping timeout: 260 seconds)
2020-10-07 12:28:41 +0200 <dminuoso> I dont see why you couldn't.
2020-10-07 12:29:04 +0200 <boxscape> Oh, I guess I haven't tried adding two separate default definitions, my intuition was that it wouldn't work
2020-10-07 12:30:26 +0200 <boxscape> aand it does say conflicting definitions if I try that
2020-10-07 12:30:42 +0200 <boxscape> i.e. if I just add a default definition to the existing one
2020-10-07 12:31:19 +0200 <Echosolace> Hey all, pretty new to Haskell, and have been looking over the http://learnyouahaskell.com/syntax-in-functions page, and I can't figure out how why in the first part of the guide how they end up with lucky :: (Integral a) => a -> String. Is this because they are :t lucky and don't bother mentioning the defined function... or?
2020-10-07 12:32:07 +0200olligobber(olligobber@gateway/vpn/privateinternetaccess/olligobber)
2020-10-07 12:32:25 +0200alp(~alp@2a01:e0a:58b:4920:3027:b807:1b0e:5ebe) (Ping timeout: 240 seconds)
2020-10-07 12:32:38 +0200 <boxscape> Echosolace you're looking at the definition of lucky, they're declaring its type to be that
2020-10-07 12:32:58 +0200Nahra(~Nahra@unaffiliated/nahra)
2020-10-07 12:33:02 +0200 <Echosolace> Ok thanks.
2020-10-07 12:34:27 +0200stree(~stree@50-108-75-26.adr01.mskg.mi.frontiernet.net) (Quit: Caught exception)
2020-10-07 12:34:29 +0200Saukk(~Saukk@2001:998:f1:3963:1c59:9bb5:b94c:2)
2020-10-07 12:34:45 +0200stree(~stree@50-108-75-26.adr01.mskg.mi.frontiernet.net)
2020-10-07 12:36:49 +0200da39a3ee5e6b4b0d(~textual@n11211935170.netvigator.com) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-07 12:38:08 +0200alp(~alp@2a01:e0a:58b:4920:c5b1:5424:d94b:6bfc)
2020-10-07 12:38:27 +0200Gurkenglas(~Gurkengla@unaffiliated/gurkenglas)
2020-10-07 12:41:20 +0200bitmagie(~Thunderbi@200116b806544c0001b098a712f8f440.dip.versatel-1u1.de)
2020-10-07 12:41:24 +0200Clough(~Cain@27-33-147-252.static.tpgi.com.au)
2020-10-07 12:41:33 +0200Kaiepi(~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net)
2020-10-07 12:41:58 +0200 <Echosolace> I'm still having trouble with type definitions then... I went back a lesson and tried to declare a type definition, a la
2020-10-07 12:42:00 +0200 <Echosolace> addThree :: Int -> Int -> Int -> Int
2020-10-07 12:42:08 +0200 <Echosolace> But this just gives me
2020-10-07 12:42:17 +0200 <Echosolace> Variable not in scope: addThree :: Int -> Int -> Int -> Int
2020-10-07 12:42:36 +0200 <kuribas> dminuoso: I created a DSL to transform the Aeson Value before parseJSON or toJSON. So now my datatype isn't tied to the external representation :)
2020-10-07 12:42:41 +0200bitmagie(~Thunderbi@200116b806544c0001b098a712f8f440.dip.versatel-1u1.de) (Client Quit)
2020-10-07 12:42:57 +0200 <kuribas> dminuoso: I mean genericParseJSON and genericToJSON
2020-10-07 12:43:29 +0200 <Echosolace> Any idea as to how I can declare the type?
2020-10-07 12:43:36 +0200 <dminuoso> kuribas: What does that look like?
2020-10-07 12:43:51 +0200 <kuribas> Echosolace: you cannot just have a type, you need a function as well.
2020-10-07 12:44:01 +0200Ariakenom(~Ariakenom@193.254.193.1)
2020-10-07 12:44:09 +0200 <kuribas> Echosolace: you don't need to declare external types like in C.
2020-10-07 12:44:10 +0200 <Echosolace> So define the function first, then declare the type, right?
2020-10-07 12:44:29 +0200 <kuribas> Echosolace: normally you declare the type, then the function
2020-10-07 12:44:36 +0200 <Echosolace> O dear.
2020-10-07 12:44:56 +0200 <Echosolace> So why does addThree :: Int -> Int -> Int -> Int fail in ghci?
2020-10-07 12:45:20 +0200raichoo(~raichoo@213.240.178.58)
2020-10-07 12:45:34 +0200 <kuribas> dminuoso: fromField (Proxy @"nested_field") ["nested"] "field" <> fromFieldMaybe (Proxy @"nested_field2") ["nested"] "field2"
2020-10-07 12:46:07 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-07 12:46:24 +0200 <kuribas> dminuoso: it will turn data MyData = MyData { nested_field :: Int, nested_field2 :: Maybe Int } => { "nested": { "field": 2, "field2": 3}}
2020-10-07 12:46:30 +0200 <kuribas> dminuoso: but field2 can be ommitted
2020-10-07 12:47:01 +0200 <dminuoso> Im not sure what that means
2020-10-07 12:47:04 +0200 <kuribas> Echosolace: because ghci doesn't know a function will follow
2020-10-07 12:47:06 +0200 <dminuoso> can you share some larger code snippet perhaps?
2020-10-07 12:47:34 +0200 <kuribas> dminuoso: fromField takes the (haskell) fieldname, a path, and the destination field in the JSON
2020-10-07 12:48:27 +0200hackagehsinspect 0.0.16 - Inspect Haskell source files. https://hackage.haskell.org/package/hsinspect-0.0.16 (tseenshe)
2020-10-07 12:50:11 +0200 <kuribas> dminuoso: https://gist.github.com/kuribas/9826b1fb9f2907a5c40baff1d7bbcb83
2020-10-07 12:50:24 +0200 <yushyin> Echosolace: in ghci you can either declare the type and the function on the same line with a semicolon between them or use :{ and :} to span a definition over multiple lines
2020-10-07 12:50:25 +0200 <Echosolace> @kuribas Ok ok I see where you're going... How can I jump to the next line to enter in the function definition?
2020-10-07 12:50:26 +0200 <lambdabot> Unknown command, try @list
2020-10-07 12:50:34 +0200 <Echosolace> Oooohh snap
2020-10-07 12:50:37 +0200 <Echosolace> That was it, thank you so much!
2020-10-07 12:50:47 +0200 <kuribas> Echosolace: you can seperate it with semicolon (;)
2020-10-07 12:50:47 +0200 <yushyin> Echosolace: or just write a haskell source file and load that in ghci
2020-10-07 12:50:56 +0200 <Echosolace> Cool.
2020-10-07 12:51:02 +0200 <Echosolace> Thanks for the help
2020-10-07 12:51:22 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 272 seconds)
2020-10-07 12:51:28 +0200 <dminuoso> kuribas: I see.
2020-10-07 12:51:41 +0200 <kuribas> Echosolace: myFun :: Int -> Int; myFun x = x * 2
2020-10-07 12:51:51 +0200 <dminuoso> kuribas: Im thinking of cooking up a TH based solution stead.
2020-10-07 12:52:12 +0200 <kuribas> dminuoso: why TH?
2020-10-07 12:52:37 +0200 <yushyin> Echosolace: https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/ghci.html#ghci-cmd-:{
2020-10-07 12:52:48 +0200 <Echosolace> Thanks
2020-10-07 12:53:56 +0200 <boxscape> Echosolace in practice while :{ can be useful for small tests writing it into a .hs file and loading it is much less painful
2020-10-07 12:54:45 +0200 <boxscape> (pretend I put a comma between tests and writing)
2020-10-07 12:54:45 +0200 <kuribas> dminuoso: I can reuse this for other typeclasses.
2020-10-07 12:55:20 +0200cpressey(~cpressey@88.144.95.3) (Quit: WeeChat 1.9.1)
2020-10-07 12:55:53 +0200 <kuribas> dminuoso: here is the implementation: https://gist.github.com/kuribas/5c617ecf025ccb37467a23556cbe963e
2020-10-07 12:56:04 +0200 <dminuoso> kuribas: I want to carve out matching toJSON/fromJSON instances by just saying `$(makeJsonInsts ''Foo [("someField", "fSomeFIeld")]`
2020-10-07 12:56:16 +0200 <Echosolace> Thanks for the help. Hey, so besides getting into a deeper understanding of Cardano, I'm here also in part because I threw a not insignificant amount of time and money in getting a shit ton of vertical planters... How practical would it be to tie sensors and motors to water a garden that runs on Haskell?
2020-10-07 12:56:41 +0200 <dminuoso> Echosolace: Depends on what hardware you intend to run it on.
2020-10-07 12:56:49 +0200 <dminuoso> Haskell does not lend itself well for embedded tasks.
2020-10-07 12:56:53 +0200 <kuribas> dminuoso: the toJSON and fromJSON match in my implementation
2020-10-07 12:57:10 +0200 <kuribas> Echosolace: you could run it on a raspberry pi...
2020-10-07 12:57:17 +0200 <Echosolace> Cool, got that...
2020-10-07 12:57:31 +0200chele(~chele@ip5b416ea2.dynamic.kabel-deutschland.de) (Remote host closed the connection)
2020-10-07 12:57:33 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6) (Read error: Connection reset by peer)
2020-10-07 12:57:40 +0200 <dminuoso> In fact, the current implementations essentially force you into running it on a general purpose computer.
2020-10-07 12:57:48 +0200 <kuribas> Echosolace: however it is probably simpler to just use python ... One of the few cases where I would recommend python :-)
2020-10-07 12:58:04 +0200 <dminuoso> Echosolace: But beyond that, if running it on a pi is feasible, then Haskell can work just fine.
2020-10-07 12:58:09 +0200 <Echosolace> Yessss
2020-10-07 12:58:27 +0200hackageuniqueness-periods-vector-filters 0.3.0.0 - A library allows to change the structure of the 'RealFrac' function output. https://hackage.haskell.org/package/uniqueness-periods-vector-filters-0.3.0.0 (OleksandrZhabenko)
2020-10-07 12:58:45 +0200 <kuribas> Echosolace: compiling will be slow on the pi, but it's feasible.
2020-10-07 12:59:36 +0200 <Echosolace> Well, lots to learn, got to practice. Thanks for all the help, bookmarking the stuff. Probably be back soon. Bye!
2020-10-07 12:59:44 +0200Echosolace(99e47769@p790105-ipngn4101hiraide.tochigi.ocn.ne.jp) (Remote host closed the connection)
2020-10-07 13:00:11 +0200mupf(~micha@v22017094964653601.ultrasrv.de) (Ping timeout: 240 seconds)
2020-10-07 13:01:32 +0200ahmr88(~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net) (Remote host closed the connection)
2020-10-07 13:01:48 +0200ahmr88(~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net)
2020-10-07 13:01:49 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6)
2020-10-07 13:02:19 +0200ahmr88(~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net) (Remote host closed the connection)
2020-10-07 13:02:35 +0200ahmr88(~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net)
2020-10-07 13:02:40 +0200xelxebar(~xelxebar@gateway/tor-sasl/xelxebar) (Remote host closed the connection)
2020-10-07 13:02:59 +0200xelxebar(~xelxebar@gateway/tor-sasl/xelxebar)
2020-10-07 13:03:06 +0200ahmr88(~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net) (Remote host closed the connection)
2020-10-07 13:03:07 +0200 <kuribas> dminuoso: well, I haven't tested my implemented, but the idea is that parseJSON (toJSON a) = pure a
2020-10-07 13:03:19 +0200Nahra(~Nahra@unaffiliated/nahra) (Ping timeout: 246 seconds)
2020-10-07 13:03:23 +0200ahmr88(~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net)
2020-10-07 13:03:36 +0200ahmr88(~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net) (Remote host closed the connection)
2020-10-07 13:03:53 +0200ahmr88(~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net)
2020-10-07 13:04:24 +0200ahmr88(~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net) (Remote host closed the connection)
2020-10-07 13:05:25 +0200rprije(~rprije@203.214.95.251) (Ping timeout: 240 seconds)
2020-10-07 13:06:58 +0200hackagestack2cabal 1.0.11 - Convert stack projects to cabal.project + cabal.project.freeze https://hackage.haskell.org/package/stack2cabal-1.0.11 (maerwald)
2020-10-07 13:08:23 +0200boxscape(86ab2d1a@gateway/web/cgi-irc/kiwiirc.com/ip.134.171.45.26) (Quit: Connection closed)
2020-10-07 13:08:33 +0200avdb(~avdb@ip-213-49-124-202.dsl.scarlet.be)
2020-10-07 13:26:30 +0200machinedgod(~machinedg@24.105.81.50)
2020-10-07 13:27:32 +0200mupf(~micha@v22017094964653601.ultrasrv.de)
2020-10-07 13:28:07 +0200ryansmccoy(~ryansmcco@193.37.254.27) (Ping timeout: 240 seconds)
2020-10-07 13:28:30 +0200ryansmccoy(~ryansmcco@156.96.151.132)
2020-10-07 13:30:01 +0200fendor_(~fendor@91.141.2.76.wireless.dyn.drei.com)
2020-10-07 13:30:07 +0200chaosmasttter(~chaosmast@p200300c4a70b400140e8baf6489c3871.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2020-10-07 13:30:34 +0200da39a3ee5e6b4b0d(~textual@n11211935170.netvigator.com)
2020-10-07 13:32:25 +0200fendor(~fendor@77.119.128.199.wireless.dyn.drei.com) (Ping timeout: 258 seconds)
2020-10-07 13:36:05 +0200snakemas1(~snakemast@213.100.206.23) (Ping timeout: 240 seconds)
2020-10-07 13:37:01 +0200snakemas1(~snakemast@213.100.206.23)
2020-10-07 13:37:06 +0200LKoen(~LKoen@81.255.219.130) (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”)
2020-10-07 13:38:29 +0200jassy(~jassy@60-242-83-81.tpgi.com.au) (Quit: WeeChat 2.9)
2020-10-07 13:39:01 +0200hekkaidekapus}(~tchouri@gateway/tor-sasl/hekkaidekapus)
2020-10-07 13:40:23 +0200hekkaidekapus{(~tchouri@gateway/tor-sasl/hekkaidekapus) (Ping timeout: 240 seconds)
2020-10-07 13:46:36 +0200John20(~John@82.46.59.122) (Ping timeout: 256 seconds)
2020-10-07 13:46:48 +0200avdb(~avdb@ip-213-49-124-202.dsl.scarlet.be) (Ping timeout: 260 seconds)
2020-10-07 13:48:49 +0200frot-lab(3b47f017@gateway/web/cgi-irc/kiwiirc.com/ip.59.71.240.23) (Quit: Connection closed)
2020-10-07 13:53:28 +0200hackageupdate-nix-fetchgit 0.1.2.0 - A program to update fetchgit values in Nix expressions https://hackage.haskell.org/package/update-nix-fetchgit-0.1.2.0 (srk)
2020-10-07 13:54:47 +0200Neuromancer(~Neuromanc@unaffiliated/neuromancer)
2020-10-07 13:55:02 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6) (Read error: Connection reset by peer)
2020-10-07 13:55:36 +0200Gurkenglas(~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 256 seconds)
2020-10-07 13:56:20 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6)
2020-10-07 13:58:18 +0200John20(~John@82.46.59.122)
2020-10-07 14:00:01 +0200MarkusH1(~MarkusH@185.163.110.116) ()
2020-10-07 14:05:24 +0200cpressey(~cpressey@79-72-202-104.dynamic.dsl.as9105.com)
2020-10-07 14:07:06 +0200Saukk(~Saukk@2001:998:f1:3963:1c59:9bb5:b94c:2) (Remote host closed the connection)
2020-10-07 14:07:28 +0200chaosmasttter(~chaosmast@p200300c4a70b400140e8baf6489c3871.dip0.t-ipconnect.de)
2020-10-07 14:07:29 +0200urodna(~urodna@unaffiliated/urodna)
2020-10-07 14:09:04 +0200stree(~stree@50-108-75-26.adr01.mskg.mi.frontiernet.net) (Quit: Caught exception)
2020-10-07 14:09:22 +0200stree(~stree@50-108-75-26.adr01.mskg.mi.frontiernet.net)
2020-10-07 14:12:24 +0200shatriff(~vitaliish@88.155.140.206)
2020-10-07 14:12:24 +0200Gurkenglas(~Gurkengla@unaffiliated/gurkenglas)
2020-10-07 14:15:39 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6) (Quit: cosimone)
2020-10-07 14:16:25 +0200Stanley00(~stanley00@unaffiliated/stanley00) (Remote host closed the connection)
2020-10-07 14:17:27 +0200brown121407_brown121407
2020-10-07 14:17:27 +0200brown121407(~brown1214@2001:19f0:6c01:2b9c:3c66:4201:22f3:3ebc) (Changing host)
2020-10-07 14:17:27 +0200brown121407(~brown1214@fsf/member/brown121407)
2020-10-07 14:20:03 +0200livvy(~livvy@gateway/tor-sasl/livvy) (Ping timeout: 240 seconds)
2020-10-07 14:20:35 +0200shatriff(~vitaliish@88.155.140.206) (Remote host closed the connection)
2020-10-07 14:21:22 +0200Tops2(~Tobias@dyndsl-095-033-024-193.ewe-ip-backbone.de)
2020-10-07 14:24:15 +0200chele(~chele@2a02:8106:1:f900:faca:b8ff:fe2f:8499)
2020-10-07 14:24:20 +0200mmohammadi981266(~mmohammad@5.238.172.236) (Quit: I quit (╯°□°)╯︵ ┻━┻)
2020-10-07 14:27:00 +0200 <cpressey> Is it possible to use a plain ADT rather than a GADT when defining a monad using the `operational` package?
2020-10-07 14:33:53 +0200hsiktas[m](hsiktasmat@gateway/shell/matrix.org/x-swwdiwiqrmlcrxph) (Quit: killed)
2020-10-07 14:33:53 +0200fgaz(fgazmatrix@gateway/shell/matrix.org/x-kilclvemwjkbjcdc) (Quit: killed)
2020-10-07 14:33:53 +0200hnOsmium0001[m](hnosmium00@gateway/shell/matrix.org/x-iqbptzjvyhqjyctl) (Quit: killed)
2020-10-07 14:33:55 +0200jeffcasavant[m](jeffcasava@gateway/shell/matrix.org/x-hmrlrnakwcyeqokv) (Quit: killed)
2020-10-07 14:33:59 +0200drozdziak1(drozdziak1@gateway/shell/matrix.org/x-sjsrnouamiaxipfm) (Quit: killed)
2020-10-07 14:34:00 +0200rednaZ[m](r3dnazmatr@gateway/shell/matrix.org/x-iwlzundtzequgzee) (Quit: killed)
2020-10-07 14:34:00 +0200maralorn(maralornma@gateway/shell/matrix.org/x-aoxblgoncgxjmpkk) (Quit: killed)
2020-10-07 14:34:00 +0200domenkozar[m](domenkozar@NixOS/user/domenkozar) (Quit: killed)
2020-10-07 14:34:02 +0200alexfmpe(alexfmpema@gateway/shell/matrix.org/x-armmrcevlxedikov) (Quit: killed)
2020-10-07 14:34:02 +0200siraben(sirabenmat@gateway/shell/matrix.org/x-zlvwcpsxsnpcahft) (Quit: killed)
2020-10-07 14:34:02 +0200kadoban(kadobanmat@gateway/shell/matrix.org/x-jdkdmdayzlobouuw) (Quit: killed)
2020-10-07 14:34:02 +0200sepp2k(sepp2kmatr@gateway/shell/matrix.org/x-lbtonlktiyoqtrpk) (Quit: killed)
2020-10-07 14:34:05 +0200sm[m](simonmicma@gateway/shell/matrix.org/x-dnjzamvubpkljbdv) (Quit: killed)
2020-10-07 14:34:06 +0200theduke(thedukem1@gateway/shell/matrix.org/x-tcbncmkaetcradmc) (Quit: killed)
2020-10-07 14:34:06 +0200lnxw37d4(lnxw37d4ma@gateway/shell/matrix.org/x-mgiougcltykvpgks) (Quit: killed)
2020-10-07 14:34:07 +0200vaibhavsagar(vaibhavsag@gateway/shell/matrix.org/x-uujnimdcokvefwmq) (Quit: killed)
2020-10-07 14:34:07 +0200pqwy[m]1(pqwymatrix@gateway/shell/matrix.org/x-xmdgkqmgtiqeqonc) (Quit: killed)
2020-10-07 14:34:07 +0200steve[m]2(stevetrout@gateway/shell/matrix.org/x-pdxujagzftttmnst) (Quit: killed)
2020-10-07 14:34:07 +0200texasmynsted[m](mmynstedko@gateway/shell/matrix.org/x-bkszosvvokirdutd) (Quit: killed)
2020-10-07 14:34:08 +0200mikr[m](mikrdavral@gateway/shell/matrix.org/x-vlcvbwznoqddmtij) (Quit: killed)
2020-10-07 14:34:08 +0200Fernando-Basso[m(fernando-b@gateway/shell/matrix.org/x-uztapoiqhwkucfsg) (Quit: killed)
2020-10-07 14:34:09 +0200albestro[m](albestroma@gateway/shell/matrix.org/x-qamsuycvcanzesor) (Quit: killed)
2020-10-07 14:34:10 +0200betrion[m](betrionmat@gateway/shell/matrix.org/x-tjxgyeybsclgeokh) (Quit: killed)
2020-10-07 14:34:10 +0200jlv(jlvjustinl@gateway/shell/matrix.org/x-kfyudgxfehnncdjq) (Quit: killed)
2020-10-07 14:34:10 +0200dyniec[m](dyniecmatr@gateway/shell/matrix.org/x-ecfohlvdcvbghbdf) (Quit: killed)
2020-10-07 14:34:10 +0200gmind[m](gmindmatri@gateway/shell/matrix.org/x-xbxgoalkishimjic) (Quit: killed)
2020-10-07 14:34:11 +0200CaptainFox[m](onianimatr@gateway/shell/matrix.org/x-afvmemlusngzinxu) (Quit: killed)
2020-10-07 14:34:11 +0200DavSanchez[m]1(davsanchez@gateway/shell/matrix.org/x-oppjybenvaexbwaj) (Quit: killed)
2020-10-07 14:34:13 +0200ciderpunx[m](ciderpunxm@gateway/shell/matrix.org/x-tppxydebwmzeidan) (Quit: killed)
2020-10-07 14:34:13 +0200ethercrow[m](ethercrowm@gateway/shell/matrix.org/x-mipuhniwhozkskxo) (Quit: killed)
2020-10-07 14:34:13 +0200bonvoyage[m]11(bonvoyageu@gateway/shell/matrix.org/x-xlbynwhsaluwujmn) (Quit: killed)
2020-10-07 14:34:13 +0200psydruid(psydruidma@gateway/shell/matrix.org/x-zmirtmcuzxwhvczz) (Quit: killed)
2020-10-07 14:34:13 +0200jkaye[m](jkayematri@gateway/shell/matrix.org/x-xibdbttwtjjbthkv) (Quit: killed)
2020-10-07 14:34:13 +0200sureyeaah(shauryab98@gateway/shell/matrix.org/x-hoohggsnwpuhljzi) (Quit: killed)
2020-10-07 14:34:14 +0200nihilazo(nihilazoma@gateway/shell/matrix.org/x-bfhysqnthnkkkyqj) (Quit: killed)
2020-10-07 14:34:14 +0200chreekat[m]1(chreekatma@gateway/shell/matrix.org/x-ibewbadsrcqnctfw) (Quit: killed)
2020-10-07 14:34:14 +0200unclechu(unclechuma@gateway/shell/matrix.org/x-cpldnwvuqpqtgahy) (Quit: killed)
2020-10-07 14:34:14 +0200jtojnar(jtojnarmat@gateway/shell/matrix.org/x-dytikvjqsilohedp) (Quit: killed)
2020-10-07 14:34:15 +0200materialfuture[m(materialfu@gateway/shell/matrix.org/x-npxsmoygxswgzvnn) (Quit: killed)
2020-10-07 14:34:16 +0200JoelMcCracken[m](joelmccrac@gateway/shell/matrix.org/x-nmxpzgkyreszwsoo) (Quit: killed)
2020-10-07 14:34:17 +0200Guest77330(jbjiribene@gateway/shell/matrix.org/x-klbutzrslfjoiooq) (Quit: killed)
2020-10-07 14:34:17 +0200GuillaumeChrel[m(guillaumec@gateway/shell/matrix.org/x-kyytvilbqkccelxo) (Quit: killed)
2020-10-07 14:34:17 +0200mmynsted[m](mmynstedtc@gateway/shell/matrix.org/x-zaildyuiusfkwsag) (Quit: killed)
2020-10-07 14:34:17 +0200themsay[m](themsaymat@gateway/shell/matrix.org/x-nqzuuncfdzjshmrp) (Quit: killed)
2020-10-07 14:34:17 +0200tttom[m](tttommatri@gateway/shell/matrix.org/x-adhyifuyanfymgvo) (Quit: killed)
2020-10-07 14:34:17 +0200alvinsj[m](alvinsjmat@gateway/shell/matrix.org/x-iedunhycfauwrdat) (Quit: killed)
2020-10-07 14:34:17 +0200ffl^(ffl@ip98-184-89-2.mc.at.cox.net) (Max SendQ exceeded)
2020-10-07 14:34:17 +0200io_r_us[m](commandlin@gateway/shell/matrix.org/x-kjrwesnzoyenqgzx) (Quit: killed)
2020-10-07 14:34:17 +0200lambdaclan(lambdaclan@gateway/shell/matrix.org/x-rosqvrjyauthsfym) (Quit: killed)
2020-10-07 14:34:18 +0200johnnyboy[m](gifumatrix@gateway/shell/matrix.org/x-xczqbcixpmjhwvre) (Quit: killed)
2020-10-07 14:34:18 +0200srid(sridmatrix@gateway/shell/matrix.org/x-zqttickmrfyduksr) (Quit: killed)
2020-10-07 14:34:18 +0200michaelpj1(michaelpjm@gateway/shell/matrix.org/x-bmrqrkqdmdnabvkc) (Quit: killed)
2020-10-07 14:34:18 +0200PotatoHatsue(berbermanp@gateway/shell/matrix.org/x-lcuapfbpkatzswxh) (Quit: killed)
2020-10-07 14:34:18 +0200ThaEwat(thaewraptm@gateway/shell/matrix.org/x-mopjnwlxyxbzydyc) (Quit: killed)
2020-10-07 14:34:18 +0200iinuwa1(iinuwamatr@gateway/shell/matrix.org/x-vozqawbtzhuizygn) (Quit: killed)
2020-10-07 14:34:18 +0200Ericson2314(ericson231@gateway/shell/matrix.org/x-tddshmiwufwouryw) (Quit: killed)
2020-10-07 14:35:18 +0200ffl^(ffl@ip98-184-89-2.mc.at.cox.net)
2020-10-07 14:35:53 +0200 <dminuoso> cpressey: https://themonadreader.files.wordpress.com/2010/01/issue15.pdf
2020-10-07 14:36:46 +0200Boarders(sid425905@gateway/web/irccloud.com/x-kltbqwzwpqsqtnup) (Ping timeout: 246 seconds)
2020-10-07 14:37:49 +0200Boarders(sid425905@gateway/web/irccloud.com/x-omcnempmanutwmqx)
2020-10-07 14:39:07 +0200avdb(~avdb@ip-62-235-189-65.dsl.scarlet.be)
2020-10-07 14:40:49 +0200kbse[m](kbsematrix@gateway/shell/matrix.org/x-zolbnfdgknvjizjy)
2020-10-07 14:40:54 +0200 <dminuoso> You need the existentials
2020-10-07 14:41:58 +0200 <dminuoso> Unless you restrict yourself to have uniform monadic results
2020-10-07 14:44:29 +0200 <kuribas> is there a threeway Maybe type for Aeson, that gives a different result for: - null - not present, and present and not null?
2020-10-07 14:44:49 +0200Clough(~Cain@27-33-147-252.static.tpgi.com.au) (Ping timeout: 246 seconds)
2020-10-07 14:45:19 +0200cfricke(~cfricke@unaffiliated/cfricke) (Quit: WeeChat 2.9)
2020-10-07 14:47:25 +0200shafox(~shafox@106.51.234.111) (Remote host closed the connection)
2020-10-07 14:47:36 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-07 14:47:58 +0200hackagepostie 0.6.0.2 - SMTP server library to receive emails from within Haskell programs. https://hackage.haskell.org/package/postie-0.6.0.2 (malvo)
2020-10-07 14:48:31 +0200shafox(~shafox@106.51.234.111)
2020-10-07 14:49:26 +0200phaul(~phaul@ruby/staff/phaul) (Ping timeout: 256 seconds)
2020-10-07 14:51:25 +0200livvy(~livvy@gateway/tor-sasl/livvy)
2020-10-07 14:51:45 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
2020-10-07 14:52:03 +0200phaul(~phaul@ruby/staff/phaul)
2020-10-07 14:53:45 +0200 <cpressey> dminuoso: OK. Thank you. I expect the same is the case for the `MonadPrompt` package, which is quite similar.
2020-10-07 14:54:06 +0200 <sim590> kuribas: there's a 3-possibilities type called These which has constructors (These a b), (This a) and (That a). I don,t know if that helps your precise case?
2020-10-07 14:54:38 +0200 <kuribas> sim590: not really
2020-10-07 14:54:43 +0200Sheilong(uid293653@gateway/web/irccloud.com/x-czqzwifwdwgxyvlx)
2020-10-07 14:54:55 +0200 <kuribas> I want more like, Null | Missing | Val a
2020-10-07 14:54:59 +0200 <sim590> Yeah. I'm not really familiar with what Aeson is.
2020-10-07 14:55:05 +0200frdg(60e94035@pool-96-233-64-53.bstnma.fios.verizon.net)
2020-10-07 14:55:08 +0200 <kuribas> Aeson is a json parser
2020-10-07 14:56:05 +0200Vogone(~Vogone@195.206.169.184)
2020-10-07 14:56:54 +0200themsay[m](themsaymat@gateway/shell/matrix.org/x-jlhxzzruldlhmmgy)
2020-10-07 14:56:54 +0200alvinsj[m](alvinsjmat@gateway/shell/matrix.org/x-jqdmywmvtnmoacsc)
2020-10-07 14:56:54 +0200JoelMcCracken[m](joelmccrac@gateway/shell/matrix.org/x-sbadlxunmwfvpibq)
2020-10-07 14:56:54 +0200srid(sridmatrix@gateway/shell/matrix.org/x-znyovjxuqshvxpdw)
2020-10-07 14:56:55 +0200sm[m](simonmicma@gateway/shell/matrix.org/x-yvxnqtqblglugklz)
2020-10-07 14:56:55 +0200psydruid(psydruidma@gateway/shell/matrix.org/x-qycprfpnsgiilolx)
2020-10-07 14:56:55 +0200iinuwa(iinuwamatr@gateway/shell/matrix.org/x-rwunwqpobfulimir)
2020-10-07 14:56:55 +0200bonvoyage[m](bonvoyageu@gateway/shell/matrix.org/x-hymtyjvtcgjioftl)
2020-10-07 14:56:55 +0200ThaEwat(thaewraptm@gateway/shell/matrix.org/x-kcvetqrftbkjcjnk)
2020-10-07 14:56:55 +0200rednaZ[m](r3dnazmatr@gateway/shell/matrix.org/x-fljfbjfqcfnnurou)
2020-10-07 14:56:55 +0200theduke(thedukem1@gateway/shell/matrix.org/x-luggxubwimubmsjx)
2020-10-07 14:56:55 +0200vaibhavsagar(vaibhavsag@gateway/shell/matrix.org/x-ddqgmqbfchwrxzrv)
2020-10-07 14:56:55 +0200fgaz(fgazmatrix@gateway/shell/matrix.org/x-byybigschvhjswcv)
2020-10-07 14:56:55 +0200maralorn(maralornma@gateway/shell/matrix.org/x-lyakyxofyblijwix)
2020-10-07 14:56:55 +0200jtojnar(jtojnarmat@gateway/shell/matrix.org/x-oeeuardyswtspgkc)
2020-10-07 14:56:55 +0200domenkozar[m](domenkozar@NixOS/user/domenkozar)
2020-10-07 14:56:55 +0200siraben(sirabenmat@gateway/shell/matrix.org/x-pdgeahbvmgwapgfg)
2020-10-07 14:56:55 +0200hnOsmium0001[m](hnosmium00@gateway/shell/matrix.org/x-sylhtdjktmpomitu)
2020-10-07 14:56:55 +0200wangoe[m](wangoematr@gateway/shell/matrix.org/x-vyhfixejmlhvwdmw)
2020-10-07 14:56:55 +0200drozdziak1(drozdziak1@gateway/shell/matrix.org/x-ceruyhaykumzhfys)
2020-10-07 14:56:56 +0200hsiktas[m](hsiktasmat@gateway/shell/matrix.org/x-vdqlhkexdidlyisd)
2020-10-07 14:56:56 +0200unclechu(unclechuma@gateway/shell/matrix.org/x-ebrfkfjlsjzowlvv)
2020-10-07 14:56:56 +0200PotatoHatsue(berbermanp@gateway/shell/matrix.org/x-mxhezacflqkmnnqy)
2020-10-07 14:56:56 +0200lnxw37d4(lnxw37d4ma@gateway/shell/matrix.org/x-bqfspchyhjmzptxd)
2020-10-07 14:56:56 +0200michaelpj(michaelpjm@gateway/shell/matrix.org/x-gysseraqrfhmwgck)
2020-10-07 14:56:56 +0200kadoban(kadobanmat@gateway/shell/matrix.org/x-wocksmmwkounohnb)
2020-10-07 14:56:56 +0200avocado(renningmat@gateway/shell/matrix.org/x-uvfnfafjlebaevtk)
2020-10-07 14:56:56 +0200texasmynsted[m](mmynstedko@gateway/shell/matrix.org/x-fkezaphacwvtlqpz)
2020-10-07 14:56:56 +0200Ericson2314(ericson231@gateway/shell/matrix.org/x-oinfesutpjbypdbj)
2020-10-07 14:56:57 +0200Noughtmare[m](naughtmare@gateway/shell/matrix.org/x-hwzfoytdrvghcjmo)
2020-10-07 14:56:57 +0200sureyeaah(shauryab98@gateway/shell/matrix.org/x-wiylhkbwoygscvln)
2020-10-07 14:56:57 +0200chreekat[m](chreekatma@gateway/shell/matrix.org/x-khznwzleexjszxwr)
2020-10-07 14:56:57 +0200Fernando-Basso[m(fernando-b@gateway/shell/matrix.org/x-kjhiolswkwzfuios)
2020-10-07 14:56:57 +0200sepp2k(sepp2kmatr@gateway/shell/matrix.org/x-azbyctkkbmykmuxo)
2020-10-07 14:56:58 +0200lambdaclan(lambdaclan@gateway/shell/matrix.org/x-efvydivpqgisspda)
2020-10-07 14:56:58 +0200io_r_us[m](commandlin@gateway/shell/matrix.org/x-crnvroklodstbzyd)
2020-10-07 14:56:58 +0200nihilazo(nihilazoma@gateway/shell/matrix.org/x-zdmbqmhsvrlzerts)
2020-10-07 14:56:58 +0200boistordu1(boistordum@gateway/shell/matrix.org/x-wjhprcjgzjfylbza)
2020-10-07 14:56:58 +0200SlackIntegration(slackbotma@gateway/shell/matrix.org/x-lohsrmorokvdbpoj)
2020-10-07 14:56:59 +0200pqwy[m](pqwymatrix@gateway/shell/matrix.org/x-olxoybsjhfaojatm)
2020-10-07 14:56:59 +0200johnnyboy[m](gifumatrix@gateway/shell/matrix.org/x-kitekitskrpvnyuf)
2020-10-07 14:57:00 +0200steve[m](stevetrout@gateway/shell/matrix.org/x-tlcohkujmhffqlxo)
2020-10-07 14:57:00 +0200mikr[m](mikrdavral@gateway/shell/matrix.org/x-sqivhrzyxjfvahqw)
2020-10-07 14:57:01 +0200mmynsted[m](mmynstedtc@gateway/shell/matrix.org/x-znpwlmrtpibaqhgv)
2020-10-07 14:57:01 +0200CaptainFox[m](onianimatr@gateway/shell/matrix.org/x-uumbggmsnsagdxwx)
2020-10-07 14:57:01 +0200DavSanchez[m](davsanchez@gateway/shell/matrix.org/x-cshiyvdondwsassq)
2020-10-07 14:57:01 +0200GuillaumeChrel[m(guillaumec@gateway/shell/matrix.org/x-zpdzkinallsoekgd)
2020-10-07 14:57:01 +0200jeffcasavant[m](jeffcasava@gateway/shell/matrix.org/x-ofvxwwxtfcqijigf)
2020-10-07 14:57:01 +0200jiribenes1(jbjiribene@gateway/shell/matrix.org/x-zwblivezdhcvoksn)
2020-10-07 14:57:02 +0200jkaye[m](jkayematri@gateway/shell/matrix.org/x-xhxhthjkcoydgzvg)
2020-10-07 14:57:02 +0200betrion[m](betrionmat@gateway/shell/matrix.org/x-zpvrsdzwkmpqahys)
2020-10-07 14:57:02 +0200ciderpunx[m](ciderpunxm@gateway/shell/matrix.org/x-phmdrdggcgnremri)
2020-10-07 14:57:02 +0200ethercrow[m](ethercrowm@gateway/shell/matrix.org/x-qohfilkcpvembqbq)
2020-10-07 14:57:02 +0200sajith[m](sajithmatr@gateway/shell/matrix.org/x-qjvxnirdozyhnxza)
2020-10-07 14:57:02 +0200macerbi[m](macerbimat@gateway/shell/matrix.org/x-ccvzntcdselawgmn)
2020-10-07 14:57:02 +0200materialfuture[m(materialfu@gateway/shell/matrix.org/x-kcdvxjwcqyagisvj)
2020-10-07 14:57:03 +0200gmind[m](gmindmatri@gateway/shell/matrix.org/x-edoxmxjonitwjqca)
2020-10-07 14:57:03 +0200alexfmpe(alexfmpema@gateway/shell/matrix.org/x-qrzkwyigmywmhwge)
2020-10-07 14:57:04 +0200tttom[m](tttommatri@gateway/shell/matrix.org/x-kcrlxfyqsxsceyrq)
2020-10-07 14:57:04 +0200jlv(jlvjustinl@gateway/shell/matrix.org/x-kumwswmhehdpzhpj)
2020-10-07 14:57:04 +0200itai33[m](itai33matr@gateway/shell/matrix.org/x-jbkgbtontlzajfgn)
2020-10-07 14:57:04 +0200dyniec[m](dyniecmatr@gateway/shell/matrix.org/x-tgoncauijaxjhpus)
2020-10-07 14:57:05 +0200albestro[m](albestroma@gateway/shell/matrix.org/x-tndqscinbariykar)
2020-10-07 14:57:39 +0200 <frdg> what are inline pragmas? Do they call code from somewhere else? Here an example: https://dpaste.org/2pxy
2020-10-07 14:58:27 +0200DirefulSalt(DirefulSal@gateway/vpn/privateinternetaccess/direfulsalt) (Remote host closed the connection)
2020-10-07 14:58:32 +0200phaul(~phaul@ruby/staff/phaul) (Ping timeout: 244 seconds)
2020-10-07 14:58:52 +0200DirefulSalt(DirefulSal@gateway/vpn/privateinternetaccess/direfulsalt)
2020-10-07 14:59:32 +0200 <hpc> it means when you use notMember, instead of doing a bunch of function call stuff, the compiler can decide to just paste the code where it's being called instead
2020-10-07 14:59:50 +0200Vogone(~Vogone@195.206.169.184) (Read error: Connection reset by peer)
2020-10-07 15:00:49 +0200taurux(~taurux@net-93-144-24-109.cust.vodafonedsl.it) (Ping timeout: 264 seconds)
2020-10-07 15:00:51 +0200 <frdg> so it is all about optimization?
2020-10-07 15:01:11 +0200 <hpc> yeah
2020-10-07 15:01:23 +0200 <kuribas> frdg: it's a hint for GHC to try harder to inline it.
2020-10-07 15:01:30 +0200 <dminuoso> inline pragmas are a mostly used to annoy haskell users by exploding compilation times.
2020-10-07 15:01:36 +0200st8less(~st8less@2603:a060:11fd:0:443c:d730:5d8c:f920)
2020-10-07 15:01:45 +0200 <kuribas> ghc already inlines short functions, but with a pragma it will inline larger functions as well.
2020-10-07 15:01:49 +0200 <dminuoso> You know, like when you try and use megaparsec, write 15 lines of code and end up with 60 second compilation time (true story!)
2020-10-07 15:01:59 +0200sedeki(~textual@unaffiliated/sedeki)
2020-10-07 15:02:02 +0200 <kuribas> dminuoso: at least you get efficient code!
2020-10-07 15:02:06 +0200taurux(~taurux@net-130-25-101-92.cust.vodafonedsl.it)
2020-10-07 15:02:20 +0200 <frdg> ok I understand
2020-10-07 15:02:52 +0200 <dminuoso> Generally, unless you understand what GHC does, you shouldnt use INLINE.
2020-10-07 15:02:53 +0200thir(~thir@p200300f27f0fc60038c1b16891cbfa03.dip0.t-ipconnect.de)
2020-10-07 15:02:55 +0200berberman(~berberman@123.118.96.247) (Quit: ZNC 1.7.5 - https://znc.in)
2020-10-07 15:02:56 +0200 <Uniaika> kuribas: I may be interested in building a tool that tells you which functions have been inlined
2020-10-07 15:03:04 +0200 <dminuoso> INLINABLE otoh is very useful :)
2020-10-07 15:03:21 +0200 <Uniaika> dminuoso: why so? :)
2020-10-07 15:03:26 +0200Kaeipi(~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net)
2020-10-07 15:03:34 +0200jneira_(~jneira@244.red-176-83-85.dynamicip.rima-tde.net)
2020-10-07 15:03:40 +0200Gurkenglas_(~Gurkengla@unaffiliated/gurkenglas)
2020-10-07 15:03:59 +0200betrion[m](betrionmat@gateway/shell/matrix.org/x-zpvrsdzwkmpqahys) (*.net *.split)
2020-10-07 15:03:59 +0200GuillaumeChrel[m(guillaumec@gateway/shell/matrix.org/x-zpdzkinallsoekgd) (*.net *.split)
2020-10-07 15:03:59 +0200mikr[m](mikrdavral@gateway/shell/matrix.org/x-sqivhrzyxjfvahqw) (*.net *.split)
2020-10-07 15:03:59 +0200sepp2k(sepp2kmatr@gateway/shell/matrix.org/x-azbyctkkbmykmuxo) (*.net *.split)
2020-10-07 15:03:59 +0200Noughtmare[m](naughtmare@gateway/shell/matrix.org/x-hwzfoytdrvghcjmo) (*.net *.split)
2020-10-07 15:03:59 +0200avocado(renningmat@gateway/shell/matrix.org/x-uvfnfafjlebaevtk) (*.net *.split)
2020-10-07 15:03:59 +0200boistordu1(boistordum@gateway/shell/matrix.org/x-wjhprcjgzjfylbza) (*.net *.split)
2020-10-07 15:03:59 +0200jtojnar(jtojnarmat@gateway/shell/matrix.org/x-oeeuardyswtspgkc) (*.net *.split)
2020-10-07 15:03:59 +0200avdb(~avdb@ip-62-235-189-65.dsl.scarlet.be) (*.net *.split)
2020-10-07 15:03:59 +0200Boarders(sid425905@gateway/web/irccloud.com/x-omcnempmanutwmqx) (*.net *.split)
2020-10-07 15:03:59 +0200Gurkenglas(~Gurkengla@unaffiliated/gurkenglas) (*.net *.split)
2020-10-07 15:03:59 +0200da39a3ee5e6b4b0d(~textual@n11211935170.netvigator.com) (*.net *.split)
2020-10-07 15:03:59 +0200Kaiepi(~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net) (*.net *.split)
2020-10-07 15:03:59 +0200theDon(~td@muedsl-82-207-238-023.citykom.de) (*.net *.split)
2020-10-07 15:03:59 +0200alexknvl(sid259568@gateway/web/irccloud.com/x-esxzjxwhwfjmhmwu) (*.net *.split)
2020-10-07 15:03:59 +0200jinblack-(~JinBlack@2001:41d0:8:4b28::1) (*.net *.split)
2020-10-07 15:03:59 +0200dhouthoo(~dhouthoo@ptr-eiv6509pb4ifhdr9lsd.18120a2.ip6.access.telenet.be) (*.net *.split)
2020-10-07 15:03:59 +0200takuan(~takuan@178-116-218-225.access.telenet.be) (*.net *.split)
2020-10-07 15:03:59 +0200polyrain(~polyrain@2001:8003:e501:6901:ec3c:d1e0:e12d:d528) (*.net *.split)
2020-10-07 15:03:59 +0200Rudd0(~Rudd0@185.189.115.103) (*.net *.split)
2020-10-07 15:04:00 +0200ski(~ski@m-1163-19.studat.chalmers.se) (*.net *.split)
2020-10-07 15:04:00 +0200jedws(~jedws@121.209.161.98) (*.net *.split)
2020-10-07 15:04:00 +0200zaquest(~notzaques@5.128.210.178) (*.net *.split)
2020-10-07 15:04:00 +0200Buntspecht(~user@unaffiliated/siracusa) (*.net *.split)
2020-10-07 15:04:00 +0200pfurla(~pfurla@ool-182ed2e2.dyn.optonline.net) (*.net *.split)
2020-10-07 15:04:00 +0200bgamari(~bgamari@2001:470:e438::1) (*.net *.split)
2020-10-07 15:04:00 +0200dolio(~dolio@haskell/developer/dolio) (*.net *.split)
2020-10-07 15:04:00 +0200emmanuel_erc(~user@2604:2000:1382:ce03:25fa:9e0d:1140:beff) (*.net *.split)
2020-10-07 15:04:00 +0200ezzieyguywuf(~Unknown@unaffiliated/ezzieyguywuf) (*.net *.split)
2020-10-07 15:04:00 +0200joshmeredith(sid387798@gateway/web/irccloud.com/x-lhhtwrcyukiolswv) (*.net *.split)
2020-10-07 15:04:00 +0200pong(chiya@2406:3003:2077:2341::babe) (*.net *.split)
2020-10-07 15:04:00 +0200coeus(~coeus@p200300d02724ef00d20f0ecf5ac74df4.dip0.t-ipconnect.de) (*.net *.split)
2020-10-07 15:04:00 +0200nopf(~frosch@static.179.17.76.144.clients.your-server.de) (*.net *.split)
2020-10-07 15:04:00 +0200M2tias(m2@seri.fi) (*.net *.split)
2020-10-07 15:04:06 +0200emmanuel`(~user@2604:2000:1382:ce03:25fa:9e0d:1140:beff)
2020-10-07 15:04:08 +0200 <dminuoso> INLINABLE does not make GHC inline more aggressively, but at least enable it for when GHC. Especially for specialization this can be useful.
2020-10-07 15:04:08 +0200ski(~ski@m-1163-19.studat.chalmers.se)
2020-10-07 15:04:12 +0200 <kuribas> INLINABLE includes the function body in the interface file.
2020-10-07 15:04:13 +0200alexknvl(sid259568@gateway/web/irccloud.com/x-ezzjogtrhlllcrlf)
2020-10-07 15:04:16 +0200Boarders(sid425905@gateway/web/irccloud.com/x-rullwqslalbceykx)
2020-10-07 15:04:16 +0200bgamari(~bgamari@72.65.103.227)
2020-10-07 15:04:16 +0200jinblack(~JinBlack@new.jinblack.it)
2020-10-07 15:04:24 +0200dhouthoo(~dhouthoo@ptr-eiv6509pb4ifhdr9lsd.18120a2.ip6.access.telenet.be)
2020-10-07 15:04:26 +0200avdb(~avdb@ip-62-235-189-65.dsl.scarlet.be)
2020-10-07 15:04:27 +0200Buntspecht(~user@unaffiliated/siracusa)
2020-10-07 15:04:28 +0200GuillaumeChrel[m(guillaumec@gateway/shell/matrix.org/x-pdeyeszckwgtpgil)
2020-10-07 15:04:28 +0200betrion[m](betrionmat@gateway/shell/matrix.org/x-ayssoeksjulbrphq)
2020-10-07 15:04:57 +0200avdb(~avdb@ip-62-235-189-65.dsl.scarlet.be) (Client Quit)
2020-10-07 15:05:16 +0200dolio(~dolio@haskell/developer/dolio)
2020-10-07 15:05:41 +0200mikr[m](mikrdavral@gateway/shell/matrix.org/x-tfhuakjmvnwwteem)
2020-10-07 15:05:56 +0200avocado(renningmat@gateway/shell/matrix.org/x-fezyrhgjfnmnkpkv)
2020-10-07 15:05:59 +0200boistordu1(boistordum@gateway/shell/matrix.org/x-hweoscsbacvjfdbp)
2020-10-07 15:06:01 +0200jtojnar(jtojnarmat@gateway/shell/matrix.org/x-qekearxjjpjsmkuo)
2020-10-07 15:06:10 +0200ixlun(~matthew@213.205.241.94) (Ping timeout: 245 seconds)
2020-10-07 15:06:24 +0200 <dminuoso> GHC could still include it without INLINABLE but only if its small
2020-10-07 15:06:55 +0200thir(~thir@p200300f27f0fc60038c1b16891cbfa03.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2020-10-07 15:07:01 +0200polyrain(~polyrain@2001:8003:e501:6901:ec3c:d1e0:e12d:d528)
2020-10-07 15:07:06 +0200 <dminuoso> Also, INLINABLE allows for shared specialization across modules
2020-10-07 15:08:12 +0200bahamas(~lucian@unaffiliated/bahamas)
2020-10-07 15:09:21 +0200sepp2k(sepp2kmatr@gateway/shell/matrix.org/session)
2020-10-07 15:09:21 +0200theDon(~td@muedsl-82-207-238-023.citykom.de)
2020-10-07 15:09:21 +0200takuan(~takuan@178-116-218-225.access.telenet.be)
2020-10-07 15:09:21 +0200Rudd0(~Rudd0@185.189.115.103)
2020-10-07 15:09:21 +0200zaquest(~notzaques@5.128.210.178)
2020-10-07 15:09:21 +0200pfurla(~pfurla@ool-182ed2e2.dyn.optonline.net)
2020-10-07 15:09:21 +0200ezzieyguywuf(~Unknown@unaffiliated/ezzieyguywuf)
2020-10-07 15:09:21 +0200joshmeredith(sid387798@gateway/web/irccloud.com/x-lhhtwrcyukiolswv)
2020-10-07 15:09:21 +0200pong(chiya@2406:3003:2077:2341::babe)
2020-10-07 15:09:21 +0200coeus(~coeus@p200300d02724ef00d20f0ecf5ac74df4.dip0.t-ipconnect.de)
2020-10-07 15:09:21 +0200nopf(~frosch@static.179.17.76.144.clients.your-server.de)
2020-10-07 15:09:21 +0200M2tias(m2@seri.fi)
2020-10-07 15:09:22 +0200John20(~John@82.46.59.122) (Ping timeout: 256 seconds)
2020-10-07 15:09:23 +0200sepp2k(sepp2kmatr@gateway/shell/matrix.org/session) (Changing host)
2020-10-07 15:09:23 +0200sepp2k(sepp2kmatr@gateway/shell/matrix.org/x-ycdinvigeuvebcbs)
2020-10-07 15:09:34 +0200Rudd0(~Rudd0@185.189.115.103) (Max SendQ exceeded)
2020-10-07 15:09:37 +0200alp(~alp@2a01:e0a:58b:4920:c5b1:5424:d94b:6bfc) (Ping timeout: 260 seconds)
2020-10-07 15:09:58 +0200hackagecontracheck-applicative 0.2.0 - Validation types/typeclass based on the contravariance. https://hackage.haskell.org/package/contracheck-applicative-0.2.0 (Birkmann)
2020-10-07 15:11:30 +0200hackageuniqueness-periods-vector-general 0.4.6.0 - Some kind of the optimization approach to data inner structure. https://hackage.haskell.org/package/uniqueness-periods-vector-general-0.4.6.0 (OleksandrZhabenko)
2020-10-07 15:14:26 +0200xerox_(~xerox@unaffiliated/xerox) (Ping timeout: 256 seconds)
2020-10-07 15:14:26 +0200 <kuribas> INLINABLE turns haskell into a whole program compiler :)
2020-10-07 15:14:42 +0200 <maerwald> only until it OOMs
2020-10-07 15:14:45 +0200arahael(~arahael@125-209-151-226.tpgi.com.au) (Ping timeout: 260 seconds)
2020-10-07 15:14:45 +0200kuribas(~user@ptr-25vy0i76pxhcqkyum1g.18120a2.ip6.access.telenet.be) (Quit: ERC (IRC client for Emacs 26.3))
2020-10-07 15:14:54 +0200 <maerwald> there we go
2020-10-07 15:14:55 +0200xff0x_(~fox@2001:1a81:5374:e100:90a4:ed3f:c45e:9759) (Ping timeout: 240 seconds)
2020-10-07 15:15:54 +0200xff0x_(~fox@2001:1a81:5374:e100:2c9e:dd16:8ce3:558c)
2020-10-07 15:16:14 +0200alp(~alp@2a01:e0a:58b:4920:75d3:6a0d:821b:a780)
2020-10-07 15:16:39 +0200xff0x_(~fox@2001:1a81:5374:e100:2c9e:dd16:8ce3:558c) (Client Quit)
2020-10-07 15:16:48 +0200xff0x(~fox@2001:1a81:5374:e100:2c9e:dd16:8ce3:558c)
2020-10-07 15:16:49 +0200toorevitimirp(~tooreviti@117.182.180.245) (Quit: Konversation terminated!)
2020-10-07 15:18:25 +0200borne(~fritjof@2001:638:708:30da:5a9f:5f48:16a:a1d1) (Ping timeout: 240 seconds)
2020-10-07 15:19:49 +0200polyrain_(~polyrain@203.51.166.163)
2020-10-07 15:21:47 +0200avdb(~avdb@ip-62-235-189-65.dsl.scarlet.be)
2020-10-07 15:22:17 +0200John20(~John@82.46.59.122)
2020-10-07 15:23:02 +0200polyrain(~polyrain@2001:8003:e501:6901:ec3c:d1e0:e12d:d528) (Ping timeout: 260 seconds)
2020-10-07 15:23:25 +0200arahael(~arahael@220.240.125.167)
2020-10-07 15:23:55 +0200bitmapper(uid464869@gateway/web/irccloud.com/x-tfzdjxpokcsicuwj) (Quit: Connection closed for inactivity)
2020-10-07 15:24:22 +0200mirrorbird(~psutcliff@2a00:801:3f8:10df:3fb2:3ec3:6676:3873)
2020-10-07 15:24:38 +0200Amras(~Amras@unaffiliated/amras0000)
2020-10-07 15:25:11 +0200 <sm[m]> G'day all
2020-10-07 15:25:14 +0200 <sm[m]> dminuoso: I'd like to see that 15 lone program (I bet ghc devs would too)
2020-10-07 15:25:54 +0200ryjm_matrix(~matrixirc@pool-74-105-197-68.nwrknj.fios.verizon.net) (Ping timeout: 272 seconds)
2020-10-07 15:27:20 +0200 <dminuoso> sm[m]: https://gitlab.haskell.org/ghc/ghc/-/issues/17370
2020-10-07 15:28:34 +0200Gurkenglas_(~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 246 seconds)
2020-10-07 15:28:45 +0200 <dminuoso> Admittedly, it's slightly longer than that.
2020-10-07 15:31:07 +0200 <sm[m]> thx!
2020-10-07 15:33:38 +0200Geraldus(1fa31137@31.163.17.55)
2020-10-07 15:33:44 +0200sedeki(~textual@unaffiliated/sedeki) (Quit: Textual IRC Client: www.textualapp.com)
2020-10-07 15:35:23 +0200 <sm[m]> nice report, I have subscribed
2020-10-07 15:35:46 +0200 <Geraldus> Hi friends! Struggling with VSCode and ghcide. Is there a good article how to make it work?
2020-10-07 15:38:39 +0200olligobber(olligobber@gateway/vpn/privateinternetaccess/olligobber) (Remote host closed the connection)
2020-10-07 15:38:49 +0200 <sm[m]> Geraldus: probably not an up to date one. But for most people, installing the Haskell extension is the only action needed
2020-10-07 15:39:10 +0200ryjm_matrix(~matrixirc@pool-74-105-197-68.nwrknj.fios.verizon.net)
2020-10-07 15:39:39 +0200macrover(~macrover@ip70-189-231-35.lv.lv.cox.net)
2020-10-07 15:40:20 +0200polyrain_(~polyrain@203.51.166.163) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-07 15:43:28 +0200polyrain(~polyrain@2001:8003:e501:6901:1d60:ec01:433a:e4a)
2020-10-07 15:44:27 +0200arahael(~arahael@220.240.125.167) (Ping timeout: 240 seconds)
2020-10-07 15:45:58 +0200Gurkenglas_(~Gurkengla@unaffiliated/gurkenglas)
2020-10-07 15:45:58 +0200DavidEichmann(~david@43.240.198.146.dyn.plus.net) (Read error: Connection reset by peer)
2020-10-07 15:45:59 +0200jneira_(~jneira@244.red-176-83-85.dynamicip.rima-tde.net) (Read error: Connection reset by peer)
2020-10-07 15:46:41 +0200xerox_(~xerox@unaffiliated/xerox)
2020-10-07 15:46:52 +0200DavidEichmann(~david@43.240.198.146.dyn.plus.net)
2020-10-07 15:47:14 +0200cheater(~user@unaffiliated/cheater) (Quit: BitchX: double your pleasure, double your fun!)
2020-10-07 15:47:38 +0200jneira_(~jneira@80.30.101.206)
2020-10-07 15:48:57 +0200 <tomjaguarpaw> Does anyone know a list of best practices for writing parsers with Parsec? I'm getting stuck with the non-backtracking property.
2020-10-07 15:49:08 +0200toorevitimirp(~tooreviti@117.182.180.245)
2020-10-07 15:50:00 +0200 <tomjaguarpaw> I'm not quite sure when I should be using "try"
2020-10-07 15:50:31 +0200 <srk> when you need to rollback or like when the tried parser can fail
2020-10-07 15:50:46 +0200cheater(~user@unaffiliated/cheater)
2020-10-07 15:51:08 +0200oisdk(~oisdk@2001:bb6:3329:d100:c982:e387:7052:58be)
2020-10-07 15:51:11 +0200cfricke(~cfricke@unaffiliated/cfricke)
2020-10-07 15:51:27 +0200 <srk> attoparsec always backtracks on failure
2020-10-07 15:52:35 +0200worc3131(~quassel@2a02:c7f:c026:9500:7d0b:65d0:38a4:4786) (Quit: No Ping reply in 180 seconds.)
2020-10-07 15:53:52 +0200worc3131(~quassel@2a02:c7f:c026:9500:a0d2:b9d1:42a4:69b4)
2020-10-07 15:55:27 +0200 <sm[m]> tomjaguarpaw: one rule of thumb: when you are parsing alternatives that share a common prefix
2020-10-07 15:55:42 +0200arahael(~arahael@203.166.237.11)
2020-10-07 15:56:07 +0200 <sm[m]> maybe that's the only time it's needed, not sure
2020-10-07 15:56:13 +0200taurux(~taurux@net-130-25-101-92.cust.vodafonedsl.it) (Ping timeout: 244 seconds)
2020-10-07 15:56:32 +0200 <amf> is there a name for types that fill the role of versioning data? a sibling of session types if you will
2020-10-07 15:56:39 +0200cosimone(~cosimone@2001:b07:ae5:db26:f68c:50ff:fe0b:b774)
2020-10-07 15:57:00 +0200taurux(~taurux@net-130-25-101-135.cust.vodafonedsl.it)
2020-10-07 15:57:34 +0200aqd(~aqd@84.20.147.33) (Ping timeout: 272 seconds)
2020-10-07 15:58:07 +0200jneira_(~jneira@80.30.101.206) (Ping timeout: 240 seconds)
2020-10-07 15:59:31 +0200chloe_2_2(75c9e5f4@117.201.229.244)
2020-10-07 16:02:05 +0200nyd(~nyd@unaffiliated/elysian)
2020-10-07 16:02:37 +0200Gurkenglas_(~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 264 seconds)
2020-10-07 16:03:52 +0200GyroW(~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie)
2020-10-07 16:04:03 +0200GyroW(~GyroW@d54C03E98.access.telenet.be)
2020-10-07 16:04:03 +0200GyroW(~GyroW@d54C03E98.access.telenet.be) (Changing host)
2020-10-07 16:04:03 +0200GyroW(~GyroW@unaffiliated/gyrow)
2020-10-07 16:04:41 +0200Ariakenom(~Ariakenom@193.254.193.1) (Ping timeout: 260 seconds)
2020-10-07 16:05:42 +0200taurux(~taurux@net-130-25-101-135.cust.vodafonedsl.it) (Ping timeout: 244 seconds)
2020-10-07 16:07:03 +0200taurux(~taurux@net-93-144-165-151.cust.vodafonedsl.it)
2020-10-07 16:08:37 +0200cr3(~cr3@192-222-143-195.qc.cable.ebox.net)
2020-10-07 16:08:45 +0200arahael(~arahael@203.166.237.11) (Ping timeout: 240 seconds)
2020-10-07 16:09:07 +0200cfricke(~cfricke@unaffiliated/cfricke) (Ping timeout: 260 seconds)
2020-10-07 16:09:09 +0200fendor(~fendor@178.165.128.97.wireless.dyn.drei.com)
2020-10-07 16:09:54 +0200tzh(~tzh@2601:448:c500:5300::143b)
2020-10-07 16:10:00 +0200coot(~coot@37.30.49.218.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
2020-10-07 16:10:09 +0200yoneda(~mike@193.206.102.122) (Quit: leaving)
2020-10-07 16:10:18 +0200cfricke(~cfricke@unaffiliated/cfricke)
2020-10-07 16:11:29 +0200fendor__(~fendor@178.115.131.141.wireless.dyn.drei.com)
2020-10-07 16:11:35 +0200arahael(~arahael@203.194.43.207)
2020-10-07 16:12:08 +0200fendor_(~fendor@91.141.2.76.wireless.dyn.drei.com) (Ping timeout: 272 seconds)
2020-10-07 16:12:24 +0200PerryThePlatypus(b644f401@182.68.244.1)
2020-10-07 16:13:15 +0200fendor_(~fendor@046125249045.public.t-mobile.at)
2020-10-07 16:13:47 +0200fendor(~fendor@178.165.128.97.wireless.dyn.drei.com) (Ping timeout: 240 seconds)
2020-10-07 16:14:12 +0200cosimone(~cosimone@2001:b07:ae5:db26:f68c:50ff:fe0b:b774) (Quit: cosimone)
2020-10-07 16:14:57 +0200chaosmasttter(~chaosmast@p200300c4a70b400140e8baf6489c3871.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2020-10-07 16:16:50 +0200ralejs(~ralejs@2620:10d:c093:400::5:2842) (Read error: Connection reset by peer)
2020-10-07 16:16:50 +0200ralejs_(~ralejs@2620:10d:c093:400::5:2842)
2020-10-07 16:17:00 +0200Stanley00(~stanley00@unaffiliated/stanley00)
2020-10-07 16:17:53 +0200cfricke(~cfricke@unaffiliated/cfricke) (Quit: WeeChat 2.9)
2020-10-07 16:17:56 +0200ryjm(sid383513@gateway/web/irccloud.com/x-ddgnxwnpegroygna)
2020-10-07 16:18:24 +0200spew(uid195861@gateway/web/irccloud.com/x-ffyhszedcgmomanr)
2020-10-07 16:21:58 +0200Stanley00(~stanley00@unaffiliated/stanley00) (Ping timeout: 260 seconds)
2020-10-07 16:22:05 +0200voyons_osti(~dan@107.190.41.58)
2020-10-07 16:23:05 +0200GyroW(~GyroW@unaffiliated/gyrow) (Ping timeout: 240 seconds)
2020-10-07 16:24:15 +0200GyroW(~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
2020-10-07 16:24:15 +0200GyroW(~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
2020-10-07 16:24:15 +0200GyroW(~GyroW@unaffiliated/gyrow)
2020-10-07 16:25:24 +0200aliabrar[m](aliabrarma@gateway/shell/matrix.org/x-awvzjwkhfxuzreey)
2020-10-07 16:25:25 +0200taurux(~taurux@net-93-144-165-151.cust.vodafonedsl.it) (Ping timeout: 256 seconds)
2020-10-07 16:26:37 +0200taurux(~taurux@net-130-25-101-135.cust.vodafonedsl.it)
2020-10-07 16:27:09 +0200 <Geraldus> sm[m] should I `stack install` ghcide itself?
2020-10-07 16:27:28 +0200toorevitimirp(~tooreviti@117.182.180.245) (Ping timeout: 256 seconds)
2020-10-07 16:27:36 +0200aliabrar[m](aliabrarma@gateway/shell/matrix.org/x-awvzjwkhfxuzreey) ()
2020-10-07 16:27:41 +0200Sgeo(~Sgeo@ool-18b982ad.dyn.optonline.net)
2020-10-07 16:27:59 +0200chloe_2_2(75c9e5f4@117.201.229.244) (Ping timeout: 245 seconds)
2020-10-07 16:28:30 +0200polyrain(~polyrain@2001:8003:e501:6901:1d60:ec01:433a:e4a) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-07 16:29:32 +0200vicfred(~vicfred@unaffiliated/vicfred)
2020-10-07 16:29:32 +0200ralejs_(~ralejs@2620:10d:c093:400::5:2842) (Read error: Connection reset by peer)
2020-10-07 16:29:37 +0200MarcelineVQ(~anja@198.254.202.72) (Ping timeout: 264 seconds)
2020-10-07 16:29:43 +0200ralejs(~ralejs@2620:10d:c093:400::5:2842)
2020-10-07 16:30:00 +0200Ariakenom(~Ariakenom@193.254.193.1)
2020-10-07 16:32:01 +0200justanotheruser(~justanoth@unaffiliated/justanotheruser)
2020-10-07 16:32:23 +0200mirrorbird(~psutcliff@2a00:801:3f8:10df:3fb2:3ec3:6676:3873) (Quit: Leaving)
2020-10-07 16:33:02 +0200fendor__fendor
2020-10-07 16:34:08 +0200jneira_(~jneira@209.red-81-39-173.dynamicip.rima-tde.net)
2020-10-07 16:35:48 +0200jfredett(~jfredett@185.163.110.116)
2020-10-07 16:37:17 +0200ystael(~ystael@209.6.50.55)
2020-10-07 16:38:33 +0200polyphem(~p0lyph3m@2a02:810d:640:776c:76d7:55f6:f85b:c889)
2020-10-07 16:42:24 +0200ralejs(~ralejs@2620:10d:c093:400::5:2842) (Read error: Connection reset by peer)
2020-10-07 16:42:32 +0200acarrico(~acarrico@dhcp-68-142-39-249.greenmountainaccess.net)
2020-10-07 16:43:08 +0200kbse[m](kbsematrix@gateway/shell/matrix.org/x-zolbnfdgknvjizjy) ("Kicked by @appservice-irc:matrix.org : Idle for 30+ days")
2020-10-07 16:44:00 +0200fendor_(~fendor@046125249045.public.t-mobile.at) (Remote host closed the connection)
2020-10-07 16:46:37 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-10-07 16:46:52 +0200rekahsoft(~rekahsoft@CPE0008a20f982f-CM64777d666260.cpe.net.cable.rogers.com)
2020-10-07 16:48:07 +0200ralejs(~ralejs@2620:10d:c093:400::5:a494)
2020-10-07 16:49:25 +0200macrover(~macrover@ip70-189-231-35.lv.lv.cox.net) ("Killed buffer")
2020-10-07 16:49:31 +0200ddellacosta(~dd@86.106.121.168)
2020-10-07 16:50:32 +0200bahamas(~lucian@unaffiliated/bahamas) (Ping timeout: 260 seconds)
2020-10-07 16:51:10 +0200 <sm[m]> Geraldus: no just install the Haskell extension, it installs the rest
2020-10-07 16:52:03 +0200bahamas(~lucian@unaffiliated/bahamas)
2020-10-07 16:52:20 +0200ulidtko(~ulidtko@193.111.48.79)
2020-10-07 16:53:27 +0200hackageShpadoinkle 0.2.0.0 - A programming model for declarative, high performance user interface. https://hackage.haskell.org/package/Shpadoinkle-0.2.0.0 (fresheyeball)
2020-10-07 16:54:34 +0200raehik(~raehik@cpc96984-rdng25-2-0-cust109.15-3.cable.virginm.net)
2020-10-07 16:54:52 +0200jonathanx(~jonathan@dyn-8-sc.cdg.chalmers.se) (Remote host closed the connection)
2020-10-07 16:57:23 +0200o1lo01ol1o(~o1lo01ol1@bl11-140-216.dsl.telepac.pt)
2020-10-07 17:00:01 +0200jfredett(~jfredett@185.163.110.116) ()
2020-10-07 17:00:25 +0200cpressey(~cpressey@79-72-202-104.dynamic.dsl.as9105.com) (Quit: WeeChat 1.9.1)
2020-10-07 17:00:28 +0200hackageShpadoinkle-html 0.2.0.0 - A typed, template generated Html DSL, and helpers. https://hackage.haskell.org/package/Shpadoinkle-html-0.2.0.0 (fresheyeball)
2020-10-07 17:03:28 +0200thir(~thir@p200300f27f0fc60038c1b16891cbfa03.dip0.t-ipconnect.de)
2020-10-07 17:05:38 +0200 <tomsmeding> interesting package name
2020-10-07 17:06:12 +0200jcarpenter2(~rofl@96.78.87.197) (Ping timeout: 265 seconds)
2020-10-07 17:06:53 +0200bahamas(~lucian@unaffiliated/bahamas) (Ping timeout: 260 seconds)
2020-10-07 17:07:52 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 272 seconds)
2020-10-07 17:11:15 +0200jle`(~mstksg@cpe-23-240-75-236.socal.res.rr.com)
2020-10-07 17:11:15 +0200jle`(~mstksg@cpe-23-240-75-236.socal.res.rr.com) (Changing host)
2020-10-07 17:11:15 +0200jle`(~mstksg@unaffiliated/mstksg)
2020-10-07 17:12:14 +0200jneira_(~jneira@209.red-81-39-173.dynamicip.rima-tde.net) (Ping timeout: 256 seconds)
2020-10-07 17:12:46 +0200da39a3ee5e6b4b0d(~textual@n11211935170.netvigator.com)
2020-10-07 17:13:00 +0200jneira_(~jneira@244.red-176-83-85.dynamicip.rima-tde.net)
2020-10-07 17:13:57 +0200ransom(c4264035@gateway/vpn/protonvpn/c4264035)
2020-10-07 17:14:11 +0200ChaiTRex(~ChaiTRex@gateway/tor-sasl/chaitrex) (Remote host closed the connection)
2020-10-07 17:15:08 +0200ChaiTRex(~ChaiTRex@gateway/tor-sasl/chaitrex)
2020-10-07 17:16:04 +0200fendor(~fendor@178.115.131.141.wireless.dyn.drei.com) (Remote host closed the connection)
2020-10-07 17:16:26 +0200ralejs(~ralejs@2620:10d:c093:400::5:a494) (Read error: Connection reset by peer)
2020-10-07 17:17:03 +0200ralejs(~ralejs@2620:10d:c093:400::5:a494)
2020-10-07 17:18:20 +0200PerryThePlatypus(b644f401@182.68.244.1) (Remote host closed the connection)
2020-10-07 17:19:11 +0200 <{abby}> i wonder if it's supposed to be onomatopoeia for something
2020-10-07 17:19:31 +0200 <Uniaika> clearly haha
2020-10-07 17:20:10 +0200hggdh1(~hggdh@185.104.184.43)
2020-10-07 17:20:38 +0200jrqc(~rofl@96.78.87.197)
2020-10-07 17:21:09 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-07 17:21:39 +0200bitmapper(uid464869@gateway/web/irccloud.com/x-fjyvjeiwkooixfuo)
2020-10-07 17:22:24 +0200mmohammadi981266(~mmohammad@5.238.172.236)
2020-10-07 17:22:24 +0200chele(~chele@2a02:8106:1:f900:faca:b8ff:fe2f:8499) (Remote host closed the connection)
2020-10-07 17:23:25 +0200 <sm[m]> I feel irrationally annoyed every time it appears
2020-10-07 17:24:04 +0200 <c_wraith> I like to imagine it will become the next big UI sensation and everyone will have to act like it's a totally normal thing to say
2020-10-07 17:24:14 +0200voyons_calice(~dan@162.246.216.28)
2020-10-07 17:24:58 +0200hackageShpadoinkle-console 0.0.1.0 - Support for the native browser console https://hackage.haskell.org/package/Shpadoinkle-console-0.0.1.0 (fresheyeball)
2020-10-07 17:25:25 +0200stree(~stree@50-108-75-26.adr01.mskg.mi.frontiernet.net) (Quit: Caught exception)
2020-10-07 17:25:41 +0200stree(~stree@50-108-75-26.adr01.mskg.mi.frontiernet.net)
2020-10-07 17:25:41 +0200jneira_(~jneira@244.red-176-83-85.dynamicip.rima-tde.net) (Read error: Connection reset by peer)
2020-10-07 17:25:54 +0200jneira_(~jneira@80.30.101.206)
2020-10-07 17:26:41 +0200wroathe(~wroathe@c-73-24-27-54.hsd1.mn.comcast.net)
2020-10-07 17:26:42 +0200bahamas(~lucian@unaffiliated/bahamas)
2020-10-07 17:27:01 +0200voyons_osti(~dan@107.190.41.58) (Ping timeout: 258 seconds)
2020-10-07 17:29:35 +0200ralejs(~ralejs@2620:10d:c093:400::5:a494) (Read error: Connection reset by peer)
2020-10-07 17:29:37 +0200ralejs_(~ralejs@2620:10d:c093:400::5:a494)
2020-10-07 17:30:57 +0200hackagemorley 1.7.1 - Developer tools for the Michelson Language https://hackage.haskell.org/package/morley-1.7.1 (gromak)
2020-10-07 17:31:58 +0200Jesin(~Jesin@pool-72-66-101-18.washdc.fios.verizon.net) (Ping timeout: 260 seconds)
2020-10-07 17:32:07 +0200takuan(~takuan@178-116-218-225.access.telenet.be) (Ping timeout: 240 seconds)
2020-10-07 17:33:03 +0200jneira(501e65ce@gateway/web/cgi-irc/kiwiirc.com/ip.80.30.101.206)
2020-10-07 17:34:30 +0200bloodstalker(~bloodstal@46.166.187.178)
2020-10-07 17:35:54 +0200Tuplanolla(~Tuplanoll@91-159-68-239.elisa-laajakaista.fi)
2020-10-07 17:36:07 +0200wangoe[m](wangoematr@gateway/shell/matrix.org/x-vyhfixejmlhvwdmw) (Quit: Idle for 30+ days)
2020-10-07 17:36:09 +0200Kaivo(~Kaivo@ec2-15-222-231-32.ca-central-1.compute.amazonaws.com) (Ping timeout: 260 seconds)
2020-10-07 17:37:47 +0200ransom(c4264035@gateway/vpn/protonvpn/c4264035) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-07 17:37:48 +0200takuan(~takuan@178-116-218-225.access.telenet.be)
2020-10-07 17:38:08 +0200lyxia_lyxia
2020-10-07 17:38:47 +0200Kaivo(~Kaivo@104-200-86-99.mc.derytele.com)
2020-10-07 17:39:30 +0200ubert(~Thunderbi@2a02:8109:9880:303c:ca5b:76ff:fe29:f233) (Remote host closed the connection)
2020-10-07 17:42:42 +0200bahamas(~lucian@unaffiliated/bahamas) (Ping timeout: 272 seconds)
2020-10-07 17:42:58 +0200jneira_(~jneira@80.30.101.206) (Ping timeout: 246 seconds)
2020-10-07 17:43:10 +0200jneira_(~jneira@244.red-176-83-85.dynamicip.rima-tde.net)
2020-10-07 17:43:52 +0200ahmr88(~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net)
2020-10-07 17:44:00 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6)
2020-10-07 17:44:57 +0200hackageuniqueness-periods-vector-examples 0.10.0.0 - Usage examples for the uniqueness-periods-vector series of packages https://hackage.haskell.org/package/uniqueness-periods-vector-examples-0.10.0.0 (OleksandrZhabenko)
2020-10-07 17:45:57 +0200hackageShpadoinkle-html 0.2.0.1 - A typed, template generated Html DSL, and helpers. https://hackage.haskell.org/package/Shpadoinkle-html-0.2.0.1 (fresheyeball)
2020-10-07 17:46:01 +0200avdb(~avdb@ip-62-235-189-65.dsl.scarlet.be) (Quit: WeeChat 2.9)
2020-10-07 17:46:37 +0200bahamas(~lucian@unaffiliated/bahamas)
2020-10-07 17:47:11 +0200Habib_(~Habib@178.239.161.88)
2020-10-07 17:47:23 +0200Habib_(~Habib@178.239.161.88) ()
2020-10-07 17:48:11 +0200ahmr88(~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net) (Ping timeout: 240 seconds)
2020-10-07 17:49:01 +0200 <siraben> To what extent does Haskell perform deforestation?
2020-10-07 17:50:52 +0200solonarv(~solonarv@adijon-655-1-70-207.w90-13.abo.wanadoo.fr)
2020-10-07 17:51:19 +0200 <monochrom> When a data structure library comes with rewrite rules for that. For example Data.List has them for lists, vector has them for vectors.
2020-10-07 17:52:04 +0200 <dminuoso> siraben: Haskell itself, not so much. It requires manual participation of the programmer by writing RULEs.
2020-10-07 17:52:32 +0200Ariakenom(~Ariakenom@193.254.193.1) (Ping timeout: 256 seconds)
2020-10-07 17:53:23 +0200 <siraben> Ah I see. What's a good way to learn how to write GHC rewrite rules, and is it abusive to do so?
2020-10-07 17:53:27 +0200hackageShpadoinkle-backend-static 0.1.0.2 - A backend for rendering Shpadoinkle as Text. https://hackage.haskell.org/package/Shpadoinkle-backend-static-0.1.0.2 (fresheyeball)
2020-10-07 17:54:32 +0200 <monochrom> Compiler cannot check rule correctness, if that's what you mean by abusive.
2020-10-07 17:54:42 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6) (Ping timeout: 260 seconds)
2020-10-07 17:55:13 +0200hnOsmium0001(uid453710@gateway/web/irccloud.com/x-lpqxrmosfmyrgeny)
2020-10-07 17:55:27 +0200 <monochrom> GHC user's guide for the syntax and requirements, all of those fusion papers for how people came up with actually effective rules.
2020-10-07 17:55:27 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6)
2020-10-07 17:56:00 +0200 <monochrom> and Data.List and vector for further front-line comments
2020-10-07 17:57:54 +0200jespada(~jespada@90.254.245.15) (Ping timeout: 272 seconds)
2020-10-07 17:58:27 +0200ransom(c4264035@gateway/vpn/protonvpn/c4264035)
2020-10-07 17:59:03 +0200jespada(~jespada@90.254.245.15)
2020-10-07 17:59:17 +0200da39a3ee5e6b4b0d(~textual@n11211935170.netvigator.com) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-07 17:59:27 +0200hackageShpadoinkle-backend-pardiff 0.2.0.0 - A Virtual Dom in pure Haskell, based on Html as an Alignable Functor. https://hackage.haskell.org/package/Shpadoinkle-backend-pardiff-0.2.0.0 (fresheyeball)
2020-10-07 18:00:19 +0200Rudd0(~Rudd0@185.189.115.103)
2020-10-07 18:00:58 +0200hackageShpadoinkle-backend-snabbdom 0.2.0.0 - Use the high-performance Snabbdom virtual dom library written in JavaScript. https://hackage.haskell.org/package/Shpadoinkle-backend-snabbdom-0.2.0.0 (fresheyeball)
2020-10-07 18:01:32 +0200conal(~conal@209.58.130.230) (Quit: Computer has gone to sleep.)
2020-10-07 18:01:49 +0200GyroW_(~GyroW@d54C03E98.access.telenet.be)
2020-10-07 18:01:49 +0200GyroW_(~GyroW@d54C03E98.access.telenet.be) (Changing host)
2020-10-07 18:01:49 +0200GyroW_(~GyroW@unaffiliated/gyrow)
2020-10-07 18:03:19 +0200jonathanx(~jonathan@dyn-8-sc.cdg.chalmers.se)
2020-10-07 18:03:20 +0200 <carbolymer> is there a way to fix this code or do I have to use type variable? https://repl.it/repls/CooperativeOrnateBrowsers#main.hs
2020-10-07 18:03:36 +0200shatriff(~vitaliish@88.155.140.206)
2020-10-07 18:04:27 +0200GyroW(~GyroW@unaffiliated/gyrow) (Ping timeout: 240 seconds)
2020-10-07 18:04:28 +0200thir(~thir@p200300f27f0fc60038c1b16891cbfa03.dip0.t-ipconnect.de) (Remote host closed the connection)
2020-10-07 18:05:17 +0200alp(~alp@2a01:e0a:58b:4920:75d3:6a0d:821b:a780) (Ping timeout: 246 seconds)
2020-10-07 18:05:26 +0200shatriff_(~vitaliish@128-124-197-175.mobile.vf-ua.net)
2020-10-07 18:05:30 +0200yorick(~yorick@oftn/oswg-member/yorick)
2020-10-07 18:06:58 +0200hackagepolysemy-resume 0.1.0.0 - Polysemy error tracking https://hackage.haskell.org/package/polysemy-resume-0.1.0.0 (tek)
2020-10-07 18:06:59 +0200fendor(~fendor@e237-037.eduroam.tuwien.ac.at)
2020-10-07 18:07:17 +0200 <dsal> carbolymer: Are you saying you want to have a type constraint on a field, but you don't want to express it?
2020-10-07 18:07:27 +0200 <siraben> carbolymer: looks like you're using https://wiki.haskell.org/Existential_type
2020-10-07 18:07:42 +0200 <monochrom> pure (Foo print)
2020-10-07 18:08:20 +0200 <carbolymer> siraben, yes, that's existential type
2020-10-07 18:08:21 +0200jneira_(~jneira@244.red-176-83-85.dynamicip.rima-tde.net) (Read error: Connection reset by peer)
2020-10-07 18:08:33 +0200jneira_(~jneira@80.30.101.206)
2020-10-07 18:08:34 +0200 <carbolymer> dsal, `Show a` isn't enough?
2020-10-07 18:08:39 +0200 <monochrom> https://repl.it/repls/MixedWealthyGraphs
2020-10-07 18:08:52 +0200shatriff(~vitaliish@88.155.140.206) (Ping timeout: 246 seconds)
2020-10-07 18:09:06 +0200 <siraben> carbolymer: I would caution against naming your constructor `mkFoo`, btw
2020-10-07 18:09:25 +0200 <carbolymer> monochrom, wow thanks, I don't get it why brackets make difference
2020-10-07 18:09:28 +0200hackageindigo 0.3.0 - Convenient imperative eDSL over Lorentz. https://hackage.haskell.org/package/indigo-0.3.0 (gromak)
2020-10-07 18:09:39 +0200 <carbolymer> siraben, that's minimal example from my real problem ;)
2020-10-07 18:09:40 +0200 <siraben> nevermind, I saw that you have an IO action inside Foo, here
2020-10-07 18:09:40 +0200 <siraben> heh*
2020-10-07 18:09:52 +0200 <monochrom> Something about predicativity.
2020-10-07 18:10:36 +0200jonatan(~nate@h77-53-70-163.cust.a3fiber.se) (Ping timeout: 256 seconds)
2020-10-07 18:11:39 +0200jonatan(~nate@h77-53-70-163.cust.a3fiber.se)
2020-10-07 18:13:10 +0200 <monochrom> that (.) monomorphizes, apposition (application as juxtaposition) preserves polymorphism, and you want polymorphism preserved in this case.
2020-10-07 18:14:00 +0200 <monochrom> (.) monomorphizes its operands
2020-10-07 18:14:54 +0200 <dsal> Oh that's weird. I didn't even notice the failure because I changed it to `pure $ Foo print` in my example when I was trying to run it because it was too much punctuation.
2020-10-07 18:14:58 +0200hackageShpadoinkle-router 0.2.0.0 - A single page application rounter for Shpadoinkle based on Servant. https://hackage.haskell.org/package/Shpadoinkle-router-0.2.0.0 (fresheyeball)
2020-10-07 18:15:44 +0200voyons_calisse(~dan@107-190-41-58.cpe.teksavvy.com)
2020-10-07 18:15:48 +0200jonathanx(~jonathan@dyn-8-sc.cdg.chalmers.se) (Remote host closed the connection)
2020-10-07 18:15:55 +0200Ariakenom(~Ariakenom@h-155-4-221-50.NA.cust.bahnhof.se)
2020-10-07 18:17:25 +0200nyd(~nyd@unaffiliated/elysian) (Quit: nyd)
2020-10-07 18:17:52 +0200jokester_(~mono@2001:19f0:5:1e1d:5400:1ff:fe45:5877) (Quit: WeeChat 2.8)
2020-10-07 18:17:52 +0200 <monochrom> A future GHC version will probably be happy with "(pure . Foo) print". Someone has figured out how to support impredicativity for the 3rd time.
2020-10-07 18:18:14 +0200jokester(~mono@unaffiliated/jokester)
2020-10-07 18:18:35 +0200Stanley00(~stanley00@unaffiliated/stanley00)
2020-10-07 18:18:37 +0200voyons_calice(~dan@162.246.216.28) (Ping timeout: 260 seconds)
2020-10-07 18:18:51 +0200 <siraben> monochrom: What's difficult about impredicativity? I'm not familiar with the issue
2020-10-07 18:21:57 +0200ahmr88(~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net)
2020-10-07 18:22:47 +0200Stanley00(~stanley00@unaffiliated/stanley00) (Ping timeout: 240 seconds)
2020-10-07 18:22:59 +0200ixlun(~matthew@213.205.241.94)
2020-10-07 18:24:32 +0200 <ixlun> Hi all, I was just wondering if there was a language extension that allowed trivially extractable typeclasses to be extracted in pattern matching. Suppose a :: Maybe A then: case a of Maybe -> lift . print
2020-10-07 18:25:00 +0200 <ixlun> That way you can omit the variable name and tacking it on to the end of the pattern match
2020-10-07 18:26:33 +0200ahmr88(~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net) (Ping timeout: 260 seconds)
2020-10-07 18:26:56 +0200GyroW(~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
2020-10-07 18:26:56 +0200GyroW(~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
2020-10-07 18:26:56 +0200GyroW(~GyroW@unaffiliated/gyrow)
2020-10-07 18:27:40 +0200GyroW_(~GyroW@unaffiliated/gyrow) (Ping timeout: 272 seconds)
2020-10-07 18:28:19 +0200brandly(~brandly@c-73-68-15-46.hsd1.ma.comcast.net)
2020-10-07 18:28:33 +0200 <phadej> the answer is traverse(_)
2020-10-07 18:28:55 +0200 <phadej> :t traverse_ print :: Maybe a -> IO ()
2020-10-07 18:28:57 +0200 <lambdabot> error:
2020-10-07 18:28:57 +0200 <lambdabot> • No instance for (Show a1) arising from a use of ‘print’
2020-10-07 18:28:57 +0200 <lambdabot> Possible fix:
2020-10-07 18:29:00 +0200 <phadej> :t traverse_ print :: Show a => Maybe a -> IO ()
2020-10-07 18:29:02 +0200 <lambdabot> Show a => Maybe a -> IO ()
2020-10-07 18:29:11 +0200 <phadej> :t traverse_ print :: Show a => Either b a -> IO ()
2020-10-07 18:29:13 +0200 <lambdabot> Show a => Either b a -> IO ()
2020-10-07 18:29:57 +0200hackageShpadoinkle-widgets 0.1.0.0 - A collection of common reusable types and components. https://hackage.haskell.org/package/Shpadoinkle-widgets-0.1.0.0 (fresheyeball)
2020-10-07 18:30:06 +0200 <ixlun> :t traverse_
2020-10-07 18:30:07 +0200 <lambdabot> (Foldable t, Applicative f) => (a -> f b) -> t a -> f ()
2020-10-07 18:30:48 +0200 <ixlun> Ahh, nice
2020-10-07 18:32:42 +0200 <phadej> :t Data.Foldable.for_
2020-10-07 18:32:44 +0200 <lambdabot> (Foldable t, Applicative f) => t a -> (a -> f b) -> f ()
2020-10-07 18:32:50 +0200 <phadej> is nice too
2020-10-07 18:32:58 +0200 <phadej> (it's just flipped traverse_)
2020-10-07 18:34:25 +0200jchia_(~jchia@58.32.35.239)
2020-10-07 18:34:52 +0200cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net)
2020-10-07 18:35:50 +0200PerryThePlatypus(b644f401@182.68.244.1)
2020-10-07 18:36:01 +0200 <koz_> phadej: The answer to everything.
2020-10-07 18:36:17 +0200nineonine(~nineonine@216-19-190-182.dyn.novuscom.net)
2020-10-07 18:36:22 +0200alp(~alp@2a01:e0a:58b:4920:88ef:76a6:5d73:1be6)
2020-10-07 18:36:57 +0200hackageShpadoinkle-examples 0.0.0.2 - Example usages of Shpadoinkle https://hackage.haskell.org/package/Shpadoinkle-examples-0.0.0.2 (fresheyeball)
2020-10-07 18:37:55 +0200shatriff_(~vitaliish@128-124-197-175.mobile.vf-ua.net) (Ping timeout: 246 seconds)
2020-10-07 18:39:09 +0200shatriff(~vitaliish@88.155.140.206)
2020-10-07 18:41:25 +0200jneira_(~jneira@80.30.101.206) (Ping timeout: 240 seconds)
2020-10-07 18:42:05 +0200thir(~thir@p200300f27f0fc60038c1b16891cbfa03.dip0.t-ipconnect.de)
2020-10-07 18:42:05 +0200ralejs_(~ralejs@2620:10d:c093:400::5:a494) (Read error: Connection reset by peer)
2020-10-07 18:42:38 +0200ralejs(~ralejs@2620:10d:c093:400::5:a494)
2020-10-07 18:44:07 +0200 <frdg> what is an example of a reflexive relation being used in haskell?
2020-10-07 18:45:04 +0200 <siraben> frdg: type level equality
2020-10-07 18:45:23 +0200 <siraben> https://hackage.haskell.org/package/base-4.9.1.0/docs/Data-Type-Equality.html
2020-10-07 18:45:43 +0200 <zincy_> First class IO means you can pass IO values around like any other value right? In which cases doesn't any language that has promises/futures have first class IO?
2020-10-07 18:46:22 +0200 <frdg> siraben: thanks I am looking at this
2020-10-07 18:47:07 +0200thir(~thir@p200300f27f0fc60038c1b16891cbfa03.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2020-10-07 18:51:05 +0200 <monochrom> Even more relaxedly, every language that has higher-order functions.
2020-10-07 18:51:21 +0200 <monochrom> or rather, higher-order procedures.
2020-10-07 18:51:32 +0200shatriff(~vitaliish@88.155.140.206) (Remote host closed the connection)
2020-10-07 18:51:39 +0200GyroW(~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie)
2020-10-07 18:51:54 +0200GyroW(~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
2020-10-07 18:51:54 +0200GyroW(~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
2020-10-07 18:51:54 +0200GyroW(~GyroW@unaffiliated/gyrow)
2020-10-07 18:51:58 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-10-07 18:52:09 +0200nineonine(~nineonine@216-19-190-182.dyn.novuscom.net) (Remote host closed the connection)
2020-10-07 18:52:52 +0200 <monochrom> But that's too easy.
2020-10-07 18:52:58 +0200 <ixlun> Does anyone know how I call a StateT S IO() monad?
2020-10-07 18:53:51 +0200 <ixlun> I've tried: main = runState uciMain newGame
2020-10-07 18:54:34 +0200 <monochrom> That looks right.
2020-10-07 18:54:46 +0200 <monochrom> err, runStateT instead
2020-10-07 18:55:06 +0200tomenos(bd0624fa@189.6.36.250)
2020-10-07 18:55:16 +0200tomenos(bd0624fa@189.6.36.250) (Remote host closed the connection)
2020-10-07 18:55:46 +0200 <ixlun> Ahh, didn't know there were transformer variations!
2020-10-07 18:58:18 +0200 <monochrom> siraben: Impredicativity makes type inference more difficult. I also heard that the GHC devs couldn't fit it into the particular way GHC does type inference. (And that particular way is not to be thrown away lightly, it has been successful for basically everything else.)
2020-10-07 18:58:53 +0200 <monochrom> But there is a recent paper that looks promising.
2020-10-07 19:00:19 +0200 <monochrom> https://github.com/ghc-proposals/ghc-proposals/pull/274
2020-10-07 19:00:35 +0200macrover(~macrover@ip70-189-231-35.lv.lv.cox.net)
2020-10-07 19:01:24 +0200chenshen(~chenshen@2620:10d:c090:400::5:7709)
2020-10-07 19:01:25 +0200 <monochrom> This requires a compromise in existing type inference, i.e., breaks backward compatibility. The compromise will appear in 9.0, is already in the release candidate.
2020-10-07 19:01:53 +0200isovector1(~isovector@172.103.216.166.cable.tpia.cipherkey.com)
2020-10-07 19:01:57 +0200 <monochrom> Then the impredicativity itself will be added later.
2020-10-07 19:02:02 +0200nineonine(~nineonine@216.81.48.202)
2020-10-07 19:02:30 +0200 <zincy_> monochrom: What do you mean by too easy?
2020-10-07 19:02:53 +0200 <monochrom> Having first-class I/O actions.
2020-10-07 19:03:10 +0200isovector1(~isovector@172.103.216.166.cable.tpia.cipherkey.com) ()
2020-10-07 19:03:47 +0200 <monochrom> If you have first-class procedures then you have first-class I/O actions as a special case.
2020-10-07 19:04:46 +0200 <monochrom> The way Haskell ups the game is not merely having first-class I/O actions, that's too easy. The way Haskell ups the game is that even the sequential composition connectives >>= and <*> are first class.
2020-10-07 19:04:58 +0200geekosaur(ac3a8b66@172.58.139.102)
2020-10-07 19:05:30 +0200 <monochrom> Dumbing down to mainstream speak, Haskell has first-class and programmable semicolon, other languages don't.
2020-10-07 19:06:58 +0200 <zincy_> monochrom: Ah thanks
2020-10-07 19:07:13 +0200 <monochrom> For example look at how even Rust has only managed to allow semicolon for two effect types, normal I/O and exception-throwing I/O. You can't make semicolon also work for your own homemade effect type. Well Haskell can.
2020-10-07 19:08:28 +0200hackagesilkscreen 0.0.0.2 - Prettyprinting transformers. https://hackage.haskell.org/package/silkscreen-0.0.0.2 (robrix)
2020-10-07 19:08:52 +0200jneira_(~jneira@80.30.101.206)
2020-10-07 19:09:09 +0200fendor_(~fendor@t204-126.demo.tuwien.ac.at)
2020-10-07 19:10:38 +0200 <zincy_> monochrom: What is a useful definition of the term "computational effect"
2020-10-07 19:10:52 +0200 <zincy_> Just an environment modification in a computation?
2020-10-07 19:10:55 +0200jpcooper(~user@unaffiliated/jpcooper)
2020-10-07 19:11:00 +0200Gurkenglas_(~Gurkengla@unaffiliated/gurkenglas)
2020-10-07 19:11:20 +0200 <monochrom> I don't think you should aim for a mathematically checkable definition. Rather, expect a social definition.
2020-10-07 19:11:36 +0200Saukk(~Saukk@2001:998:f1:3963:1c59:9bb5:b94c:2)
2020-10-07 19:11:48 +0200 <monochrom> But you can always just say "monad" :)
2020-10-07 19:11:56 +0200jpcooper(~user@unaffiliated/jpcooper) (Client Quit)
2020-10-07 19:12:00 +0200fendor(~fendor@e237-037.eduroam.tuwien.ac.at) (Ping timeout: 272 seconds)
2020-10-07 19:12:14 +0200 <zincy_> It is odd that so many things in programming languages rely on social definitions
2020-10-07 19:12:34 +0200 <zincy_> so monad <==> computational effect
2020-10-07 19:12:45 +0200 <monochrom> Ahem, programming is a social construct. >:)
2020-10-07 19:13:15 +0200thunderrd(~thunderrd@183.182.110.178) (Read error: Connection reset by peer)
2020-10-07 19:13:22 +0200 <monochrom> I have settled with http://www.cs.utoronto.ca/~trebla/CSCC24-2020-Summer/06-fam.html#effect
2020-10-07 19:13:27 +0200jrqc(~rofl@96.78.87.197) (Ping timeout: 240 seconds)
2020-10-07 19:13:46 +0200thunderrd(~thunderrd@183.182.110.178)
2020-10-07 19:13:57 +0200 <monochrom> e.g., "things a mathematical function cannot do"
2020-10-07 19:14:17 +0200avdb(~avdb@ip-62-235-189-65.dsl.scarlet.be)
2020-10-07 19:14:27 +0200hackagesequence-formats 1.5.1.4 - A package with basic parsing utilities for several Bioinformatic data formats. https://hackage.haskell.org/package/sequence-formats-1.5.1.4 (stephan_schiffels)
2020-10-07 19:14:50 +0200 <zincy_> Is Maybe not a deterministic effect?
2020-10-07 19:15:53 +0200 <monochrom> It is very much like how "computation" itself doesn't have a mathematical definition either, only a social one. We socially use the Church-Turing thesis, and this means we anticipate that it is possible that one day we may find and change to something even better.
2020-10-07 19:16:06 +0200shatriff(~vitaliish@88.155.140.206)
2020-10-07 19:16:46 +0200 <monochrom> But X->Y cannot do what X -> Maybe Y does
2020-10-07 19:17:05 +0200 <zincy_> yeah that always bothers me about the fact we cannot agree what computation means
2020-10-07 19:17:11 +0200 <monochrom> Declaring failure is considered to be effectful.
2020-10-07 19:17:30 +0200 <monochrom> Computing is a social construct. Change my mind. >:)
2020-10-07 19:17:43 +0200 <geekosaur> "failure" is a social construct, tbh
2020-10-07 19:17:48 +0200 <monochrom> haha
2020-10-07 19:17:51 +0200 <zincy_> So deterministic in a narrow sense
2020-10-07 19:18:00 +0200 <monochrom> I love this "social construct" meme :)
2020-10-07 19:18:04 +0200 <zincy_> As in 2 + 2 never relies on context
2020-10-07 19:18:17 +0200 <koz_> Being deterministic and being context-free are not equivalent.
2020-10-07 19:18:22 +0200thir(~thir@p200300f27f0fc60038c1b16891cbfa03.dip0.t-ipconnect.de)
2020-10-07 19:18:23 +0200jrqc(~rofl@96.78.87.197)
2020-10-07 19:18:56 +0200 <zincy_> koz_: Right depends on the context
2020-10-07 19:19:17 +0200emmanuel`(~user@2604:2000:1382:ce03:25fa:9e0d:1140:beff) (Remote host closed the connection)
2020-10-07 19:19:25 +0200emmanuel`(~user@2604:2000:1382:ce03:6c74:afa7:7b91:b469)
2020-10-07 19:19:58 +0200 <zincy_> monochrom: What is a social construct
2020-10-07 19:20:24 +0200emmanuel`(~user@2604:2000:1382:ce03:6c74:afa7:7b91:b469) ()
2020-10-07 19:20:36 +0200 <monochrom> "artificial" on steroid
2020-10-07 19:20:42 +0200 <zincy_> What about biological computation at the level of proteins
2020-10-07 19:20:47 +0200emmanuel_erc(~user@2604:2000:1382:ce03:6c74:afa7:7b91:b469)
2020-10-07 19:20:56 +0200 <zincy_> Or should i say "computation"
2020-10-07 19:21:31 +0200 <zincy_> If humans weren't around these cellular computations would still occur in other animals
2020-10-07 19:21:46 +0200 <zincy_> This begs the question
2020-10-07 19:21:52 +0200wroathe_(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-10-07 19:22:23 +0200livvy(~livvy@gateway/tor-sasl/livvy) (Ping timeout: 240 seconds)
2020-10-07 19:22:24 +0200 <geekosaur> anything not captured by mathematical laws is a construct over them. social construct is because we define what programming means, so it's our construct. yours is a biological construct
2020-10-07 19:22:46 +0200wroathe(~wroathe@c-73-24-27-54.hsd1.mn.comcast.net) (Ping timeout: 272 seconds)
2020-10-07 19:22:47 +0200thir(~thir@p200300f27f0fc60038c1b16891cbfa03.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2020-10-07 19:22:50 +0200howdoi(uid224@gateway/web/irccloud.com/x-sgkwzvljtciaifbw)
2020-10-07 19:22:58 +0200hackageShpadoinkle-lens 0.0.0.1 - https://hackage.haskell.org/package/Shpadoinkle-lens-0.0.0.1 (fresheyeball)
2020-10-07 19:23:17 +0200 <zincy_> Right but biological construct isn't in the same class as social constructs
2020-10-07 19:23:55 +0200 <geekosaur> that depends on your definitions :)
2020-10-07 19:23:55 +0200 <zincy_> If you take a photo of a paint splatter and it happens to be a valid perl program, is it a program?
2020-10-07 19:24:19 +0200 <zincy_> I would say no according to any conceptually useful definition of program
2020-10-07 19:24:20 +0200 <monochrom> I think I don't care.
2020-10-07 19:24:33 +0200alp(~alp@2a01:e0a:58b:4920:88ef:76a6:5d73:1be6) (Ping timeout: 272 seconds)
2020-10-07 19:24:37 +0200 <zincy_> How can you not care about definitions
2020-10-07 19:24:42 +0200 <geekosaur> it is a program. it may not be a _useful_ program, but that's where the "social" part comes in
2020-10-07 19:25:03 +0200 <zincy_> If someone asked you to do a job as a programmer and then handed you a paintbrush would you care then?
2020-10-07 19:25:15 +0200 <monochrom> I care about definitions. It's why I use different definitions for different purposes.
2020-10-07 19:25:47 +0200macrover(~macrover@ip70-189-231-35.lv.lv.cox.net) (Remote host closed the connection)
2020-10-07 19:25:48 +0200 <zincy_> Does that work
2020-10-07 19:26:34 +0200taurux(~taurux@net-130-25-101-135.cust.vodafonedsl.it) (Ping timeout: 272 seconds)
2020-10-07 19:26:55 +0200alp(~alp@2a01:e0a:58b:4920:78a9:bf4d:b06b:60d7)
2020-10-07 19:27:14 +0200taurux(~taurux@net-130-25-101-135.cust.vodafonedsl.it)
2020-10-07 19:27:16 +0200brandly(~brandly@c-73-68-15-46.hsd1.ma.comcast.net) (Ping timeout: 246 seconds)
2020-10-07 19:27:27 +0200hackageShpadoinkle-lens 0.0.0.2 - Lens combinators for Shpadoinkle applications. https://hackage.haskell.org/package/Shpadoinkle-lens-0.0.0.2 (fresheyeball)
2020-10-07 19:28:07 +0200 <monochrom> A student handing in a paint splatter that happens to be a valid perl program that fulfills my assignment requirements, I'll accept as a submission that fulfills my assignment requirements.
2020-10-07 19:28:28 +0200stree(~stree@50-108-75-26.adr01.mskg.mi.frontiernet.net) (Quit: Caught exception)
2020-10-07 19:28:43 +0200mav1(~mav@i5E86B7C0.versanet.de)
2020-10-07 19:28:45 +0200stree(~stree@50-108-75-26.adr01.mskg.mi.frontiernet.net)
2020-10-07 19:28:47 +0200 <monochrom> This is independent of that I won't take a programmer job that gives me a paintbrush, not a keyboard and monitor, as the tool they make me use for the job.
2020-10-07 19:28:58 +0200abhixec(~abhixec@c-67-169-141-95.hsd1.ca.comcast.net)
2020-10-07 19:29:30 +0200 <monochrom> And that is yet independent of that I'm fine if some other programmer takes that job.
2020-10-07 19:29:56 +0200 <zincy_> this is far too nuanced
2020-10-07 19:30:05 +0200 <geekosaur> why?
2020-10-07 19:30:16 +0200 <monochrom> Compared to what?
2020-10-07 19:30:18 +0200 <zincy_> sarcasm
2020-10-07 19:30:37 +0200Jesin(~Jesin@pool-72-66-101-18.washdc.fios.verizon.net)
2020-10-07 19:30:52 +0200 <zincy_> I guess definitions should be useful and usefulness changes depending on circumstance
2020-10-07 19:31:08 +0200 <monochrom> It has always been that way.
2020-10-07 19:31:28 +0200 <zincy_> When you hit 20 there should be a list of things like this that everyone can read
2020-10-07 19:31:29 +0200 <geekosaur> "definitions should be useful" will itself get you into odd corner cases
2020-10-07 19:31:33 +0200 <monochrom> Just look at how the mathematicians have two definitions for the natural numbers, three definitions for exponentiation.
2020-10-07 19:31:56 +0200 <monochrom> two for rings, too
2020-10-07 19:31:57 +0200 <zincy_> geekosaur: how so?
2020-10-07 19:32:08 +0200 <monochrom> actually, maybe four for rings.
2020-10-07 19:33:12 +0200 <geekosaur> (1) useful for whom? (2) if the universe of discourse is at all complex, you will have definitions that at least seem uninteresting
2020-10-07 19:34:27 +0200xff0x(~fox@2001:1a81:5374:e100:2c9e:dd16:8ce3:558c) (Ping timeout: 260 seconds)
2020-10-07 19:36:05 +0200xff0x(~fox@141.98.255.146)
2020-10-07 19:37:41 +0200ffl^(ffl@ip98-184-89-2.mc.at.cox.net) ()
2020-10-07 19:38:54 +0200elfets(~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de)
2020-10-07 19:38:59 +0200tsrt^(tsrt@ip98-184-89-2.mc.at.cox.net)
2020-10-07 19:41:10 +0200 <tomsmeding> what's the smallest uninteresting natural number?
2020-10-07 19:41:42 +0200 <ghoulguy> 0, natural numbers are uninteresting
2020-10-07 19:41:50 +0200 <monochrom> \∩/
2020-10-07 19:41:52 +0200 <geekosaur> "seem" is also operative there (and has my first question lurking behind it)
2020-10-07 19:42:00 +0200 <tomsmeding> https://en.wikipedia.org/wiki/Number_theory
2020-10-07 19:42:27 +0200 <tomsmeding> geekosaur: indeed
2020-10-07 19:42:56 +0200 <ghoulguy> tomsmeding: We'll have to propose that page for removal as "not notable"
2020-10-07 19:43:05 +0200xff0x(~fox@141.98.255.146) (Ping timeout: 240 seconds)
2020-10-07 19:43:22 +0200 <tomsmeding> 🤔
2020-10-07 19:43:49 +0200 <zincy_> Isnt term social construct a bit nebulous
2020-10-07 19:44:04 +0200 <zincy_> Since it can be sort of self referential
2020-10-07 19:44:12 +0200jluttine_(~jluttine@87-95-204-180.bb.dnainternet.fi) (Quit: WeeChat 2.8)
2020-10-07 19:44:17 +0200 <geekosaur> we're a bit nebulous too
2020-10-07 19:44:18 +0200 <monochrom> Are you OK?
2020-10-07 19:44:39 +0200 <zincy_> Not really I have a javascript interview tomorrow
2020-10-07 19:44:53 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-07 19:45:17 +0200xff0x(~fox@2001:1a81:5374:e100:2c9e:dd16:8ce3:558c)
2020-10-07 19:45:35 +0200 <tomsmeding> F
2020-10-07 19:46:07 +0200jluttine(~jluttine@87-95-204-180.bb.dnainternet.fi)
2020-10-07 19:46:10 +0200fendor__(~fendor@e237-037.eduroam.tuwien.ac.at)
2020-10-07 19:46:11 +0200 <zincy_> So I am going to be interrogated on my knowledge of how "types" work in javascript
2020-10-07 19:46:25 +0200 <tomsmeding> well it has a type system for sure
2020-10-07 19:46:38 +0200 <tomsmeding> it's just that the number of distinct types is not too large
2020-10-07 19:46:53 +0200 <zincy_> Can't everything be undefined though
2020-10-07 19:46:55 +0200 <frdg> why is the default behavior of liftA2 to apply the function `cartesianally?` instead of zipping? Is this more than an arbitrary decision?
2020-10-07 19:46:56 +0200 <zincy_> or null
2020-10-07 19:47:24 +0200 <solonarv> frdg: I assume you're talking specifically about its behavior on [] ?
2020-10-07 19:47:49 +0200 <monochrom> It agrees with >>=
2020-10-07 19:47:59 +0200 <solonarv> there is a reason: the cartesian-product behavior is compatible with the Monad [] instance, but the zippy behavior isn't
2020-10-07 19:48:07 +0200worc3131(~quassel@2a02:c7f:c026:9500:a0d2:b9d1:42a4:69b4) (Quit: No Ping reply in 180 seconds.)
2020-10-07 19:48:20 +0200 <solonarv> (and in fact there isn't a Monad instance that would agree with the zippy behavior)
2020-10-07 19:48:20 +0200voyons_calisse(~dan@107-190-41-58.cpe.teksavvy.com) (Read error: Connection reset by peer)
2020-10-07 19:48:36 +0200 <frdg> yes this is what I meant
2020-10-07 19:48:44 +0200LKoen(~LKoen@lstlambert-657-1-123-43.w92-154.abo.wanadoo.fr)
2020-10-07 19:48:46 +0200 <monochrom> You can use the ZipList newtype wrapper to get zipping liftA2
2020-10-07 19:48:47 +0200voyons_calisse(~dan@107-190-41-58.cpe.teksavvy.com)
2020-10-07 19:49:16 +0200 <tomsmeding> zincy_: indeed; from some perspective, I think one could argue that JS has only one type
2020-10-07 19:49:22 +0200fendor_(~fendor@t204-126.demo.tuwien.ac.at) (Ping timeout: 272 seconds)
2020-10-07 19:49:30 +0200 <frdg> monochrom: And this type comes with an applicative instance that behaves with zipping?
2020-10-07 19:49:37 +0200 <solonarv> frdg: yup
2020-10-07 19:49:37 +0200 <monochrom> Yes.
2020-10-07 19:49:44 +0200 <frdg> ok thanks
2020-10-07 19:49:54 +0200 <tomsmeding> unless you accept that (almost) all functions work on all types somehow magically
2020-10-07 19:50:01 +0200 <monochrom> I think lambdabot has it, let me try.
2020-10-07 19:50:06 +0200 <solonarv> > (+) <$> ZipList [1,2,3] <*> ZipList [4,5,6]
2020-10-07 19:50:09 +0200 <lambdabot> ZipList {getZipList = [5,7,9]}
2020-10-07 19:50:14 +0200 <monochrom> Yeah, that.
2020-10-07 19:50:35 +0200John20(~John@82.46.59.122) (Ping timeout: 240 seconds)
2020-10-07 19:52:15 +0200kritzefitz(~kritzefit@200116b800861f00d9c841e4661e7ddf.dip.versatel-1u1.de)
2020-10-07 19:53:21 +0200PerryThePlatypus(b644f401@182.68.244.1) (Remote host closed the connection)
2020-10-07 19:54:53 +0200oldsk00l(~znc@ec2-52-57-204-76.eu-central-1.compute.amazonaws.com) (Remote host closed the connection)
2020-10-07 19:58:15 +0200oisdk(~oisdk@2001:bb6:3329:d100:c982:e387:7052:58be) (Quit: oisdk)
2020-10-07 19:58:58 +0200worc3131(~quassel@2a02:c7f:c026:9500:a0d2:b9d1:42a4:69b4)
2020-10-07 20:00:01 +0200hggdh1(~hggdh@185.104.184.43) ()
2020-10-07 20:00:36 +0200abhixec(~abhixec@c-67-169-141-95.hsd1.ca.comcast.net) (Ping timeout: 256 seconds)
2020-10-07 20:01:09 +0200conal(~conal@209.58.130.230)
2020-10-07 20:01:17 +0200oldsk00l(~znc@ec2-52-57-204-76.eu-central-1.compute.amazonaws.com)
2020-10-07 20:01:50 +0200oldsk00l(~znc@ec2-52-57-204-76.eu-central-1.compute.amazonaws.com) (Remote host closed the connection)
2020-10-07 20:05:01 +0200jrqc(~rofl@96.78.87.197) (Ping timeout: 260 seconds)
2020-10-07 20:06:49 +0200avdb(~avdb@ip-62-235-189-65.dsl.scarlet.be) (Ping timeout: 264 seconds)
2020-10-07 20:07:32 +0200avdb(~avdb@ip-62-235-189-65.dsl.scarlet.be)
2020-10-07 20:07:33 +0200jrqc(~rofl@96.78.87.197)
2020-10-07 20:07:46 +0200kayvan(~user@52-119-115-243.PUBLIC.monkeybrains.net)
2020-10-07 20:07:57 +0200John20(~John@82.46.59.122)
2020-10-07 20:11:28 +0200nitrix-or-treatsnitrix
2020-10-07 20:12:34 +0200thir(~thir@pd9e1baba.dip0.t-ipconnect.de)
2020-10-07 20:13:47 +0200John20(~John@82.46.59.122) (Ping timeout: 240 seconds)
2020-10-07 20:13:47 +0200worc3131(~quassel@2a02:c7f:c026:9500:a0d2:b9d1:42a4:69b4) (Ping timeout: 240 seconds)
2020-10-07 20:14:21 +0200nitrixnitrix-or-treats
2020-10-07 20:14:27 +0200avdb(~avdb@ip-62-235-189-65.dsl.scarlet.be) (Quit: WeeChat 2.9)
2020-10-07 20:14:53 +0200worc3131(~quassel@94.4.49.118)
2020-10-07 20:15:29 +0200geekosaur(ac3a8b66@172.58.139.102) (Ping timeout: 245 seconds)
2020-10-07 20:16:45 +0200thir(~thir@pd9e1baba.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2020-10-07 20:17:02 +0200shatriff(~vitaliish@88.155.140.206) (Remote host closed the connection)
2020-10-07 20:17:22 +0200nitrix-or-treatsnitrix-or-treat
2020-10-07 20:19:24 +0200raichoo(~raichoo@213.240.178.58) (Quit: Lost terminal)
2020-10-07 20:19:26 +0200Stanley00(~stanley00@unaffiliated/stanley00)
2020-10-07 20:19:30 +0200sfvm(~sfvm@37.228.215.148)
2020-10-07 20:20:01 +0200KuluBot(~KuluBot@185.163.110.116)
2020-10-07 20:20:57 +0200hackagegit-annex 8.20201007 - manage files with git, without checking their contents into git https://hackage.haskell.org/package/git-annex-8.20201007 (JoeyHess)
2020-10-07 20:21:20 +0200frdg(60e94035@pool-96-233-64-53.bstnma.fios.verizon.net) (Remote host closed the connection)
2020-10-07 20:22:07 +0200jrqc(~rofl@96.78.87.197) (Ping timeout: 240 seconds)
2020-10-07 20:24:13 +0200Stanley00(~stanley00@unaffiliated/stanley00) (Ping timeout: 264 seconds)
2020-10-07 20:24:19 +0200jrqc(~rofl@96.78.87.197)
2020-10-07 20:24:59 +0200blackfield(~blackfiel@unaffiliated/blackfield) ("Leaving")
2020-10-07 20:25:24 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6) (Quit: cosimone)
2020-10-07 20:29:02 +0200geekosaur(ac3a8bcd@172.58.139.205)
2020-10-07 20:31:53 +0200jcazevedo(~jcazevedo@165.237.60.94.rev.vodafone.pt)
2020-10-07 20:34:06 +0200alp(~alp@2a01:e0a:58b:4920:78a9:bf4d:b06b:60d7) (Remote host closed the connection)
2020-10-07 20:34:09 +0200chaosmasttter(~chaosmast@p200300c4a70b400140e8baf6489c3871.dip0.t-ipconnect.de)
2020-10-07 20:34:17 +0200alp(~alp@2a01:e0a:58b:4920:a993:b715:b3da:be82)
2020-10-07 20:37:35 +0200snakemas1(~snakemast@213.100.206.23) (Ping timeout: 256 seconds)
2020-10-07 20:39:10 +0200John20(~John@82.46.59.122)
2020-10-07 20:40:02 +0200wroathe_(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 272 seconds)
2020-10-07 20:41:23 +0200ralejs(~ralejs@2620:10d:c093:400::5:a494) (Read error: Connection reset by peer)
2020-10-07 20:41:37 +0200wroathe(~wroathe@c-73-24-27-54.hsd1.mn.comcast.net)
2020-10-07 20:42:09 +0200ralejs(~ralejs@2620:10d:c093:400::5:a494)
2020-10-07 20:45:59 +0200ack30(49ca7507@c-73-202-117-7.hsd1.ca.comcast.net)
2020-10-07 20:46:11 +0200ack30(49ca7507@c-73-202-117-7.hsd1.ca.comcast.net) (Remote host closed the connection)
2020-10-07 20:46:44 +0200o1lo01ol1o(~o1lo01ol1@bl11-140-216.dsl.telepac.pt) (Remote host closed the connection)
2020-10-07 20:47:07 +0200jrqc(~rofl@96.78.87.197) (Ping timeout: 258 seconds)
2020-10-07 20:48:27 +0200jrqc(~rofl@96.78.87.197)
2020-10-07 20:52:25 +0200DavidEichmann(~david@43.240.198.146.dyn.plus.net) (Ping timeout: 264 seconds)
2020-10-07 20:53:25 +0200Geraldus(1fa31137@31.163.17.55) (Remote host closed the connection)
2020-10-07 20:55:53 +0200Buntspecht(~user@unaffiliated/siracusa) (Ping timeout: 244 seconds)
2020-10-07 20:57:24 +0200Buntspecht(~user@unaffiliated/siracusa)
2020-10-07 21:00:25 +0200jcazevedo(~jcazevedo@165.237.60.94.rev.vodafone.pt) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-07 21:02:33 +0200mirrorbird(~psutcliff@2a00:801:3f8:10df:3fb2:3ec3:6676:3873)
2020-10-07 21:04:16 +0200oldsk00l(~znc@ec2-18-130-254-135.eu-west-2.compute.amazonaws.com)
2020-10-07 21:06:34 +0200 <hololeap> % :t these
2020-10-07 21:06:35 +0200 <yahb> hololeap: ; <interactive>:1:1: error: Variable not in scope: these
2020-10-07 21:06:52 +0200 <hololeap> % :m + Data.Semialign
2020-10-07 21:06:52 +0200 <yahb> hololeap: ; <no location info>: error:; Could not find module `Data.Semialign'; It is not a module in the current program, or in any known package.
2020-10-07 21:07:24 +0200megaTherion_megaTherion
2020-10-07 21:08:26 +0200tito_04(~taurux@net-188-152-14-152.cust.dsl.teletu.it)
2020-10-07 21:09:10 +0200rekahsoft(~rekahsoft@CPE0008a20f982f-CM64777d666260.cpe.net.cable.rogers.com) (Ping timeout: 272 seconds)
2020-10-07 21:09:13 +0200snakemas1(~snakemast@213.100.206.23)
2020-10-07 21:09:19 +0200taurux(~taurux@net-130-25-101-135.cust.vodafonedsl.it) (Ping timeout: 256 seconds)
2020-10-07 21:13:53 +0200livvy(~livvy@gateway/tor-sasl/livvy)
2020-10-07 21:13:55 +0200Lycurgus(~niemand@98.4.96.130)
2020-10-07 21:14:09 +0200snakemas1(~snakemast@213.100.206.23) (Ping timeout: 265 seconds)
2020-10-07 21:14:16 +0200brandly(~brandly@c-73-68-15-46.hsd1.ma.comcast.net)
2020-10-07 21:14:24 +0200jonatanb(~jonatanb@79.184.190.239.ipv4.supernova.orange.pl) (Quit: Leaving...)
2020-10-07 21:15:13 +0200cyphase(~cyphase@unaffiliated/cyphase) (Ping timeout: 264 seconds)
2020-10-07 21:16:52 +0200o1lo01ol1o(~o1lo01ol1@bl11-140-216.dsl.telepac.pt)
2020-10-07 21:17:52 +0200LKoen(~LKoen@lstlambert-657-1-123-43.w92-154.abo.wanadoo.fr) (Remote host closed the connection)
2020-10-07 21:17:58 +0200Saukk(~Saukk@2001:998:f1:3963:1c59:9bb5:b94c:2) (Remote host closed the connection)
2020-10-07 21:18:39 +0200cyphase(~cyphase@unaffiliated/cyphase)
2020-10-07 21:20:27 +0200alp(~alp@2a01:e0a:58b:4920:a993:b715:b3da:be82) (Ping timeout: 272 seconds)
2020-10-07 21:21:24 +0200o1lo01ol1o(~o1lo01ol1@bl11-140-216.dsl.telepac.pt) (Ping timeout: 265 seconds)
2020-10-07 21:22:46 +0200conal(~conal@209.58.130.230) (Quit: Computer has gone to sleep.)
2020-10-07 21:22:57 +0200hackagebidirectional 0.1.0.0 - Simple bidirectional serialization and deserialization https://hackage.haskell.org/package/bidirectional-0.1.0.0 (MasseR)
2020-10-07 21:24:49 +0200bahamas(~lucian@unaffiliated/bahamas) (Ping timeout: 260 seconds)
2020-10-07 21:25:18 +0200cheers-(user@unaffiliated/cheers) (Quit: cheers-)
2020-10-07 21:26:50 +0200cheers(user@unaffiliated/cheers)
2020-10-07 21:33:33 +0200elfets(~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Read error: Connection reset by peer)
2020-10-07 21:33:43 +0200oldsk00l(~znc@ec2-18-130-254-135.eu-west-2.compute.amazonaws.com) (Remote host closed the connection)
2020-10-07 21:36:43 +0200oldsk00l(~znc@ec2-18-130-254-135.eu-west-2.compute.amazonaws.com)
2020-10-07 21:38:08 +0200mirrorbird(~psutcliff@2a00:801:3f8:10df:3fb2:3ec3:6676:3873) (Remote host closed the connection)
2020-10-07 21:38:20 +0200o1lo01ol1o(~o1lo01ol1@bl11-140-216.dsl.telepac.pt)
2020-10-07 21:38:32 +0200mirrorbird(~psutcliff@2a00:801:3f8:10df:3fb2:3ec3:6676:3873)
2020-10-07 21:40:27 +0200conal(~conal@209.58.130.230)
2020-10-07 21:40:56 +0200snakemas1(~snakemast@213.100.206.23)
2020-10-07 21:45:25 +0200snakemas1(~snakemast@213.100.206.23) (Ping timeout: 240 seconds)
2020-10-07 21:47:41 +0200Raito_Bezarius(~Raito_Bez@unaffiliated/raito-bezarius/x-8764578) (Ping timeout: 272 seconds)
2020-10-07 21:49:52 +0200 <koz_> Is Cont r a co, contra, or invariant in r?
2020-10-07 21:50:48 +0200 <monochrom> Invariant. Consider the special case Cont r () = (() -> r) -> r = r -> r
2020-10-07 21:50:56 +0200ransom(c4264035@gateway/vpn/protonvpn/c4264035) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-07 21:51:11 +0200 <koz_> monochrom: Fair.
2020-10-07 21:51:40 +0200 <koz_> I had a suspicion it was that, but good to have proof.
2020-10-07 21:52:59 +0200nfnecroflurtle
2020-10-07 21:54:11 +0200necroflurtlenf
2020-10-07 21:57:00 +0200jespada(~jespada@90.254.245.15) (Quit: Leaving)
2020-10-07 21:57:17 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-10-07 21:57:37 +0200sand_dull(~theuser@104.140.53.43)
2020-10-07 21:58:35 +0200fendor__(~fendor@e237-037.eduroam.tuwien.ac.at) (Remote host closed the connection)
2020-10-07 21:59:49 +0200Raito_Bezarius(~Raito_Bez@unaffiliated/raito-bezarius/x-8764578)
2020-10-07 22:01:03 +0200bahamas(~lucian@unaffiliated/bahamas)
2020-10-07 22:01:15 +0200Buntspecht_(~user@unaffiliated/siracusa)
2020-10-07 22:01:46 +0200Buntspecht(~user@unaffiliated/siracusa) (Read error: Connection reset by peer)
2020-10-07 22:01:56 +0200Buntspecht_Buntspecht
2020-10-07 22:02:22 +0200John20(~John@82.46.59.122) (Ping timeout: 256 seconds)
2020-10-07 22:02:55 +0200John20(~John@92.40.187.37.threembb.co.uk)
2020-10-07 22:03:01 +0200aweinstock(~aweinstoc@cpe-67-248-65-250.nycap.res.rr.com) (Ping timeout: 246 seconds)
2020-10-07 22:04:29 +0200ixlun(~matthew@213.205.241.94) (Ping timeout: 260 seconds)
2020-10-07 22:05:01 +0200sand_dull(~theuser@104.140.53.43) (Ping timeout: 264 seconds)
2020-10-07 22:05:44 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-07 22:05:48 +0200wroathe_(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-10-07 22:06:18 +0200geekosaur(ac3a8bcd@172.58.139.205) (Remote host closed the connection)
2020-10-07 22:06:25 +0200wroathe(~wroathe@c-73-24-27-54.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
2020-10-07 22:06:49 +0200bahamas(~lucian@unaffiliated/bahamas) (Ping timeout: 260 seconds)
2020-10-07 22:07:01 +0200stree(~stree@50-108-75-26.adr01.mskg.mi.frontiernet.net) (Quit: Caught exception)
2020-10-07 22:07:18 +0200stree(~stree@50-108-75-26.adr01.mskg.mi.frontiernet.net)
2020-10-07 22:07:25 +0200geekosaur(ac3a8bf1@172.58.139.241)
2020-10-07 22:08:00 +0200sand_dull(~theuser@104.140.53.43)
2020-10-07 22:08:50 +0200stree(~stree@50-108-75-26.adr01.mskg.mi.frontiernet.net) (Client Quit)
2020-10-07 22:09:07 +0200stree(~stree@50-108-75-26.adr01.mskg.mi.frontiernet.net)
2020-10-07 22:11:01 +0200wroathe_(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 264 seconds)
2020-10-07 22:12:25 +0200rprije(~rprije@203.214.95.251)
2020-10-07 22:13:45 +0200GyroW(~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie)
2020-10-07 22:14:04 +0200GyroW(~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
2020-10-07 22:14:04 +0200GyroW(~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
2020-10-07 22:14:04 +0200GyroW(~GyroW@unaffiliated/gyrow)
2020-10-07 22:14:11 +0200thir(~thir@p200300f27f0fc60038c1b16891cbfa03.dip0.t-ipconnect.de)
2020-10-07 22:15:20 +0200_ashbreeze_(~mark@72-161-254-200.dyn.centurytel.net)
2020-10-07 22:15:55 +0200kritzefitz(~kritzefit@200116b800861f00d9c841e4661e7ddf.dip.versatel-1u1.de) (Remote host closed the connection)
2020-10-07 22:16:03 +0200ashbreeze(~mark@72-161-254-200.dyn.centurytel.net) (Ping timeout: 258 seconds)
2020-10-07 22:17:19 +0200sand_dull(~theuser@104.140.53.43) (Ping timeout: 256 seconds)
2020-10-07 22:17:30 +0200snakemas1(~snakemast@213.100.206.23)
2020-10-07 22:18:52 +0200wz1000(~wz1000@static.11.113.47.78.clients.your-server.de) (Ping timeout: 256 seconds)
2020-10-07 22:18:57 +0200thir(~thir@p200300f27f0fc60038c1b16891cbfa03.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2020-10-07 22:19:10 +0200sand_dull(~theuser@104.140.53.43)
2020-10-07 22:20:27 +0200Stanley00(~stanley00@unaffiliated/stanley00)
2020-10-07 22:20:49 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-10-07 22:21:14 +0200Ariakenom(~Ariakenom@h-155-4-221-50.NA.cust.bahnhof.se) (Read error: Connection reset by peer)
2020-10-07 22:21:51 +0200is_null(~jpic@pdpc/supporter/professional/is-null) (Remote host closed the connection)
2020-10-07 22:22:00 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-07 22:23:12 +0200macrover(~macrover@ip70-189-231-35.lv.lv.cox.net)
2020-10-07 22:25:01 +0200Stanley00(~stanley00@unaffiliated/stanley00) (Ping timeout: 260 seconds)
2020-10-07 22:25:25 +0200snakemas1(~snakemast@213.100.206.23) (Ping timeout: 240 seconds)
2020-10-07 22:26:33 +0200snakemas1(~snakemast@213.100.206.23)
2020-10-07 22:26:43 +0200mmohammadi981266(~mmohammad@5.238.172.236) (Quit: I quit (╯°□°)╯︵ ┻━┻)
2020-10-07 22:27:31 +0200shatriff(~vitaliish@88.155.140.206)
2020-10-07 22:30:01 +0200o1lo01ol_(~o1lo01ol1@bl11-140-216.dsl.telepac.pt)
2020-10-07 22:30:10 +0200revprez_1nzio(~revprez_a@pool-108-49-213-40.bstnma.fios.verizon.net)
2020-10-07 22:30:14 +0200Sgeo_(~Sgeo@ool-18b982ad.dyn.optonline.net)
2020-10-07 22:30:41 +0200Gerula_(~Gerula@unaffiliated/gerula)
2020-10-07 22:30:59 +0200Bergle_3(~Bergle_4@101.165.90.119)
2020-10-07 22:31:14 +0200alexelcu(~alexelcu@142.93.180.198)
2020-10-07 22:31:27 +0200vicfred(~vicfred@unaffiliated/vicfred) (Quit: Leaving)
2020-10-07 22:31:31 +0200alexelcu_(~alexelcu@142.93.180.198) (Remote host closed the connection)
2020-10-07 22:31:31 +0200datajerk(~datajerk@sense.net) (Quit: ZNC 1.7.3 - https://znc.in)
2020-10-07 22:31:31 +0200ryansmccoy(~ryansmcco@156.96.151.132) (Ping timeout: 240 seconds)
2020-10-07 22:31:37 +0200blissful(~azuline@unaffiliated/azuline) (Read error: Connection reset by peer)
2020-10-07 22:31:38 +0200feepo(sid28508@gateway/web/irccloud.com/x-pklyfcxlyitgyefj) (Read error: Connection reset by peer)
2020-10-07 22:31:41 +0200justache(~justache@unaffiliated/justache) (Read error: Connection reset by peer)
2020-10-07 22:31:43 +0200dorkside1(~tdbgamer@208.190.197.222)
2020-10-07 22:31:45 +0200atraii(~atraii@c-98-32-64-84.hsd1.ut.comcast.net) (Ping timeout: 240 seconds)
2020-10-07 22:31:45 +0200coddinkn(~coddinkn@octayn.net) (Quit: ZNC 1.7.2 - https://znc.in)
2020-10-07 22:31:46 +0200ryansmccoy(~ryansmcco@156.96.151.132)
2020-10-07 22:31:50 +0200noctux(~noctux@unaffiliated/noctux) (Read error: Connection reset by peer)
2020-10-07 22:31:51 +0200Nascha(sid212230@gateway/web/irccloud.com/x-qojdwpoczxkroamg) (Read error: Connection reset by peer)
2020-10-07 22:31:56 +0200dorkside(~tdbgamer@208.190.197.222) (Read error: Connection reset by peer)
2020-10-07 22:31:56 +0200dorkside1dorkside
2020-10-07 22:31:59 +0200noctux(~noctux@unaffiliated/noctux)
2020-10-07 22:31:59 +0200blissful(~azuline@unaffiliated/azuline)
2020-10-07 22:32:01 +0200Nascha(sid212230@gateway/web/irccloud.com/x-pcsyzkuvukkkrkpv)
2020-10-07 22:32:02 +0200tomsmeding(~tomsmedin@tomsmeding.com) (Remote host closed the connection)
2020-10-07 22:32:05 +0200c-rog(~c-rog@traffic.simst.im) (Ping timeout: 240 seconds)
2020-10-07 22:32:05 +0200CitizenS-(~CitizenSn@irc.refl.club) (Quit: ZNC 1.8.1 - https://znc.in)
2020-10-07 22:32:08 +0200feepo(sid28508@gateway/web/irccloud.com/x-cypejpxsoagndzmj)
2020-10-07 22:32:15 +0200atraii(~atraii@c-98-32-64-84.hsd1.ut.comcast.net)
2020-10-07 22:32:24 +0200stree(~stree@50-108-75-26.adr01.mskg.mi.frontiernet.net) (Read error: Connection reset by peer)
2020-10-07 22:32:25 +0200monochrom(trebla@216.138.220.146) (Ping timeout: 240 seconds)
2020-10-07 22:32:41 +0200stree(~stree@50-108-75-26.adr01.mskg.mi.frontiernet.net)
2020-10-07 22:32:43 +0200justache(~justache@unaffiliated/justache)
2020-10-07 22:32:45 +0200revprez_anzio(~revprez_a@pool-108-49-213-40.bstnma.fios.verizon.net) (Ping timeout: 240 seconds)
2020-10-07 22:32:45 +0200nshepperd(~nshepperd@pool-96-239-61-124.nycmny.fios.verizon.net) (Ping timeout: 240 seconds)
2020-10-07 22:32:45 +0200Clint(~Clint@libre.fm/hacker/clint) (Ping timeout: 240 seconds)
2020-10-07 22:32:45 +0200nisstyre(~wes@python-zero/conduct-committee/nisstyre) (Ping timeout: 240 seconds)
2020-10-07 22:32:52 +0200Clint(~Clint@libre.fm/hacker/clint)
2020-10-07 22:33:04 +0200nisstyre(~wes@python-zero/conduct-committee/nisstyre)
2020-10-07 22:33:05 +0200o1lo01ol1o(~o1lo01ol1@bl11-140-216.dsl.telepac.pt) (Ping timeout: 240 seconds)
2020-10-07 22:33:05 +0200Sgeo(~Sgeo@ool-18b982ad.dyn.optonline.net) (Ping timeout: 240 seconds)
2020-10-07 22:33:05 +0200Bergle_2(~Bergle_4@101.165.90.119) (Ping timeout: 240 seconds)
2020-10-07 22:33:05 +0200lassulus(~lassulus@NixOS/user/lassulus) (Ping timeout: 240 seconds)
2020-10-07 22:33:19 +0200monochrom(trebla@216.138.220.146)
2020-10-07 22:33:25 +0200Gerula(~Gerula@unaffiliated/gerula) (Ping timeout: 240 seconds)
2020-10-07 22:33:28 +0200nshepperd(~nshepperd@pool-96-239-61-124.nycmny.fios.verizon.net)
2020-10-07 22:33:33 +0200lassulus(~lassulus@NixOS/user/lassulus)
2020-10-07 22:34:24 +0200tomsmeding(~tomsmedin@tomsmeding.com)
2020-10-07 22:34:29 +0200CitizenSnips(~CitizenSn@irc.refl.club)
2020-10-07 22:35:12 +0200c-rog(~c-rog@traffic.simst.im)
2020-10-07 22:35:34 +0200datajerk(~datajerk@sense.net)
2020-10-07 22:35:58 +0200hackageShpadoinkle-console 0.0.1.1 - Support for the native browser console https://hackage.haskell.org/package/Shpadoinkle-console-0.0.1.1 (fresheyeball)
2020-10-07 22:36:04 +0200coddinkn(~coddinkn@octayn.net)
2020-10-07 22:37:04 +0200tito_04taurux
2020-10-07 22:37:41 +0200stree(~stree@50-108-75-26.adr01.mskg.mi.frontiernet.net) (Quit: Caught exception)
2020-10-07 22:37:43 +0200geekosaur(ac3a8bf1@172.58.139.241) (Remote host closed the connection)
2020-10-07 22:37:58 +0200stree(~stree@50-108-75-26.adr01.mskg.mi.frontiernet.net)
2020-10-07 22:43:32 +0200conal(~conal@209.58.130.230) (Quit: Computer has gone to sleep.)
2020-10-07 22:43:34 +0200mrchampion(~mrchampio@216-211-57-41.dynamic.tbaytel.net) (Read error: Connection reset by peer)
2020-10-07 22:44:02 +0200otulp(~otulp@31.45.116.219) (Ping timeout: 258 seconds)
2020-10-07 22:44:53 +0200mrchampion(~mrchampio@216-211-57-41.dynamic.tbaytel.net)
2020-10-07 22:45:13 +0200John20(~John@92.40.187.37.threembb.co.uk) (Ping timeout: 260 seconds)
2020-10-07 22:46:03 +0200conal(~conal@209.58.130.230)
2020-10-07 22:49:09 +0200knupfer(~Thunderbi@200116b82c62010041aef7a0c6e73950.dip.versatel-1u1.de)
2020-10-07 22:52:46 +0200brandly(~brandly@c-73-68-15-46.hsd1.ma.comcast.net) (Quit: https://github.com/brandly/Lax)
2020-10-07 22:52:47 +0200xff0x(~fox@2001:1a81:5374:e100:2c9e:dd16:8ce3:558c) (Ping timeout: 260 seconds)
2020-10-07 22:53:30 +0200xff0x(~fox@2001:1a81:5374:e100:d048:1f00:80fa:e49e)
2020-10-07 22:56:32 +0200Lycurgus(~niemand@98.4.96.130) (Quit: Exeunt)
2020-10-07 22:58:24 +0200borne(~fritjof@200116b8643e710004885e7781e78f4d.dip.versatel-1u1.de)
2020-10-07 22:58:37 +0200knupfer(~Thunderbi@200116b82c62010041aef7a0c6e73950.dip.versatel-1u1.de) (Ping timeout: 260 seconds)
2020-10-07 22:58:40 +0200frdg(60e94035@pool-96-233-64-53.bstnma.fios.verizon.net)
2020-10-07 23:00:02 +0200KuluBot(~KuluBot@185.163.110.116) ()
2020-10-07 23:05:00 +0200sh4rm4^bnc(~sh4rm4@unaffiliated/sh4rm4) ("Leaving")
2020-10-07 23:07:28 +0200 <koz_> Cont is truly the reason we can't have nice things.
2020-10-07 23:08:42 +0200 <dminuoso> What do you mean by that?
2020-10-07 23:09:13 +0200 <koz_> dminuoso: Basically, unlike everything else mtl re-exports, it has no instances of Monad* for basically any *.
2020-10-07 23:09:22 +0200 <koz_> I get _why_ this is, but it's still sads.
2020-10-07 23:10:04 +0200 <monochrom> I have the opposite opinion. Cont is why we have nice things. :)
2020-10-07 23:10:16 +0200 <monochrom> http://www.vex.net/~trebla/haskell/cont.xhtml
2020-10-07 23:10:18 +0200 <dminuoso> Sure, but how is Cont the reason you can't have nice things?
2020-10-07 23:10:40 +0200 <dminuoso> What things does the existence of Cont prevent us from writing?
2020-10-07 23:10:50 +0200conal(~conal@209.58.130.230) (Quit: Computer has gone to sleep.)
2020-10-07 23:11:08 +0200 <koz_> dminuoso: It's a bit hard to explain. I'm just generally lamenting my situation I think.
2020-10-07 23:11:18 +0200 <koz_> I need to think about it some more.
2020-10-07 23:11:23 +0200 <monochrom> On prime-numbered days, I am a bit saddened that Cont is not a MonadFix. But prime-numbered days are getting less and less frequent. :)
2020-10-07 23:11:24 +0200conal(~conal@209.58.130.230)
2020-10-07 23:11:29 +0200 <dminuoso> Or is your point just that ContT can't have all the cool instances?
2020-10-07 23:11:34 +0200 <dminuoso> Those are very different points.
2020-10-07 23:11:49 +0200 <koz_> dminuoso: Mostly that. And yes, I agree with you, now that you put it that way.
2020-10-07 23:11:57 +0200conal(~conal@209.58.130.230) (Client Quit)
2020-10-07 23:12:11 +0200Christo(516071d5@81.96.113.213)
2020-10-07 23:12:12 +0200 <koz_> Again, pay me no mind in this instance. I don't have anything constructive to add, so I'll just stop fogging.
2020-10-07 23:12:19 +0200jneira_(~jneira@80.30.101.206) (Ping timeout: 246 seconds)
2020-10-07 23:12:24 +0200 <Christo> hi
2020-10-07 23:12:27 +0200 <monochrom> There is a conjecture that, infinitely often, I will be saddened by this for two 1-removed-consecutive days. >:)
2020-10-07 23:12:49 +0200 <dminuoso> monochrom: What's your position on mersenne prime days?
2020-10-07 23:12:56 +0200 <tomsmeding> koz_: is that a new verb
2020-10-07 23:13:01 +0200conal(~conal@209.58.130.230)
2020-10-07 23:13:21 +0200 <koz_> tomsmeding: IT IS NOW
2020-10-07 23:13:29 +0200 <Christo> does anyone else use vs code plugin with haskell (haskell live server)? i'm new to haskell and using it with cabal project
2020-10-07 23:13:30 +0200 <monochrom> I feel one step away from being very empowered by 2. :)
2020-10-07 23:13:42 +0200 <dminuoso> koz_: Well your rant was short and coherent. I dont see the verb befitting.
2020-10-07 23:14:04 +0200jb55(~jb55@gateway/tor-sasl/jb55) (Remote host closed the connection)
2020-10-07 23:14:09 +0200 <koz_> dminuoso: Lol, I guess I chose that verb due to substance, not style.
2020-10-07 23:14:12 +0200tomsmedingagrees with dminuoso
2020-10-07 23:14:22 +0200 <koz_> But I guess 'fogging' could be argued to be a matter of _both_ style and substance?
2020-10-07 23:14:25 +0200jb55(~jb55@gateway/tor-sasl/jb55)
2020-10-07 23:14:41 +0200 <monochrom> Basically this is one of those half-empty, half-full glass of water thing.
2020-10-07 23:14:55 +0200 <monochrom> You are sad that it is not completely full.
2020-10-07 23:15:13 +0200 <koz_> Yeah, even though I fully get the reasons why that is.
2020-10-07 23:15:14 +0200 <monochrom> I am happy that it is not completely empty. Except on prime-numbered days.
2020-10-07 23:15:24 +0200jneira_(~jneira@80.30.101.206)
2020-10-07 23:15:40 +0200 <hpc> did you know that every sum of two primes can be expressed as an integer greater than 2?
2020-10-07 23:15:52 +0200 <monochrom> hahaha
2020-10-07 23:16:01 +0200 <koz_> hpc: Someone proved Goldbach while I wasn't looking?
2020-10-07 23:16:02 +0200 <hpc> https://www.smbc-comics.com/comic/number-hunt
2020-10-07 23:16:11 +0200 <monochrom> Are you trying to identify and kill math nerds? Because I'm so dead. :)
2020-10-07 23:16:44 +0200 <monochrom> koz_, someone proved the converse of Goldbach, heh.
2020-10-07 23:16:53 +0200 <koz_> monochrom: Wait what?
2020-10-07 23:16:56 +0200 <Christo> anyone else use haskell language server with VS code?
2020-10-07 23:16:58 +0200 <koz_> I missed this news?
2020-10-07 23:17:00 +0200 <monochrom> See the comic linkd.
2020-10-07 23:17:08 +0200 <monochrom> It's just a joke :)
2020-10-07 23:17:16 +0200 <koz_> ROFL
2020-10-07 23:17:18 +0200shafox(~shafox@106.51.234.111) (Remote host closed the connection)
2020-10-07 23:17:27 +0200 <monochrom> Also, the converse is too easy.
2020-10-07 23:17:29 +0200 <koz_> You'll get a fair number of computer scientists that way too.
2020-10-07 23:17:46 +0200 <monochrom> Well they count as math nerds so it's OK.
2020-10-07 23:18:03 +0200 <tomsmeding> Christo: are you having trouble, or are you seeking like-minded souls? :)
2020-10-07 23:18:10 +0200 <koz_> ....... I _just_ got it.
2020-10-07 23:18:14 +0200 <koz_> I really am slow today.
2020-10-07 23:18:34 +0200 <hpc> somehow that only makes it funnier
2020-10-07 23:18:46 +0200 <Christo> tomsmeding ye having some trouble!
2020-10-07 23:18:47 +0200 <koz_> hpc: Well, I never claimed to be particularly smart.
2020-10-07 23:19:06 +0200 <hpc> i mean, part of it is "i am finally not the dumb one" to be sure
2020-10-07 23:19:30 +0200 <Christo> tomsmeding i'm new to haskell, and am trying to set up a good dev environment/ide type setup before i really start learning and writing the code heavily
2020-10-07 23:19:43 +0200 <Christo> it seems like i have the vs code working with stack
2020-10-07 23:19:47 +0200fendor(~fendor@178.115.131.141.wireless.dyn.drei.com)
2020-10-07 23:19:53 +0200 <Christo> extension*
2020-10-07 23:20:02 +0200 <Christo> but not 100% with cabal
2020-10-07 23:20:16 +0200jneira_(~jneira@80.30.101.206) (Ping timeout: 272 seconds)
2020-10-07 23:20:40 +0200jneira_(~jneira@80.30.101.206)
2020-10-07 23:20:51 +0200conal(~conal@209.58.130.230) (Quit: Computer has gone to sleep.)
2020-10-07 23:21:00 +0200mrusme(~mrus@128.199.6.232) (Quit: Surfing the great wave off Kanagawa)
2020-10-07 23:21:06 +0200 <tomsmeding> Christo: is there an error message you're getting, or is something not working?
2020-10-07 23:21:07 +0200Barras2(~Barras2@185.244.214.216)
2020-10-07 23:21:11 +0200 <Christo> tomsmeding: something called cradle is giving me an error msg
2020-10-07 23:21:16 +0200 <tomsmeding> ah
2020-10-07 23:21:16 +0200mrus(~mrus@128.199.6.232)
2020-10-07 23:21:23 +0200 <tomsmeding> what's it?
2020-10-07 23:21:28 +0200 <koz_> hpc: I can assure you, this channel witnesses but 1% of my slowness.
2020-10-07 23:21:49 +0200 <Christo> tomsmeding Failed to parse result of calling cabalcabal: Unknown target '/Users/chris/Documents/cabal-example-2/exe/Main.hs'.The package cabal-example2 has no file target 'exe/Main.hs'.
2020-10-07 23:22:27 +0200 <Christo> because i'm new to haskell , i'm finding the tooling a little fiddily and complicated
2020-10-07 23:22:31 +0200 <tomsmeding> Christo: did you execute a command in the terminal to get that, or the vscode haskell plugin just throw that at you?
2020-10-07 23:22:34 +0200ralejs(~ralejs@2620:10d:c093:400::5:a494) (Read error: Connection reset by peer)
2020-10-07 23:22:38 +0200 <tomsmeding> also trust me, the tooling is fiddly
2020-10-07 23:22:44 +0200 <tomsmeding> even to experienced haskeller
2020-10-07 23:22:44 +0200 <tomsmeding> s
2020-10-07 23:22:45 +0200ralejs_(~ralejs@2620:10d:c093:400::5:a494)
2020-10-07 23:23:02 +0200 <Christo> tomsmeding: the vscode haskell plugin gave me that msg
2020-10-07 23:23:19 +0200 <Christo> which i assume is something to do with haskell language server
2020-10-07 23:23:35 +0200 <tomsmeding> can you build your project, ignoring the language server integration for a moment?
2020-10-07 23:23:40 +0200 <tomsmeding> i.e. `cabal build`
2020-10-07 23:23:43 +0200 <Christo> i can build it ye
2020-10-07 23:23:46 +0200 <Christo> i'll do it now
2020-10-07 23:23:49 +0200cosimone(~cosimone@2001:b07:ae5:db26:f68c:50ff:fe0b:b774)
2020-10-07 23:23:55 +0200 <monochrom> I avoided this fiddlyness by avoiding the IDE mindset altogether.
2020-10-07 23:24:06 +0200knupfer(~Thunderbi@mue-88-130-61-066.dsl.tropolys.de)
2020-10-07 23:24:11 +0200 <maerwald> wait, why are you using cabal now when you started with stack?
2020-10-07 23:24:45 +0200jneira_(~jneira@80.30.101.206) (Ping timeout: 240 seconds)
2020-10-07 23:25:13 +0200mytestuser98(~Username@188.242.105.118)
2020-10-07 23:26:22 +0200 <Christo> actually it's not building at the mo
2020-10-07 23:27:25 +0200mytestuser98(~Username@188.242.105.118) (Client Quit)
2020-10-07 23:28:08 +0200 <Christo> ok
2020-10-07 23:28:15 +0200 <Christo> it works with new-build
2020-10-07 23:28:17 +0200chaosmasttter(~chaosmast@p200300c4a70b400140e8baf6489c3871.dip0.t-ipconnect.de) (Quit: WeeChat 2.9)
2020-10-07 23:28:22 +0200 <Christo> but not build
2020-10-07 23:28:33 +0200 <koz_> Christo: Cabal version?
2020-10-07 23:29:04 +0200 <Christo> 2.4.1.0
2020-10-07 23:29:14 +0200 <Christo> so it's working with new-build
2020-10-07 23:29:19 +0200 <Christo> new-run
2020-10-07 23:29:34 +0200jneira_(~jneira@80.30.101.206)
2020-10-07 23:29:36 +0200 <koz_> Christo: Update cabal to something less crufty.
2020-10-07 23:29:40 +0200 <koz_> This should fix your issues.
2020-10-07 23:29:52 +0200 <koz_> 2.4 is old-af.
2020-10-07 23:29:55 +0200 <monochrom> or say "new-build" all the time
2020-10-07 23:29:58 +0200 <Christo> but is the haskell-language-server (vs code haskell plugin) using the old "cabal build" command or something?
2020-10-07 23:30:02 +0200 <maerwald> Christo: are you using stack or cabal?
2020-10-07 23:30:06 +0200 <Christo> cabal
2020-10-07 23:30:08 +0200 <koz_> monochrom: Or rather, configure your IDE to somehow do it.
2020-10-07 23:30:11 +0200 <koz_> Assuming you can.
2020-10-07 23:30:22 +0200 <maerwald> Christo: what platform?
2020-10-07 23:30:26 +0200 <koz_> Christo: 'cabal build' became new-build by default recently.
2020-10-07 23:30:38 +0200 <monochrom> Rather, hls assumes you use cabal >= 3 so it's just "build".
2020-10-07 23:30:44 +0200otulp(~otulp@ti0187q162-3025.bb.online.no)
2020-10-07 23:30:53 +0200 <Christo> so maybe that's the issue?
2020-10-07 23:30:57 +0200 <koz_> OK, am I totally off-base here, or is it the case that Cont () a and a are somehow similar?
2020-10-07 23:30:57 +0200hackageheidi 0.0.0 - Tidy data in Haskell https://hackage.haskell.org/package/heidi-0.0.0 (ocramz)
2020-10-07 23:31:04 +0200 <koz_> Christo: Likely.
2020-10-07 23:31:09 +0200alp(~alp@2a01:e0a:58b:4920:8975:d95d:2784:c8c1)
2020-10-07 23:31:20 +0200 <monochrom> Cont () a = (a -> ()) -> () = a really boring type
2020-10-07 23:31:39 +0200 <Christo> thx guys, i'll try all what u said
2020-10-07 23:31:44 +0200 <Christo> just to clarify
2020-10-07 23:31:53 +0200 <Christo> i can build and run my project using new- prefix cmds
2020-10-07 23:32:03 +0200 <Christo> but haskell plugin vs code gives me this error msg
2020-10-07 23:32:06 +0200 <Christo> Failed to parse result of calling cabalcabal: Unknown target '/Users/chris/Documents/cabal-example-2/exe/Main.hs'.The package cabal-example2 has no file target 'exe/Main.hs'.
2020-10-07 23:32:14 +0200 <koz_> monochrom: How do you demonstrate that last equality? I guess it's an isomorphism.
2020-10-07 23:32:22 +0200GyroW(~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie)
2020-10-07 23:32:33 +0200 <koz_> Christo: Yeah, upgrade to a newer cabal, try again. If you still get this error, we know there's another issue.
2020-10-07 23:32:41 +0200GyroW(~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
2020-10-07 23:32:41 +0200GyroW(~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
2020-10-07 23:32:41 +0200GyroW(~GyroW@unaffiliated/gyrow)
2020-10-07 23:32:42 +0200 <Christo> how do i upgrade cabal?
2020-10-07 23:32:45 +0200 <Christo> lol
2020-10-07 23:32:52 +0200 <koz_> Christo: How did you install it in the first place?
2020-10-07 23:32:55 +0200 <maerwald> what platform
2020-10-07 23:32:58 +0200 <monochrom> If I give you a function f :: X -> (), what good does it do for you? Many different ways of getting ()?
2020-10-07 23:33:09 +0200mav1(~mav@i5E86B7C0.versanet.de) (Ping timeout: 260 seconds)
2020-10-07 23:33:11 +0200 <koz_> monochrom: Only one - const essentially?
2020-10-07 23:33:16 +0200 <monochrom> Yeah
2020-10-07 23:33:17 +0200 <Christo> i think i may have downloaded it directly like a month ago
2020-10-07 23:33:23 +0200 <ghoulguy> monochrom: There's a whole library for making functions like that
2020-10-07 23:33:31 +0200 <Christo> i don't have ghcup to my knowledge
2020-10-07 23:33:31 +0200 <koz_> Christo: Specify the exact meaning of 'downloaded it directly'.
2020-10-07 23:33:34 +0200 <Christo> or never did use it
2020-10-07 23:33:36 +0200 <koz_> Also, what platform?
2020-10-07 23:33:40 +0200 <maerwald> lol
2020-10-07 23:33:52 +0200 <maerwald> we never gonna know
2020-10-07 23:33:57 +0200 <Christo> platform? does that mean ghc version?
2020-10-07 23:34:02 +0200 <koz_> Christo: No, OS.
2020-10-07 23:34:08 +0200 <Christo> oh macos
2020-10-07 23:34:09 +0200conal(~conal@209.58.130.230)
2020-10-07 23:34:09 +0200 <Christo> newest
2020-10-07 23:34:14 +0200 <Christo> mac OS
2020-10-07 23:34:15 +0200 <koz_> Christo: Use ghcup.
2020-10-07 23:34:19 +0200jneira_(~jneira@80.30.101.206) (Ping timeout: 265 seconds)
2020-10-07 23:34:20 +0200 <koz_> For all Haskell things.
2020-10-07 23:34:24 +0200 <koz_> No seriously just do it.
2020-10-07 23:34:31 +0200 <koz_> It means you never have issues of this form ever again.
2020-10-07 23:34:33 +0200 <Christo> sure
2020-10-07 23:35:02 +0200 <frdg> I have been running ghcid like so for a while with `ghcid -c 'stack exec -- ghci -isrc -iapp ~/path`. I am not finding documentation that explains what the `isrc` and `iapp` settings do. Does anyone know?
2020-10-07 23:35:28 +0200 <koz_> monochrom: But how does that fact show me that (a -> ()) -> () ~ a?
2020-10-07 23:35:35 +0200 <yushyin> I hope for you that you know how to modify PATH and how to open a file, though :P
2020-10-07 23:35:42 +0200 <koz_> Like, how do I go from one to the other?
2020-10-07 23:36:02 +0200 <monochrom> No, it is false.
2020-10-07 23:36:07 +0200jamm_(~jamm@unaffiliated/jamm)
2020-10-07 23:36:24 +0200 <monochrom> Only "(forall r. (a -> r) -> r) ~ a" is true.
2020-10-07 23:36:31 +0200 <hpc> koz_: you're misreading "a really boring type" ;)
2020-10-07 23:36:38 +0200 <koz_> .... Yes, I was.
2020-10-07 23:36:56 +0200 <koz_> Thank you, I think I am less confused now.
2020-10-07 23:37:58 +0200 <Christo> @koz
2020-10-07 23:37:59 +0200 <lambdabot> Maybe you meant: yow do
2020-10-07 23:38:41 +0200 <koz_> hpc: Something something syntax something something variable capture something something Koz needs more coffee.
2020-10-07 23:39:04 +0200 <Christo> koz_ installing ghcup: will it mess with my current installation's of GHC and cabal (that already installed)?
2020-10-07 23:39:11 +0200 <koz_> Christo: No.
2020-10-07 23:39:29 +0200 <koz_> (or rather, ghcup itself won't)
2020-10-07 23:39:45 +0200 <no-n> is ghcup something new?
2020-10-07 23:39:51 +0200 <koz_> You need to modify PATH to aim at your ghcup-installed tooling, but that will not go in the same place your current tooling.
2020-10-07 23:39:56 +0200 <koz_> no-n: Not that new.
2020-10-07 23:40:18 +0200 <koz_> Also maerwald: I tested the -T argument to xz in make bindist and it worked.
2020-10-07 23:40:37 +0200 <frdg> Christo: when I switched to ghcup I just deleted all my other ghc stuff.
2020-10-07 23:40:49 +0200 <Christo> ok koz_ thx
2020-10-07 23:41:05 +0200 <koz_> Christo: No worries - as someone here said, this stuff is fiddly.
2020-10-07 23:41:07 +0200 <Christo> i'll install ghcup and get cabal version which is 3 or higher?
2020-10-07 23:41:18 +0200 <koz_> Christo: Current recommended is 3.2 IIRC.
2020-10-07 23:41:24 +0200 <Christo> ok cool
2020-10-07 23:41:35 +0200 <koz_> 'ghcup list' will tell you.
2020-10-07 23:41:36 +0200 <Christo> i need to play among us right now, but will do those steps in 2hrs
2020-10-07 23:41:53 +0200 <Christo> will u be around later koz_ ?
2020-10-07 23:41:58 +0200 <monochrom> "ghcup tui" is very nice.
2020-10-07 23:42:13 +0200 <koz_> Christo: Should be. If not, someone else here can also assist.
2020-10-07 23:42:24 +0200 <koz_> monochrom: I didn't know about 'ghcup tui'.
2020-10-07 23:42:37 +0200 <Christo> u a regular here? is there a discord chat oir something? how do people stay in touch
2020-10-07 23:42:47 +0200worc3131(~quassel@94.4.49.118) (Ping timeout: 240 seconds)
2020-10-07 23:42:51 +0200 <Christo> i'm using irc from a web page
2020-10-07 23:43:36 +0200worc3131(~quassel@2a02:c7f:c026:9500:7d0b:65d0:38a4:4786)
2020-10-07 23:44:27 +0200hackageblanks 0.4.2 - Fill-in-the-blanks - A library factoring out substitution from ASTs https://hackage.haskell.org/package/blanks-0.4.2 (ejconlon)
2020-10-07 23:44:42 +0200 <koz_> Christo: I am a regular here. I have a bouncer which means I'm around here all the time.
2020-10-07 23:44:50 +0200 <koz_> This is how folks stay in touch.
2020-10-07 23:45:01 +0200 <koz_> ('this' meaning 'this IRC channel right here')
2020-10-07 23:45:35 +0200 <Christo> ok cool, well i'll give those steps a try in an hr or 2 thx
2020-10-07 23:47:00 +0200 <koz_> Good luck!
2020-10-07 23:47:24 +0200ashbreeze(~mark@72-161-255-197.dyn.centurytel.net)
2020-10-07 23:49:35 +0200_ashbreeze_(~mark@72-161-254-200.dyn.centurytel.net) (Ping timeout: 258 seconds)
2020-10-07 23:52:34 +0200knupfer(~Thunderbi@mue-88-130-61-066.dsl.tropolys.de) (Ping timeout: 246 seconds)
2020-10-07 23:53:41 +0200DavidEichmann(~david@43.240.198.146.dyn.plus.net)
2020-10-07 23:56:07 +0200st8less(~st8less@2603:a060:11fd:0:443c:d730:5d8c:f920) (Ping timeout: 260 seconds)
2020-10-07 23:56:23 +0200_ashbreeze_(~mark@72-161-255-197.dyn.centurytel.net)
2020-10-07 23:57:15 +0200ashbreeze(~mark@72-161-255-197.dyn.centurytel.net) (Ping timeout: 258 seconds)
2020-10-07 23:58:41 +0200gienah(~mwright@gentoo/developer/gienah) (Quit: leaving)