2020/10/01

2020-10-01 00:00:10 +0200 <monochrom> See? "which version?" was actually important.
2020-10-01 00:00:32 +0200 <monochrom> But rc3 and alpha27 don't count.
2020-10-01 00:00:51 +0200 <maerwald> 3.4.0.0-rc3 is gonna be out with ghc 9 most likely
2020-10-01 00:01:00 +0200 <monochrom> You still can't go around and say "GHC has LinearTypes now" just because 9.0.1-alpha1 has it.
2020-10-01 00:01:17 +0200 <monochrom> Well yes but we're still months before that.
2020-10-01 00:01:23 +0200 <maerwald> there is no 9.0.1-alpha1 (it's not valid PVP, haha)
2020-10-01 00:01:41 +0200 <monochrom> https://downloads.haskell.org/ghc/9.0.1-alpha1/
2020-10-01 00:02:01 +0200 <maerwald> monochrom: it reports something different if you do `ghc --numeric-version` :p
2020-10-01 00:02:16 +0200conal(~conal@64.71.133.70) (Read error: Connection reset by peer)
2020-10-01 00:02:16 +0200mu_(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-10-01 00:02:25 +0200 <monochrom> https://mail.haskell.org/pipermail/haskell/2020-September/026044.html
2020-10-01 00:02:42 +0200mu_(~mu@unaffiliated/mu)
2020-10-01 00:02:44 +0200son0p(~son0p@181.136.122.143) (Quit: leaving)
2020-10-01 00:03:08 +0200 <heebo> well is there any reason to use stack anymore?
2020-10-01 00:03:46 +0200 <Cheery> Hey.. I think I have isolated my usage patterns of beautiful soup module.
2020-10-01 00:03:54 +0200 <monochrom> Yes if you outsource GHC installation to stack so you don't think about it.
2020-10-01 00:04:01 +0200 <monochrom> Yes if you like stackage's vision.
2020-10-01 00:04:21 +0200conal(~conal@64.71.133.70)
2020-10-01 00:04:27 +0200ericsagnes(~ericsagne@2405:6580:0:5100:995e:484:bdc6:4ac4) (Ping timeout: 240 seconds)
2020-10-01 00:04:46 +0200 <Cheery> The obvious one is that I fetch stuff.
2020-10-01 00:05:06 +0200 <maerwald> monochrom: https://gitlab.haskell.org/ghc/ghc/-/issues/2496
2020-10-01 00:05:07 +0200 <Cheery> the next one is that I replace stuff with something else.
2020-10-01 00:05:10 +0200aldessa(~Hugh@host-2-103-12-241.as13285.net) (Remote host closed the connection)
2020-10-01 00:05:29 +0200aldessa(~Hugh@host-2-103-12-241.as13285.net)
2020-10-01 00:05:37 +0200Guest56(93877451@gateway/web/cgi-irc/kiwiirc.com/ip.147.135.116.81)
2020-10-01 00:05:44 +0200urdh(~urdh@unaffiliated/urdh) (Ping timeout: 272 seconds)
2020-10-01 00:05:51 +0200 <monochrom> heebo: The new cabal semantics is at https://cabal.readthedocs.io/en/3.4/nix-local-build-overview.html
2020-10-01 00:06:10 +0200 <Cheery> so for example, my code might be locating title and body of the document.
2020-10-01 00:06:26 +0200 <Cheery> then it may do stuff to it, and reconstruct the document.
2020-10-01 00:06:28 +0200 <monochrom> maerwald: Oh, that. Bug, like I thought.
2020-10-01 00:06:50 +0200son0p(~son0p@181.136.122.143)
2020-10-01 00:06:52 +0200 <monochrom> Err wait, nevermind, 12 years ago? Haha.
2020-10-01 00:07:05 +0200 <maerwald> It's still in deprecation phase
2020-10-01 00:07:28 +0200urdh(~urdh@unaffiliated/urdh)
2020-10-01 00:07:33 +0200 <sm[m]> heebo: stack vs cabal is still at least as big a division as before. stack still is better at some things but cabal is now also better at some things
2020-10-01 00:07:43 +0200 <sm[m]> so you're fine using the one you prefer
2020-10-01 00:08:12 +0200Tristan-(~tristan@luna.whatbox.ca)
2020-10-01 00:08:25 +0200Xnuk-(~xnuk@vultr.xnu.kr)
2020-10-01 00:08:25 +0200Xnuk(~xnuk@45.76.202.58) (Ping timeout: 240 seconds)
2020-10-01 00:08:26 +0200 <maerwald> stack has the worse philosophy, cabal the worse codebase. Now, I could have phrased that positively somehow...
2020-10-01 00:08:34 +0200kritzefitz(~kritzefit@212.86.56.80) (Remote host closed the connection)
2020-10-01 00:08:55 +0200_Tristan_(~tristan@luna.whatbox.ca) (Ping timeout: 240 seconds)
2020-10-01 00:09:07 +0200 <Guest56> I'm so h0rny now. Wanna trade. Add me here >> https://bit.ly/3iiA2Ef <<
2020-10-01 00:09:15 +0200 <maerwald> nah, we're good
2020-10-01 00:09:26 +0200 <monochrom> Well I'm OK with phrasing negatively such as "my course has the least difficult monad tutorial" because it is not goiing to be easy.
2020-10-01 00:09:36 +0200 <sm[m]> heebo: there are.. partisans
2020-10-01 00:09:48 +0200ChanServ+o monochrom
2020-10-01 00:09:52 +0200monochrom+b *!*@gateway/web/cgi-irc/kiwiirc.com/ip.147.135.116.81
2020-10-01 00:09:52 +0200Guest56monochromGuest56
2020-10-01 00:10:01 +0200 <maerwald> sm[m]: :D
2020-10-01 00:10:06 +0200fresheyeball(~isaac@c-71-237-105-37.hsd1.co.comcast.net)
2020-10-01 00:10:11 +0200 <Rembane> maerwald: I guess cabal has too few coders, stack has too few philosophers and you have too few positivelers. I think this might be one of my worst puns.
2020-10-01 00:10:12 +0200 <fresheyeball> hey out there
2020-10-01 00:10:21 +0200 <fresheyeball> I am not a stack user and I have an issue
2020-10-01 00:10:32 +0200 <fresheyeball> I need to get regex-pcre to build
2020-10-01 00:10:41 +0200 <fresheyeball> https://gitlab.com/fresheyeball/Shpadoinkle-snowman/-/jobs/766428404#L1684
2020-10-01 00:10:57 +0200 <fresheyeball> anyone know how to debug this?
2020-10-01 00:10:59 +0200 <maerwald> fresheyeball: on windows?
2020-10-01 00:11:06 +0200 <fresheyeball> linux
2020-10-01 00:11:19 +0200 <heebo> i really dont care what the code base is like , i just want the tool that is easiest to use and most reliable
2020-10-01 00:11:31 +0200 <heebo> i guess that makes me a phillistine
2020-10-01 00:11:33 +0200 <sm[m]> fresheyeball: * Missing (or bad) C library: pcre
2020-10-01 00:11:56 +0200 <sm[m]> it's a hard to pick out the signal from these build logs
2020-10-01 00:12:08 +0200wroathe_(~wroathe@c-73-24-27-54.hsd1.mn.comcast.net)
2020-10-01 00:12:10 +0200 <fresheyeball> how. did. you. see that?
2020-10-01 00:12:13 +0200mu_(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-10-01 00:12:27 +0200 <sm[m]> searched from the top for pcre
2020-10-01 00:12:27 +0200son0p(~son0p@181.136.122.143) (Ping timeout: 240 seconds)
2020-10-01 00:12:35 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 265 seconds)
2020-10-01 00:12:35 +0200justanotheruser(~justanoth@unaffiliated/justanotheruser) (Ping timeout: 272 seconds)
2020-10-01 00:12:42 +0200mu_(~mu@unaffiliated/mu)
2020-10-01 00:12:50 +0200 <hololeap> `Profunctor p => (b -> a) -> (a -> b) -> p a a -> p b b`
2020-10-01 00:12:54 +0200 <hololeap> is there a name for this?
2020-10-01 00:13:03 +0200 <sm[m]> if someone could make those errors more apparent, they would make a lot of haskell users happy
2020-10-01 00:13:11 +0200kish(~oracle@unaffiliated/oracle) ("Leaving")
2020-10-01 00:13:34 +0200son0p(~son0p@181.136.122.143)
2020-10-01 00:13:38 +0200 <maerwald> Rembane: hm well... the thing is... improving on philosophy is usually something that never happens. Improving on code... every few decades it happens
2020-10-01 00:13:45 +0200 <dolio> dimap
2020-10-01 00:13:55 +0200mirrorbird(~psutcliff@2a00:801:3fb:53b9:b09b:cd4e:4e4a:44a9) (Quit: Leaving)
2020-10-01 00:14:07 +0200 <Rembane> maerwald: Yeah, I think that was my point, I didn't really tell it to anyone though
2020-10-01 00:14:17 +0200 <hololeap> dolio: yeah, i know that one
2020-10-01 00:14:26 +0200 <hololeap> also, are Arrows and Profunctors isomorphic to each other?
2020-10-01 00:14:54 +0200 <dolio> No.
2020-10-01 00:15:44 +0200 <hololeap> what is a good counter-example?
2020-10-01 00:16:01 +0200 <Cheery> ok.. so now I think I start understanding what I want here.. First of all I got a document, then I got queries that selects portions of that document.
2020-10-01 00:16:23 +0200 <EvanR> heh, if they were isomorphic, what nonsense could you cause
2020-10-01 00:16:29 +0200 <Cheery> then when it's time to fetch, I would like to combine queries and run a "fold" on the document.
2020-10-01 00:16:31 +0200 <EvanR> weird direction to go at it from
2020-10-01 00:16:54 +0200 <Cheery> Another case is that I want to rewrite or replace contents in that document and reconstruct it.
2020-10-01 00:17:10 +0200wroathe_wroathe
2020-10-01 00:17:16 +0200 <Cheery> is it possible that I should look into profunctor optics or lenses with this thing?
2020-10-01 00:17:22 +0200ericsagnes(~ericsagne@2405:6580:0:5100:ed19:5da:9d69:c63c)
2020-10-01 00:17:58 +0200 <Cheery> or is there some other notion of combining queries, then fetching with a query.
2020-10-01 00:18:11 +0200 <Cheery> or well, combining fetches, then applying them in one fold.
2020-10-01 00:18:16 +0200 <hololeap> well, there is the WrapArrow newtype, which seems to signify that any Arrow can become a Profunctor rather trivially
2020-10-01 00:18:28 +0200hackagepointed 5.0.2 - Pointed and copointed data https://hackage.haskell.org/package/pointed-5.0.2 (ryanglscott)
2020-10-01 00:18:29 +0200 <dolio> Arrows are profunctors, but not vice versa.
2020-10-01 00:19:40 +0200 <hololeap> i'm having a hard time imagining a counter-example
2020-10-01 00:20:12 +0200fendor(~fendor@77.119.131.134.wireless.dyn.drei.com) (Remote host closed the connection)
2020-10-01 00:20:32 +0200xcmw(~textual@dyn-72-33-0-89.uwnet.wisc.edu)
2020-10-01 00:20:37 +0200 <fresheyeball> sm[m]: any idea how I can provide pcre to stack?
2020-10-01 00:20:42 +0200 <fresheyeball> It is on the system
2020-10-01 00:21:02 +0200 <hololeap> or maybe i don't understand the two concepts well enough
2020-10-01 00:21:09 +0200andreas303(~andreas@gateway/tor-sasl/andreas303) (Remote host closed the connection)
2020-10-01 00:21:32 +0200bitmagie(~Thunderbi@200116b806af9800a5686823a67cc6e9.dip.versatel-1u1.de) (Quit: bitmagie)
2020-10-01 00:21:49 +0200 <EvanR> demonstrating "not isomorphic" would mean if you had a hypothetical isomorphism you could use it to make true = false or similar
2020-10-01 00:21:50 +0200 <dolio> Well, it's probably relatively easy to produce a counter example with some sort of 'free profunctor on T :: * -> * -> *'.
2020-10-01 00:22:32 +0200 <heebo> Cheery: it seems all of the above , you should be able to decompose and reconstruct html builders within the html builder monad
2020-10-01 00:22:33 +0200mu_(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-10-01 00:22:44 +0200mu__(~mu@unaffiliated/mu)
2020-10-01 00:23:17 +0200 <dolio> Where T is allowed to be a GADT that only has values for certain choices of (pairs of) types.
2020-10-01 00:23:20 +0200 <heebo> hololeap: being able to transform one way isnt isomorphic though
2020-10-01 00:23:46 +0200 <dolio> The 'free' part would add the ability to map each side, but not the other arrow stuff.
2020-10-01 00:24:35 +0200tromp(~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection)
2020-10-01 00:24:36 +0200andreas303(~andreas@gateway/tor-sasl/andreas303)
2020-10-01 00:24:39 +0200 <dolio> Arrows are actually the profunctor equivalent of monads.
2020-10-01 00:24:44 +0200Amras(~Amras@unaffiliated/amras0000) (Ping timeout: 256 seconds)
2020-10-01 00:25:08 +0200aldessa(~Hugh@host-2-103-12-241.as13285.net) (Quit: Leaving)
2020-10-01 00:25:12 +0200 <dolio> (Slightly beyond that, really, but close.)
2020-10-01 00:25:15 +0200kori(~kori@arrowheads/kori) (Ping timeout: 272 seconds)
2020-10-01 00:25:30 +0200nbloomf(~nbloomf@2600:1700:83e0:1f40:51e3:d2:c653:ccbb) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-01 00:25:52 +0200andreas303(~andreas@gateway/tor-sasl/andreas303) (Remote host closed the connection)
2020-10-01 00:26:03 +0200 <hololeap> huh, interesting stuff
2020-10-01 00:27:32 +0200 <dolio> Because (->) is like an identity profunctor, so `(a -> b) -> P a b` is like the monad unit, and `P a b × P b c -> P a c` is like the monad join.
2020-10-01 00:28:03 +0200ziman(~ziman@c25-5.condornet.sk) (Ping timeout: 265 seconds)
2020-10-01 00:28:25 +0200ziman(~ziman@c25-5.condornet.sk)
2020-10-01 00:28:32 +0200elliott_(~elliott_@pool-100-36-54-163.washdc.fios.verizon.net) (Ping timeout: 265 seconds)
2020-10-01 00:28:55 +0200andreas303(~andreas@gateway/tor-sasl/andreas303)
2020-10-01 00:29:07 +0200 <sm[m]> fresheyeball : in some non-standard place on the system ? probably you need the --extra-include-dir and/or --extra-lib-dir options
2020-10-01 00:31:07 +0200xff0x(~fox@2001:1a81:53e7:fb00:a420:19f5:c0d1:188d) (Ping timeout: 260 seconds)
2020-10-01 00:31:23 +0200DataComp_(~lumeng@static-50-43-26-251.bvtn.or.frontiernet.net)
2020-10-01 00:31:36 +0200tzh(~tzh@2601:448:c500:5300::4b20) (Remote host closed the connection)
2020-10-01 00:31:36 +0200xff0x(~fox@2001:1a81:53e7:fb00:f5c9:5f72:d493:76cb)
2020-10-01 00:31:57 +0200 <fresheyeball> sm[m]: what would be the standard place?
2020-10-01 00:32:08 +0200tzh(~tzh@2601:448:c500:5300::4b20)
2020-10-01 00:32:13 +0200mu__(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-10-01 00:32:27 +0200DataComputist(~lumeng@static-50-43-26-251.bvtn.or.frontiernet.net) (Ping timeout: 240 seconds)
2020-10-01 00:32:42 +0200mu_(~mu@unaffiliated/mu)
2020-10-01 00:32:52 +0200 <sm[m]> fresheyeball: I think it would find them automatically in either /usr/{include,lib} or /usr/local/{include,lib}
2020-10-01 00:35:25 +0200falafel(~falafel@2605:e000:1527:d491:a806:37fa:6971:2798) (Ping timeout: 240 seconds)
2020-10-01 00:37:43 +0200mav1(~mav@p5b02806a.dip0.t-ipconnect.de) (Ping timeout: 265 seconds)
2020-10-01 00:38:07 +0200heebo(~user@cpc97956-croy24-2-0-cust20.19-2.cable.virginm.net) (Ping timeout: 240 seconds)
2020-10-01 00:38:20 +0200 <hololeap> `P a b × P b c -> P a c` seems more like <*>, although not exactly
2020-10-01 00:39:51 +0200 <dolio> Well, looks are deceiving in this case. :)
2020-10-01 00:40:08 +0200conal(~conal@64.71.133.70) (Read error: Connection reset by peer)
2020-10-01 00:40:41 +0200 <dolio> The way it works is that you can consider profunctors as generalizing functors. In this case, they generalize Type → Type functors because both arguments are types.
2020-10-01 00:41:03 +0200__monty__(~toonn@unaffiliated/toonn) (Quit: leaving)
2020-10-01 00:41:34 +0200ziman(~ziman@c25-5.condornet.sk) (Ping timeout: 246 seconds)
2020-10-01 00:42:03 +0200 <dolio> And the way you compose two profunctors is `(P . Q) a b = exists e. P a e × Q e b`.
2020-10-01 00:42:14 +0200mu_(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-10-01 00:42:46 +0200mu_(~mu@unaffiliated/mu)
2020-10-01 00:42:51 +0200 <dolio> (->) is the identity of that composition, because you can just pull it into the other profunctor by mapping.
2020-10-01 00:42:52 +0200conal(~conal@64.71.133.70)
2020-10-01 00:43:19 +0200xcmw(~textual@dyn-72-33-0-89.uwnet.wisc.edu) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-01 00:43:35 +0200 <dolio> So arrow composition is `P . P => P` in this sense.
2020-10-01 00:44:33 +0200 <hololeap> what does `P . P => P` mean?
2020-10-01 00:45:09 +0200kori(~kori@arrowheads/kori)
2020-10-01 00:45:16 +0200 <dolio> Natural transformation. Like `join : M.M => M` for monads.
2020-10-01 00:45:32 +0200mirrorbird(~psutcliff@2a00:801:3fb:53b9:b09b:cd4e:4e4a:44a9)
2020-10-01 00:45:34 +0200 <hololeap> oh ok
2020-10-01 00:45:58 +0200hackagevty 5.31 - A simple terminal UI library https://hackage.haskell.org/package/vty-5.31 (JonathanDaugherty)
2020-10-01 00:46:58 +0200hackagelanguage-dickinson 1.4.0.0 - A language for generative literature https://hackage.haskell.org/package/language-dickinson-1.4.0.0 (vmchale)
2020-10-01 00:47:50 +0200 <dolio> There are two ways (at least) to embed functors into profunctors. F goes to either `\a b -> (a -> F b)` or `\a b -> (F a -> b)`. And I think either way you choose will respect composition.
2020-10-01 00:48:11 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2020-10-01 00:48:22 +0200 <dolio> So, the embedding of `F.G` is the embedding of F profunctor-composed with the embedding of G.
2020-10-01 00:48:50 +0200 <dolio> Because again you can pull one of the function arrows into the other.
2020-10-01 00:49:34 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-10-01 00:49:34 +0200Amras(~Amras@unaffiliated/amras0000)
2020-10-01 00:50:01 +0200conal(~conal@64.71.133.70) (Read error: Connection reset by peer)
2020-10-01 00:50:38 +0200madjestic(~madjestic@86-88-72-244.fixed.kpn.net) (Ping timeout: 260 seconds)
2020-10-01 00:50:49 +0200 <dolio> The identity functor embeds to the identity profunctor (->). And one of the embeddings takes a monad to its kleisli arrow profunctor, which is an arrow/profunctor-monad.
2020-10-01 00:51:50 +0200conal(~conal@64.71.133.70)
2020-10-01 00:51:54 +0200 <dolio> The other embedding flips things around so it probably takes a monad to a profunctor-comonad.
2020-10-01 00:52:37 +0200mu_(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-10-01 00:52:43 +0200mu__(~mu@unaffiliated/mu)
2020-10-01 00:59:27 +0200tromp(~tromp@dhcp-077-249-230-040.chello.nl)
2020-10-01 01:01:41 +0200elliott_(~elliott_@pool-100-36-54-163.washdc.fios.verizon.net)
2020-10-01 01:02:22 +0200mu__(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-10-01 01:02:42 +0200mu_(~mu@unaffiliated/mu)
2020-10-01 01:03:58 +0200hackagelift-generics 0.2 - GHC.Generics-based Language.Haskell.TH.Syntax.lift implementation https://hackage.haskell.org/package/lift-generics-0.2 (ryanglscott)
2020-10-01 01:04:00 +0200Amras(~Amras@unaffiliated/amras0000) (Ping timeout: 272 seconds)
2020-10-01 01:04:25 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6) (Ping timeout: 240 seconds)
2020-10-01 01:04:33 +0200 <orzo> When using GADTs, it seems common to have functions pattern matching every GADT constructor but then using the same polymorphic code on the right hand side for each case. There ought to be a way to write that as a single pattern match. Something like _ except that it stands for any of a finite number of GADT cases.
2020-10-01 01:04:38 +0200tromp(~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 272 seconds)
2020-10-01 01:04:53 +0200xcmw(~textual@dyn-72-33-0-89.uwnet.wisc.edu)
2020-10-01 01:05:26 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-10-01 01:05:45 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-01 01:05:59 +0200 <orzo> maybe we could abuse the BangPattern syntax and specify it as (foo !_ = polymorphic)
2020-10-01 01:09:45 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 240 seconds)
2020-10-01 01:10:35 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds)
2020-10-01 01:12:37 +0200mu_(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-10-01 01:12:43 +0200mu__(~mu@unaffiliated/mu)
2020-10-01 01:15:27 +0200hackagedata-reify 0.6.2 - Reify a recursive data structure into an explicit graph. https://hackage.haskell.org/package/data-reify-0.6.2 (ryanglscott)
2020-10-01 01:16:19 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-01 01:17:33 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-10-01 01:17:53 +0200Amras(~Amras@unaffiliated/amras0000)
2020-10-01 01:20:25 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
2020-10-01 01:22:11 +0200mu__(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-10-01 01:22:30 +0200alp(~alp@2a01:e0a:58b:4920:d4f2:e84:b07:a9f2) (Ping timeout: 244 seconds)
2020-10-01 01:22:36 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 258 seconds)
2020-10-01 01:22:41 +0200mu_(~mu@unaffiliated/mu)
2020-10-01 01:23:27 +0200elliott_(~elliott_@pool-100-36-54-163.washdc.fios.verizon.net) (Ping timeout: 240 seconds)
2020-10-01 01:23:27 +0200kori(~kori@arrowheads/kori) (Read error: Connection reset by peer)
2020-10-01 01:26:25 +0200wroathe(~wroathe@c-73-24-27-54.hsd1.mn.comcast.net) (Ping timeout: 260 seconds)
2020-10-01 01:26:31 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-01 01:27:25 +0200tromp(~tromp@dhcp-077-249-230-040.chello.nl)
2020-10-01 01:27:30 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-10-01 01:28:02 +0200o1lo01ol_(~o1lo01ol1@bl8-213-81.dsl.telepac.pt) (Remote host closed the connection)
2020-10-01 01:28:41 +0200o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt)
2020-10-01 01:28:46 +0200son0p(~son0p@181.136.122.143) (Remote host closed the connection)
2020-10-01 01:30:25 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de)
2020-10-01 01:30:35 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
2020-10-01 01:31:47 +0200tromp(~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 240 seconds)
2020-10-01 01:31:52 +0200todda7(~torstein@athedsl-4367507.home.otenet.gr) (Ping timeout: 272 seconds)
2020-10-01 01:32:21 +0200mu_(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-10-01 01:32:42 +0200mu_(~mu@unaffiliated/mu)
2020-10-01 01:33:07 +0200o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt) (Ping timeout: 240 seconds)
2020-10-01 01:33:13 +0200dhil(~dhil@11.29.39.217.dyn.plus.net) (Ping timeout: 264 seconds)
2020-10-01 01:33:22 +0200ryansmccoy(~ryansmcco@193.37.254.27) (Ping timeout: 246 seconds)
2020-10-01 01:33:59 +0200tromp(~tromp@dhcp-077-249-230-040.chello.nl)
2020-10-01 01:34:09 +0200ziman(~ziman@c25-5.condornet.sk)
2020-10-01 01:34:10 +0200ryansmccoy(~ryansmcco@156.96.151.132)
2020-10-01 01:34:27 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2020-10-01 01:36:31 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-01 01:37:50 +0200jgt(~jgt@188.239.64.32)
2020-10-01 01:38:11 +0200tromp(~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 240 seconds)
2020-10-01 01:39:56 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-10-01 01:40:06 +0200delimax(max@gateway/vpn/protonvpn/delimax) (Quit: until next time)
2020-10-01 01:40:07 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
2020-10-01 01:40:13 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-01 01:42:14 +0200mu_(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-10-01 01:42:42 +0200mu_(~mu@unaffiliated/mu)
2020-10-01 01:43:58 +0200hackageintern 0.9.3 - Efficient hash-consing for arbitrary data types https://hackage.haskell.org/package/intern-0.9.3 (ryanglscott)
2020-10-01 01:44:30 +0200nbloomf(~nbloomf@2600:1700:83e0:1f40:51c3:9040:83ae:b100)
2020-10-01 01:45:22 +0200kori(~kori@arrowheads/kori)
2020-10-01 01:46:20 +0200nbloomf(~nbloomf@2600:1700:83e0:1f40:51c3:9040:83ae:b100) (Client Quit)
2020-10-01 01:48:03 +0200jedws(~jedws@121.209.139.222)
2020-10-01 01:50:36 +0200c1c1d1cd177__7_7(~user@46.0.224.53)
2020-10-01 01:50:45 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-10-01 01:52:12 +0200mu_(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-10-01 01:52:12 +0200mirrorbird(~psutcliff@2a00:801:3fb:53b9:b09b:cd4e:4e4a:44a9) (Quit: Leaving)
2020-10-01 01:52:33 +0200whiteline(~whiteline@unaffiliated/whiteline) (Ping timeout: 260 seconds)
2020-10-01 01:52:42 +0200mu_(~mu@unaffiliated/mu)
2020-10-01 01:53:16 +0200cr3(~cr3@192-222-143-195.qc.cable.ebox.net) (Ping timeout: 258 seconds)
2020-10-01 01:55:45 +0200cr3(~cr3@192-222-143-195.qc.cable.ebox.net)
2020-10-01 01:57:15 +0200Guest32532(b55ebc21@181.94.188.33)
2020-10-01 01:57:27 +0200Guest32532(b55ebc21@181.94.188.33) (Remote host closed the connection)
2020-10-01 01:58:08 +0200c1c1d1cd177__7_7(~user@46.0.224.53) (Quit: ERC (IRC client for Emacs 25.2.2))
2020-10-01 01:58:15 +0200elliott_(~elliott_@pool-100-36-54-163.washdc.fios.verizon.net)
2020-10-01 01:58:25 +0200danso(~dan@107-190-41-58.cpe.teksavvy.com)
2020-10-01 02:00:01 +0200zopsi(zopsi@2600:3c00::f03c:91ff:fe14:551f) (Quit: Oops)
2020-10-01 02:00:02 +0200forcer1(~forcer@193.56.252.210) ()
2020-10-01 02:01:19 +0200zopsi(zopsi@2600:3c00::f03c:91ff:fe14:551f)
2020-10-01 02:01:32 +0200Graypup_(Graypup@lfcode.ca) (Quit: ZNC 1.6.1 - http://znc.in)
2020-10-01 02:01:52 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-10-01 02:02:07 +0200Graypup_(Graypup@lfcode.ca)
2020-10-01 02:02:07 +0200somek(b55ebc21@181.94.188.33)
2020-10-01 02:02:11 +0200mu_(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-10-01 02:02:25 +0200 <somek> hello
2020-10-01 02:02:41 +0200mu_(~mu@unaffiliated/mu)
2020-10-01 02:02:52 +0200 <somek> i'm not speak english
2020-10-01 02:03:27 +0200hackagehappstack-authenticate 2.4.1 - Happstack Authentication Library https://hackage.haskell.org/package/happstack-authenticate-2.4.1 (JeremyShaw)
2020-10-01 02:03:55 +0200 <somek> i need help with some functions
2020-10-01 02:05:25 +0200somek(b55ebc21@181.94.188.33) ()
2020-10-01 02:05:25 +0200kori(~kori@arrowheads/kori) (Read error: Connection reset by peer)
2020-10-01 02:06:14 +0200 <sshine> :t show
2020-10-01 02:06:16 +0200 <lambdabot> Show a => a -> String
2020-10-01 02:06:27 +0200 <sshine> like that one?
2020-10-01 02:06:40 +0200 <sshine> oh, he went.
2020-10-01 02:06:41 +0200 <MarcelineVQ> he left right away :X
2020-10-01 02:06:54 +0200sshine's client ignores joins/parts on freenode.
2020-10-01 02:07:10 +0200 <MarcelineVQ> my client ignores traffic laws
2020-10-01 02:07:25 +0200 <sshine> what are traffic laws?
2020-10-01 02:07:31 +0200 <MarcelineVQ> right?
2020-10-01 02:07:34 +0200 <sshine> </anarchist>
2020-10-01 02:08:01 +0200 <sshine> in other news: https://arxiv.org/pdf/1911.03449.pdf
2020-10-01 02:11:52 +0200 <MarcelineVQ> Once I found out what a planar graph was that abstract sounded pretty neat
2020-10-01 02:12:37 +0200mu_(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-10-01 02:12:43 +0200mu__(~mu@unaffiliated/mu)
2020-10-01 02:13:11 +0200vicfred(~vicfred@unaffiliated/vicfred) (Quit: Leaving)
2020-10-01 02:14:38 +0200 <sshine> I think the example of a planar graph I remember from school was borders of countries. except, of course, there is somewhere in germany or the netherlands where a tiny chunk of houses is annexed by a bicycle lane of the adjacent country.
2020-10-01 02:14:54 +0200 <sshine> sorry, math.
2020-10-01 02:15:29 +0200 <MarcelineVQ> weird, does germany have a history of annexing?
2020-10-01 02:15:41 +0200 <sshine> annexing is me being bad at english.
2020-10-01 02:16:20 +0200 <sshine> I meant separated.
2020-10-01 02:17:48 +0200 <sshine> function MULTI-FLIP-LINKABLE(u,v). why are my functions never so good sounding.
2020-10-01 02:18:25 +0200elliott__(~elliott@pool-100-36-54-163.washdc.fios.verizon.net)
2020-10-01 02:18:46 +0200Tuplanolla(~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.)
2020-10-01 02:21:06 +0200danso(~dan@107-190-41-58.cpe.teksavvy.com) (Read error: Connection reset by peer)
2020-10-01 02:21:06 +0200voyons_calisse(~dan@107-190-41-58.cpe.teksavvy.com) (Read error: Connection reset by peer)
2020-10-01 02:21:37 +0200voyons_calisse(~dan@107-190-41-58.cpe.teksavvy.com)
2020-10-01 02:21:44 +0200danso(~dan@107-190-41-58.cpe.teksavvy.com)
2020-10-01 02:22:15 +0200mu__(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-10-01 02:22:47 +0200mu_(~mu@unaffiliated/mu)
2020-10-01 02:24:45 +0200ddere(uid110888@gateway/web/irccloud.com/x-jowgaeystqlypvfd)
2020-10-01 02:25:27 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2020-10-01 02:27:32 +0200kori(~kori@arrowheads/kori)
2020-10-01 02:28:12 +0200tromp(~tromp@dhcp-077-249-230-040.chello.nl)
2020-10-01 02:29:58 +0200hackageexception-hierarchy 0.1.0.4 - Exception type hierarchy with TemplateHaskell https://hackage.haskell.org/package/exception-hierarchy-0.1.0.4 (YoshikuniJujo)
2020-10-01 02:32:37 +0200mu_(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-10-01 02:32:43 +0200mu__(~mu@unaffiliated/mu)
2020-10-01 02:32:43 +0200tromp(~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 260 seconds)
2020-10-01 02:38:05 +0200ystael(~ystael@209.6.50.55) (Ping timeout: 240 seconds)
2020-10-01 02:39:16 +0200nbloomf(~nbloomf@2600:1700:83e0:1f40:9c40:e8e8:23cf:e71)
2020-10-01 02:42:14 +0200mu__(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-10-01 02:42:42 +0200mu_(~mu@unaffiliated/mu)
2020-10-01 02:44:43 +0200 <jackdk> sshine: https://www.youtube.com/watch?v=r-aIzkvPwFo there used to be a 3-rd order enclave: A part of India surrounded by Bangladesh surrounded by India surrounded by Bangladesh
2020-10-01 02:45:12 +0200 <koz_> > read "01" :: Int
2020-10-01 02:45:15 +0200 <lambdabot> 1
2020-10-01 02:47:53 +0200solonarv(~solonarv@astrasbourg-653-1-252-112.w92-161.abo.wanadoo.fr) (Ping timeout: 260 seconds)
2020-10-01 02:50:07 +0200Wuzzy(~Wuzzy@p5790e6f5.dip0.t-ipconnect.de) (Remote host closed the connection)
2020-10-01 02:50:58 +0200hackagesqueal-postgresql 0.7.0.0 - Squeal PostgreSQL Library https://hackage.haskell.org/package/squeal-postgresql-0.7.0.0 (echatav)
2020-10-01 02:51:58 +0200kori(~kori@arrowheads/kori) (Read error: Connection reset by peer)
2020-10-01 02:52:17 +0200notzmv(~user@unaffiliated/zmv) (Remote host closed the connection)
2020-10-01 02:52:17 +0200mu_(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-10-01 02:52:42 +0200mu_(~mu@unaffiliated/mu)
2020-10-01 02:53:50 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-10-01 02:54:47 +0200borne(~fritjof@200116b864837e00537d5cc8226f9d9f.dip.versatel-1u1.de) (Ping timeout: 240 seconds)
2020-10-01 02:55:44 +0200RandIter(~RandIter@193.56.252.210)
2020-10-01 02:57:39 +0200kori(~kori@arrowheads/kori)
2020-10-01 02:58:51 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 265 seconds)
2020-10-01 03:00:12 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-10-01 03:00:42 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-01 03:01:08 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-10-01 03:02:37 +0200mu_(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-10-01 03:02:43 +0200mu__(~mu@unaffiliated/mu)
2020-10-01 03:04:17 +0200thc202(~thc202@unaffiliated/thc202) (Ping timeout: 244 seconds)
2020-10-01 03:06:07 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2020-10-01 03:06:48 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 256 seconds)
2020-10-01 03:07:01 +0200spew(uid195861@gateway/web/irccloud.com/x-jsbpggyredzfkvod) (Quit: Connection closed for inactivity)
2020-10-01 03:07:43 +0200cr3(~cr3@192-222-143-195.qc.cable.ebox.net) (Ping timeout: 260 seconds)
2020-10-01 03:07:57 +0200nineonin_(~nineonine@216.81.48.202) (Remote host closed the connection)
2020-10-01 03:08:48 +0200gxt(~gxt@gateway/tor-sasl/gxt) (Remote host closed the connection)
2020-10-01 03:09:00 +0200Rudd0(~Rudd0@185.189.115.98) (Remote host closed the connection)
2020-10-01 03:09:36 +0200gxt(~gxt@gateway/tor-sasl/gxt)
2020-10-01 03:11:33 +0200nckx(~nckx@tobias.gr) (Ping timeout: 256 seconds)
2020-10-01 03:12:36 +0200mu__(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-10-01 03:12:42 +0200mu_(~mu@unaffiliated/mu)
2020-10-01 03:16:27 +0200hackagedir-traverse 0.2.3.0 - Simple directory traversal library https://hackage.haskell.org/package/dir-traverse-0.2.3.0 (vmchale)
2020-10-01 03:17:58 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-10-01 03:22:14 +0200tromp(~tromp@dhcp-077-249-230-040.chello.nl)
2020-10-01 03:22:14 +0200mu_(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-10-01 03:22:27 +0200 <sshine> jackdk, oh god.
2020-10-01 03:22:32 +0200 <sshine> s/god/lambda man/
2020-10-01 03:22:42 +0200mu_(~mu@unaffiliated/mu)
2020-10-01 03:23:47 +0200Sheilong(uid293653@gateway/web/irccloud.com/x-sslhkzhqehwhldfl)
2020-10-01 03:24:08 +0200isovector1(~isovector@172.103.216.166.cable.tpia.cipherkey.com)
2020-10-01 03:25:36 +0200conal(~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
2020-10-01 03:25:58 +0200conal(~conal@64.71.133.70)
2020-10-01 03:26:02 +0200conal(~conal@64.71.133.70) (Client Quit)
2020-10-01 03:26:25 +0200bloodstalker(~bloodstal@46.166.187.188) (Ping timeout: 240 seconds)
2020-10-01 03:26:35 +0200tromp(~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 240 seconds)
2020-10-01 03:28:43 +0200xerox_(~xerox@unaffiliated/xerox) (Ping timeout: 260 seconds)
2020-10-01 03:29:22 +0200xcmw(~textual@dyn-72-33-0-89.uwnet.wisc.edu) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-01 03:29:35 +0200bloodstalker(~bloodstal@5.52.232.114)
2020-10-01 03:30:26 +0200nineonine(~nineonine@216-19-190-182.dyn.novuscom.net)
2020-10-01 03:31:47 +0200darjeeling_(~darjeelin@122.245.121.113) (Ping timeout: 240 seconds)
2020-10-01 03:32:11 +0200darjeeling_(~darjeelin@122.245.121.113)
2020-10-01 03:32:11 +0200mu_(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-10-01 03:32:48 +0200mu_(~mu@unaffiliated/mu)
2020-10-01 03:33:03 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-10-01 03:35:29 +0200justanotheruser(~justanoth@unaffiliated/justanotheruser)
2020-10-01 03:36:48 +0200plutoniix(~q@175.176.222.7)
2020-10-01 03:37:05 +0200nineonine(~nineonine@216-19-190-182.dyn.novuscom.net) (Ping timeout: 240 seconds)
2020-10-01 03:37:07 +0200m0rphism(~m0rphism@HSI-KBW-046-005-177-122.hsi8.kabel-badenwuerttemberg.de) (Ping timeout: 240 seconds)
2020-10-01 03:37:47 +0200bloodstalker(~bloodstal@5.52.232.114) (Ping timeout: 240 seconds)
2020-10-01 03:39:36 +0200bloodstalker(~bloodstal@46.166.187.178)
2020-10-01 03:42:14 +0200mu_(~mu@unaffiliated/mu) (Read error: Connection reset by peer)
2020-10-01 03:42:42 +0200mu_(~mu@unaffiliated/mu)
2020-10-01 03:43:17 +0200mu_(~mu@unaffiliated/mu) (Client Quit)
2020-10-01 03:43:56 +0200mav1(~mav@p5b02806a.dip0.t-ipconnect.de)
2020-10-01 03:46:58 +0200vivekramaswamy(~vivekrama@49.207.206.176)
2020-10-01 03:48:47 +0200kori(~kori@arrowheads/kori) (Read error: Connection reset by peer)
2020-10-01 03:49:27 +0200mav1(~mav@p5b02806a.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2020-10-01 03:50:55 +0200xff0x(~fox@2001:1a81:53e7:fb00:f5c9:5f72:d493:76cb) (Ping timeout: 240 seconds)
2020-10-01 03:52:00 +0200AlterEgo-(~ladew@124-198-158-163.dynamic.caiway.nl) (Quit: Leaving)
2020-10-01 03:52:46 +0200xff0x(~fox@2001:1a81:5220:1600:f180:f194:ac6e:4ac8)
2020-10-01 03:54:40 +0200mu_(~mu@unaffiliated/mu)
2020-10-01 03:56:32 +0200wei2912(~wei2912@unaffiliated/wei2912)
2020-10-01 03:59:01 +0200vicfred(~vicfred@unaffiliated/vicfred)
2020-10-01 03:59:04 +0200mu_(~mu@unaffiliated/mu) (Client Quit)
2020-10-01 03:59:06 +0200justsomeguy(~justsomeg@unaffiliated/--/x-3805311) ()
2020-10-01 03:59:30 +0200voyons_calisse(~dan@107-190-41-58.cpe.teksavvy.com) (Read error: Connection reset by peer)
2020-10-01 03:59:30 +0200danso(~dan@107-190-41-58.cpe.teksavvy.com) (Read error: Connection reset by peer)
2020-10-01 04:00:05 +0200danso(~dan@107-190-41-58.cpe.teksavvy.com)
2020-10-01 04:00:05 +0200voyons_calisse(~dan@107-190-41-58.cpe.teksavvy.com)
2020-10-01 04:01:51 +0200Amras(~Amras@unaffiliated/amras0000) (Ping timeout: 272 seconds)
2020-10-01 04:03:35 +0200ransom(~c4264035@c-73-243-2-10.hsd1.co.comcast.net) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-01 04:04:40 +0200jchia_(~jchia@45.32.62.73)
2020-10-01 04:05:18 +0200tmciver(~tmciver@cpe-172-101-40-226.maine.res.rr.com)
2020-10-01 04:06:18 +0200jchia_(~jchia@45.32.62.73) (Remote host closed the connection)
2020-10-01 04:06:52 +0200jchia_(~jchia@58.32.37.220)
2020-10-01 04:07:47 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2020-10-01 04:08:16 +0200nbloomf(~nbloomf@2600:1700:83e0:1f40:9c40:e8e8:23cf:e71) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-01 04:08:25 +0200acidjnk_new(~acidjnk@p200300d0c72378337d49dd4f750ab9d4.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2020-10-01 04:11:03 +0200kori(~kori@arrowheads/kori)
2020-10-01 04:13:40 +0200urodna(~urodna@unaffiliated/urodna) (Quit: urodna)
2020-10-01 04:14:43 +0200xcmw(~textual@dyn-72-33-0-89.uwnet.wisc.edu)
2020-10-01 04:15:34 +0200plutoniix(~q@175.176.222.7) (Read error: Connection reset by peer)
2020-10-01 04:15:44 +0200nbloomf(~nbloomf@2600:1700:83e0:1f40:5470:d799:c2f1:7593)
2020-10-01 04:17:41 +0200falafel(~falafel@2605:e000:1527:d491:a806:37fa:6971:2798)
2020-10-01 04:18:29 +0200plutoniix(~q@175.176.222.7)
2020-10-01 04:18:55 +0200ransom(~c4264035@2601:285:201:6720:809a:299c:a667:8dfa)
2020-10-01 04:19:59 +0200tromp(~tromp@dhcp-077-249-230-040.chello.nl)
2020-10-01 04:21:09 +0200drbean(~drbean@TC210-63-209-67.static.apol.com.tw)
2020-10-01 04:21:25 +0200jgt(~jgt@188.239.64.32) (Ping timeout: 260 seconds)
2020-10-01 04:21:28 +0200cr3(~cr3@192-222-143-195.qc.cable.ebox.net)
2020-10-01 04:22:07 +0200cr3(~cr3@192-222-143-195.qc.cable.ebox.net) (Client Quit)
2020-10-01 04:23:43 +0200lagothrix(~lagothrix@unaffiliated/lagothrix) (Killed (wilhelm.freenode.net (Nickname regained by services)))
2020-10-01 04:23:51 +0200lagothrix(~lagothrix@unaffiliated/lagothrix)
2020-10-01 04:24:05 +0200darjeeling_(~darjeelin@122.245.121.113) (Ping timeout: 240 seconds)
2020-10-01 04:24:07 +0200ddellacosta(~dd@86.106.121.168) (Ping timeout: 240 seconds)
2020-10-01 04:24:25 +0200tromp(~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 240 seconds)
2020-10-01 04:24:31 +0200jchia_(~jchia@58.32.37.220) (Quit: Leaving.)
2020-10-01 04:24:53 +0200Gurkenglas(~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 265 seconds)
2020-10-01 04:26:09 +0200jgt(~jgt@188.239.64.32)
2020-10-01 04:27:54 +0200Turmfalke(~user@unaffiliated/siracusa) (Ping timeout: 256 seconds)
2020-10-01 04:28:23 +0200nineonine(~nineonine@216-19-190-182.dyn.novuscom.net)
2020-10-01 04:28:34 +0200ryansmccoy(~ryansmcco@156.96.151.132) (Ping timeout: 272 seconds)
2020-10-01 04:29:04 +0200tzh(~tzh@2601:448:c500:5300::4b20) (Read error: Connection reset by peer)
2020-10-01 04:29:14 +0200ryansmccoy(~ryansmcco@193.37.254.27)
2020-10-01 04:29:25 +0200tzh(~tzh@2601:448:c500:5300::4b20)
2020-10-01 04:29:26 +0200Turmfalke(~user@unaffiliated/siracusa)
2020-10-01 04:33:05 +0200raehik(~raehik@cpc96984-rdng25-2-0-cust109.15-3.cable.virginm.net) (Ping timeout: 240 seconds)
2020-10-01 04:37:10 +0200xerox_(~xerox@unaffiliated/xerox)
2020-10-01 04:40:41 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-10-01 04:41:49 +0200hololeap_(~hololeap@unaffiliated/hololeap)
2020-10-01 04:42:00 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-10-01 04:43:07 +0200hololeap(~hololeap@unaffiliated/hololeap) (Ping timeout: 260 seconds)
2020-10-01 04:43:50 +0200vivekramaswamy(~vivekrama@49.207.206.176) (Quit: Sayonara. Long live Haskell)
2020-10-01 04:44:10 +0200vivekramaswamy(~vivekrama@49.207.206.176)
2020-10-01 04:45:02 +0200vivekramaswamy(~vivekrama@49.207.206.176) (Client Quit)
2020-10-01 04:45:20 +0200vivekramaswamy(~vivekrama@49.207.206.176)
2020-10-01 04:45:27 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2020-10-01 04:46:56 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 272 seconds)
2020-10-01 04:48:05 +0200jgt(~jgt@188.239.64.32) (Ping timeout: 240 seconds)
2020-10-01 04:49:27 +0200theDon(~td@muedsl-82-207-238-146.citykom.de) (Ping timeout: 240 seconds)
2020-10-01 04:51:39 +0200theDon(~td@muedsl-82-207-238-122.citykom.de)
2020-10-01 04:52:35 +0200toorevitimirp(~tooreviti@117.182.181.38)
2020-10-01 04:53:16 +0200kori(~kori@arrowheads/kori) (Read error: Connection reset by peer)
2020-10-01 04:56:46 +0200 <Turmfalke> Doesn't Data.Map have a function to combine two Maps with the same key but different value types?
2020-10-01 04:58:21 +0200 <dolio> It does.
2020-10-01 04:58:21 +0200 <ski> @hoogle (k -> v0 -> v1 -> v2) -> Map k v0 -> Map k v1 -> Map k v2
2020-10-01 04:58:22 +0200 <lambdabot> Data.Map.Internal intersectionWithKey :: Ord k => (k -> a -> b -> c) -> Map k a -> Map k b -> Map k c
2020-10-01 04:58:23 +0200 <lambdabot> Data.Map.Lazy intersectionWithKey :: Ord k => (k -> a -> b -> c) -> Map k a -> Map k b -> Map k c
2020-10-01 04:58:23 +0200 <lambdabot> Data.Map.Strict intersectionWithKey :: Ord k => (k -> a -> b -> c) -> Map k a -> Map k b -> Map k c
2020-10-01 05:00:01 +0200RandIter(~RandIter@193.56.252.210) ()
2020-10-01 05:01:33 +0200 <Turmfalke> Hhm, I'd need a union version of that
2020-10-01 05:03:44 +0200 <Turmfalke> Thinking about it, my second map is always a subset of the first, so I could just map with a lookup function
2020-10-01 05:04:17 +0200Lord_of_Life_(~Lord@unaffiliated/lord-of-life/x-0885362)
2020-10-01 05:05:08 +0200dorkside(~tdbgamer@208.190.197.222)
2020-10-01 05:06:00 +0200 <ski> @type M.mergeWithKey
2020-10-01 05:06:03 +0200 <lambdabot> Ord k => (k -> a -> b -> Maybe c) -> (M.Map k a -> M.Map k c) -> (M.Map k b -> M.Map k c) -> M.Map k a -> M.Map k b -> M.Map k c
2020-10-01 05:06:34 +0200Lord_of_Life(~Lord@unaffiliated/lord-of-life/x-0885362) (Ping timeout: 272 seconds)
2020-10-01 05:06:34 +0200Lord_of_Life_Lord_of_Life
2020-10-01 05:06:35 +0200vivekramaswamy(~vivekrama@49.207.206.176) (Quit: Sayonara. Long live Haskell)
2020-10-01 05:06:54 +0200HaskellYogi(~vivekrama@49.207.206.176)
2020-10-01 05:11:06 +0200 <Turmfalke> Oh, there's Data.Map.Merge
2020-10-01 05:11:59 +0200 <Turmfalke> Thanks for the pointer
2020-10-01 05:12:08 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-10-01 05:12:33 +0200machinedgod(~machinedg@d67-193-126-196.home3.cgocable.net) (Ping timeout: 260 seconds)
2020-10-01 05:14:31 +0200tromp(~tromp@dhcp-077-249-230-040.chello.nl)
2020-10-01 05:15:33 +0200kori(~kori@arrowheads/kori)
2020-10-01 05:17:39 +0200jgt(~jgt@188.239.64.32)
2020-10-01 05:19:03 +0200tromp(~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 256 seconds)
2020-10-01 05:19:31 +0200elliott_(~elliott_@pool-100-36-54-163.washdc.fios.verizon.net) (Read error: Connection reset by peer)
2020-10-01 05:20:05 +0200elliott_(~elliott_@pool-100-36-54-163.washdc.fios.verizon.net)
2020-10-01 05:21:47 +0200jgt(~jgt@188.239.64.32) (Ping timeout: 240 seconds)
2020-10-01 05:23:21 +0200tromp(~tromp@dhcp-077-249-230-040.chello.nl)
2020-10-01 05:27:15 +0200Jeanne-Kamikaze(~Jeanne-Ka@68.235.43.166)
2020-10-01 05:27:36 +0200jgt(~jgt@188.239.64.32)
2020-10-01 05:27:58 +0200tromp(~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 256 seconds)
2020-10-01 05:31:04 +0200kori(~kori@arrowheads/kori) (Read error: Connection reset by peer)
2020-10-01 05:31:58 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de)
2020-10-01 05:36:03 +0200jchia_(~jchia@45.32.62.73)
2020-10-01 05:36:25 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2020-10-01 05:36:41 +0200kori(~kori@arrowheads/kori)
2020-10-01 05:36:59 +0200Codaraxis(~Codaraxis@ip68-5-90-227.oc.oc.cox.net)
2020-10-01 05:37:59 +0200jchia_(~jchia@45.32.62.73) (Remote host closed the connection)
2020-10-01 05:38:46 +0200jchia_(~jchia@58.32.37.220)
2020-10-01 05:39:52 +0200jgt(~jgt@188.239.64.32) (Ping timeout: 256 seconds)
2020-10-01 05:40:16 +0200falafel(~falafel@2605:e000:1527:d491:a806:37fa:6971:2798) (Remote host closed the connection)
2020-10-01 05:41:08 +0200jespada(~jespada@90.254.241.6) (Ping timeout: 260 seconds)
2020-10-01 05:41:27 +0200jinblack(~JinBlack@2001:41d0:8:4b28::1) (Ping timeout: 260 seconds)
2020-10-01 05:41:43 +0200jinblack(~JinBlack@new.jinblack.it)
2020-10-01 05:42:11 +0200ransom(~c4264035@2601:285:201:6720:809a:299c:a667:8dfa) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-01 05:42:12 +0200jwynn6_(~justin@050-088-122-078.res.spectrum.com)
2020-10-01 05:43:15 +0200edwtjo(~edwtjo@fsf/member/edwtjo)
2020-10-01 05:43:27 +0200rotaerk(rotaerk@2600:3c02::f03c:91ff:fe70:4a45) (Ping timeout: 240 seconds)
2020-10-01 05:43:43 +0200jespada(~jespada@90.254.241.6)
2020-10-01 05:43:45 +0200jgt(~jgt@188.239.64.32)
2020-10-01 05:44:15 +0200rotaerk(rotaerk@2600:3c02::f03c:91ff:fe70:4a45)
2020-10-01 05:46:47 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2020-10-01 05:48:46 +0200zacts(~zacts@dragora/developer/zacts)
2020-10-01 05:50:07 +0200ransom(~c4264035@2601:285:201:6720:809a:299c:a667:8dfa)
2020-10-01 05:51:12 +0200 <sim590> I'm trying to convert the type `ChronicleT c Identity a` to `ChronicleT c Maybe a`. I thought to use `hoist` and `generalize`, but `ChronicleT c` is not a MFunctor, so it doesn't work. Any idea?
2020-10-01 05:51:39 +0200nbloomf(~nbloomf@2600:1700:83e0:1f40:5470:d799:c2f1:7593) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-01 05:51:45 +0200 <sim590> :t generalize
2020-10-01 05:51:47 +0200 <lambdabot> error:
2020-10-01 05:51:47 +0200 <lambdabot> • Variable not in scope: generalize
2020-10-01 05:51:47 +0200 <lambdabot> • Perhaps you meant ‘generate’ (imported from Lambdabot.Plugin.Haskell.Eval.Trusted)
2020-10-01 05:52:40 +0200wei2912(~wei2912@unaffiliated/wei2912) (Quit: Lost terminal)
2020-10-01 05:52:50 +0200 <sim590> Can we import modules with this bot? Anyway, I'm talking about Control.Monad.Morph.{hoist,generalize}.
2020-10-01 05:53:24 +0200conal(~conal@64.71.133.70)
2020-10-01 05:55:54 +0200bitprophet1(~bitprophe@178.162.204.238)
2020-10-01 06:00:03 +0200kori(~kori@arrowheads/kori) (Read error: Connection reset by peer)
2020-10-01 06:00:07 +0200jgt(~jgt@188.239.64.32) (Ping timeout: 240 seconds)
2020-10-01 06:01:45 +0200 <jackdk> sim590: either unwrap/rewrap the ChronicleT manually (unwrapping will give you an `Identity (These c a)`), or PR `monad-chronicle` (`mmorph` has a very slim footprint, so I hope an `MFunctor` instance would not be controversial.
2020-10-01 06:01:47 +0200 <jackdk> )
2020-10-01 06:02:25 +0200Rudd0(~Rudd0@185.189.115.108)
2020-10-01 06:03:18 +0200 <jackdk> `ChronicleT . generalize . runChronicleT` (well, `generalize = pure . runIdentity`, so you don't need the `mmorph` dep at all: `ChronicleT . pure . runIdentity . runChronicleT`
2020-10-01 06:04:54 +0200 <sim590> hmmm. OK. Yeah I see. That's less complicated that I thought.
2020-10-01 06:06:45 +0200falafel(~falafel@2605:e000:1527:d491:a806:37fa:6971:2798)
2020-10-01 06:07:11 +0200polyphem(~p0lyph3m@2a02:810d:640:776c:76d7:55f6:f85b:c889) (Ping timeout: 244 seconds)
2020-10-01 06:07:19 +0200 <sim590> I guess that I could make a PR addressed to chronicle for an instance of MFunctor. It's simple and that'd be useful for others. I guess it's simple and one could argue that it's not worth, but I think that it's beneficial since it's standardizing the approach with mmorph and making things more concise.
2020-10-01 06:09:32 +0200 <sim590> jackdk: thanks for your explanation!
2020-10-01 06:13:18 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-10-01 06:17:50 +0200tromp(~tromp@dhcp-077-249-230-040.chello.nl)
2020-10-01 06:17:58 +0200hackageease 0.1.0.2 - Robert Penner's easing equations https://hackage.haskell.org/package/ease-0.1.0.2 (fresheyeball)
2020-10-01 06:18:34 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2020-10-01 06:21:47 +0200tromp(~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 240 seconds)
2020-10-01 06:21:52 +0200kori(~kori@arrowheads/kori)
2020-10-01 06:22:43 +0200nckx(~nckx@tobias.gr)
2020-10-01 06:24:33 +0200falafel(~falafel@2605:e000:1527:d491:a806:37fa:6971:2798) (Remote host closed the connection)
2020-10-01 06:25:23 +0200falafel(~falafel@2605:e000:1527:d491:a806:37fa:6971:2798)
2020-10-01 06:26:15 +0200shafox(~shafox@106.51.234.111)
2020-10-01 06:27:19 +0200conal(~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
2020-10-01 06:28:02 +0200kori(~kori@arrowheads/kori) (Read error: Connection reset by peer)
2020-10-01 06:30:17 +0200conal(~conal@64.71.133.70)
2020-10-01 06:31:26 +0200s00pcan(~chris@075-133-056-178.res.spectrum.com) (Ping timeout: 272 seconds)
2020-10-01 06:32:01 +0200benjamin-l(~benjamin@2601:1c0:8800:67e0:fa16:54ff:febc:2e60)
2020-10-01 06:32:33 +0200falafel(~falafel@2605:e000:1527:d491:a806:37fa:6971:2798) (Remote host closed the connection)
2020-10-01 06:32:57 +0200falafel(~falafel@2605:e000:1527:d491:a806:37fa:6971:2798)
2020-10-01 06:33:06 +0200s00pcan(~chris@107.181.165.217)
2020-10-01 06:34:58 +0200conal(~conal@64.71.133.70) (Client Quit)
2020-10-01 06:35:25 +0200conal(~conal@64.71.133.70)
2020-10-01 06:36:05 +0200conal(~conal@64.71.133.70) (Client Quit)
2020-10-01 06:36:46 +0200conal(~conal@64.71.133.70)
2020-10-01 06:36:52 +0200conal(~conal@64.71.133.70) (Client Quit)
2020-10-01 06:39:37 +0200ransom(~c4264035@2601:285:201:6720:809a:299c:a667:8dfa) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-01 06:40:42 +0200Neuromancer(~Neuromanc@unaffiliated/neuromancer)
2020-10-01 06:45:35 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-10-01 06:46:27 +0200tromp(~tromp@dhcp-077-249-230-040.chello.nl)
2020-10-01 06:47:03 +0200voyons_calisse(~dan@107-190-41-58.cpe.teksavvy.com) (Read error: Connection reset by peer)
2020-10-01 06:47:03 +0200danso(~dan@107-190-41-58.cpe.teksavvy.com) (Read error: Connection reset by peer)
2020-10-01 06:47:35 +0200voyons_calisse(~dan@107-190-41-58.cpe.teksavvy.com)
2020-10-01 06:48:25 +0200danso(~dan@107-190-41-58.cpe.teksavvy.com)
2020-10-01 06:49:12 +0200o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt)
2020-10-01 06:50:07 +0200kori(~kori@arrowheads/kori)
2020-10-01 06:51:20 +0200tromp(~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 265 seconds)
2020-10-01 06:52:50 +0200thunderrd(~thunderrd@183.182.112.240) (Remote host closed the connection)
2020-10-01 06:53:45 +0200o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt) (Ping timeout: 265 seconds)
2020-10-01 06:54:16 +0200ransom(~c4264035@c-73-243-2-10.hsd1.co.comcast.net)
2020-10-01 06:55:01 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-10-01 06:56:21 +0200jgt(~jgt@188.239.64.32)
2020-10-01 06:58:29 +0200day_(~Unknown@unaffiliated/day)
2020-10-01 06:58:29 +0200kori(~kori@arrowheads/kori) (Read error: Connection reset by peer)
2020-10-01 07:00:09 +0200alp(~alp@2a01:e0a:58b:4920:fdae:ed41:75ae:d4a6)
2020-10-01 07:01:28 +0200o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt)
2020-10-01 07:01:51 +0200day(~Unknown@unaffiliated/day) (Ping timeout: 258 seconds)
2020-10-01 07:01:51 +0200day_day
2020-10-01 07:02:57 +0200isovector1(~isovector@172.103.216.166.cable.tpia.cipherkey.com) (Quit: Leaving)
2020-10-01 07:05:25 +0200benjamin-l(~benjamin@2601:1c0:8800:67e0:fa16:54ff:febc:2e60) (Ping timeout: 240 seconds)
2020-10-01 07:05:29 +0200takuan(~takuan@178-116-218-225.access.telenet.be)
2020-10-01 07:05:50 +0200o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt) (Ping timeout: 265 seconds)
2020-10-01 07:07:28 +0200hackageoptparse-generic 1.4.4 - Auto-generate a command-line parser for your datatype https://hackage.haskell.org/package/optparse-generic-1.4.4 (GabrielGonzalez)
2020-10-01 07:07:41 +0200inkbottle(~inkbottle@aaubervilliers-654-1-83-94.w86-212.abo.wanadoo.fr)
2020-10-01 07:08:25 +0200zebrag(~inkbottle@aaubervilliers-654-1-106-91.w86-212.abo.wanadoo.fr) (Ping timeout: 256 seconds)
2020-10-01 07:12:11 +0200Sanchayan(~Sanchayan@223.226.111.203)
2020-10-01 07:16:07 +0200bloodsta1ker(~bloodstal@5.115.68.138)
2020-10-01 07:16:34 +0200HaskellYogi(~vivekrama@49.207.206.176) (Remote host closed the connection)
2020-10-01 07:18:27 +0200bloodstalker(~bloodstal@46.166.187.178) (Ping timeout: 240 seconds)
2020-10-01 07:19:36 +0200ransom(~c4264035@c-73-243-2-10.hsd1.co.comcast.net) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-01 07:19:49 +0200kori(~kori@arrowheads/kori)
2020-10-01 07:19:58 +0200HaskellYogi(~vivekrama@49.207.206.176)
2020-10-01 07:20:13 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 246 seconds)
2020-10-01 07:20:25 +0200jgt(~jgt@188.239.64.32) (Ping timeout: 240 seconds)
2020-10-01 07:21:59 +0200alp(~alp@2a01:e0a:58b:4920:fdae:ed41:75ae:d4a6) (Ping timeout: 272 seconds)
2020-10-01 07:22:33 +0200falafel(~falafel@2605:e000:1527:d491:a806:37fa:6971:2798) (Remote host closed the connection)
2020-10-01 07:23:07 +0200falafel(~falafel@2605:e000:1527:d491:a806:37fa:6971:2798)
2020-10-01 07:24:41 +0200HaskellYogi(~vivekrama@49.207.206.176) (Ping timeout: 265 seconds)
2020-10-01 07:27:26 +0200 <hololeap_> i came up with this for the purpose of helping deal with partial pattern matches: https://dpaste.com/H2ALPHDZW
2020-10-01 07:27:53 +0200bloodsta1ker(~bloodstal@5.115.68.138) (Ping timeout: 260 seconds)
2020-10-01 07:27:56 +0200hololeap_hololeap
2020-10-01 07:28:06 +0200thunderrd(~thunderrd@183.182.110.178)
2020-10-01 07:29:39 +0200bloodstalker(~bloodstal@5.115.68.138)
2020-10-01 07:29:40 +0200 <hololeap> is there already something well-established that does something similar? this basically turns the problem into a monoid
2020-10-01 07:30:08 +0200kori(~kori@arrowheads/kori) (Read error: Connection reset by peer)
2020-10-01 07:30:13 +0200justanotheruser(~justanoth@unaffiliated/justanotheruser) (Ping timeout: 272 seconds)
2020-10-01 07:30:36 +0200 <hololeap> which is a good solution (imo) but can be awkward to work with
2020-10-01 07:32:44 +0200 <dminuoso> I love how the more advanced code becomes, the less actual value level code is written, and the more sneaky things are being done at the type level, or very implicit things like deriving-via in your case.
2020-10-01 07:32:52 +0200falafel(~falafel@2605:e000:1527:d491:a806:37fa:6971:2798) (Ping timeout: 260 seconds)
2020-10-01 07:33:06 +0200 <dminuoso> There's more type signatures, import statements and language pragmas than actual code being written..
2020-10-01 07:33:47 +0200bloodstalker(~bloodstal@5.115.68.138) (Ping timeout: 240 seconds)
2020-10-01 07:34:53 +0200 <tzh> are there any FRP frameworks that generate a final value that's `MonadIO m => m ...`? i've been using reactive-banana, but its constraint that it can only handle `IO` as its monad doesn't play well with `GPipe`, which generally produces values in some ContextT monad transformer that's instanced to MonadIO
2020-10-01 07:35:48 +0200 <tzh> so all the rendering actions produce values typed like `ContextT ... ... IO a` which i can't actually use in the FRP framework
2020-10-01 07:36:15 +0200 <hololeap> dminuoso: i like that too. or are you being sarcastic /:|
2020-10-01 07:39:40 +0200bloodstalker(~bloodstal@46.166.187.178)
2020-10-01 07:40:37 +0200tromp(~tromp@dhcp-077-249-230-040.chello.nl)
2020-10-01 07:43:13 +0200Sheilong(uid293653@gateway/web/irccloud.com/x-sslhkzhqehwhldfl) (Quit: Connection closed for inactivity)
2020-10-01 07:43:15 +0200 <hololeap> tzh: if the final value is `IO a`, then you can lift that to `MonadIO m => m a` using `liftIO`
2020-10-01 07:44:11 +0200toorevitimirp(~tooreviti@117.182.181.38) (Ping timeout: 240 seconds)
2020-10-01 07:44:24 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 258 seconds)
2020-10-01 07:44:34 +0200 <hololeap> you just have to wrap the whole thing in liftIO and you're done
2020-10-01 07:45:04 +0200tromp(~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 246 seconds)
2020-10-01 07:45:10 +0200 <tzh> hololeap: oh i guess i should be more specific about the issue; it's that reactive-banana has a function `reactimate :: Event (IO ()) -> MomentIO ()` and that's the only way to actually 'run' events (by fmapping or otherwise turning an `Event a` into an `Event (IO ())`)
2020-10-01 07:45:44 +0200 <tzh> and since it can only take IO events it can't take GPipe's more complex MonadIO-instanced types
2020-10-01 07:46:00 +0200 <hololeap> you could try reflex, which does things differently and might sidestep the problem altogether
2020-10-01 07:46:07 +0200bitmagie(~Thunderbi@200116b806edc300c48960da51f309e2.dip.versatel-1u1.de)
2020-10-01 07:46:11 +0200falafel(~falafel@2605:e000:1527:d491:a806:37fa:6971:2798)
2020-10-01 07:46:39 +0200 <tzh> sure, i'll check that out
2020-10-01 07:46:57 +0200danvet_(~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa)
2020-10-01 07:47:14 +0200 <hololeap> but, with IO in a negative position, you can't use a `MonadIO m` there
2020-10-01 07:47:22 +0200 <hololeap> as you've probably figured out
2020-10-01 07:48:11 +0200 <tzh> yeah
2020-10-01 07:49:54 +0200kori(~kori@arrowheads/kori)
2020-10-01 07:50:57 +0200 <hololeap> tzh: can you give an example of the gpipe function you're trying to plug in there?
2020-10-01 07:51:59 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-10-01 07:54:15 +0200 <hololeap> if it returns a ContextT, you could just use runContextT with IO as m to get the whole thing back in the IO monad
2020-10-01 07:55:37 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-10-01 07:55:39 +0200 <tzh> hololeap: so gpipe wraps up basically all of its opengl actions in a big `ContextT ctx os m` wrapper, so things like https://hackage.haskell.org/package/GPipe-2.2.5/docs/Graphics-GPipe-Shader.html `compileShader` there, or https://hackage.haskell.org/package/GPipe-2.2.5/docs/Graphics-GPipe-Buffer.html `writeBuffer` there
2020-10-01 07:56:07 +0200 <tzh> i guess i have always considered that to be some atomic type i shouldn't really touch, but i guess there's no reason why i couldn't unwrap it myself
2020-10-01 07:56:38 +0200tomku(~tomku@unaffiliated/tomku) (Ping timeout: 244 seconds)
2020-10-01 07:57:23 +0200 <hololeap> where does it usually get unpacked?
2020-10-01 07:57:33 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
2020-10-01 07:58:15 +0200 <tzh> in my code i just run everything in the context and then my main is just `runContextT defaultHandleConfig $ do ...`
2020-10-01 07:58:51 +0200 <tzh> given that it uses that unifying type variable `os` i'm not sure if i can break things up sufficiently to make it work nicely with reactive-banana though
2020-10-01 07:59:33 +0200polyrain(~polyrain@2001:8003:640b:b900:58f5:a1c1:c514:8c13)
2020-10-01 08:00:01 +0200bitprophet1(~bitprophe@178.162.204.238) ()
2020-10-01 08:00:04 +0200 <hololeap> should work fine, i would think
2020-10-01 08:00:35 +0200 <hololeap> but you would have to run runContextT every time the event fired
2020-10-01 08:00:50 +0200 <tzh> yeah
2020-10-01 08:00:55 +0200 <hololeap> i'm not familiar with gpipe beyond knowing it exists and what it's for
2020-10-01 08:01:35 +0200 <hololeap> are you using this event to refresh the screen?
2020-10-01 08:01:41 +0200 <tzh> hah right. yeah, i'm not entirely sure if that would work but it's an avenue that i should look into that i just hadn't ever thought of
2020-10-01 08:02:08 +0200Jeanne-Kamikaze(~Jeanne-Ka@68.235.43.166) (Quit: Leaving)
2020-10-01 08:03:14 +0200 <tzh> i'd _like_ to be able to send in some 'render' event into the frp network 60 times a second or w/e based on some external timer, but right now since i'm not running render events in the event network itself the code is kind of a mess since i have to have a separate timing loop with some synchronizing variables
2020-10-01 08:03:17 +0200 <tzh> and it's kind of a mess
2020-10-01 08:03:39 +0200 <hololeap> what are you using frp for?
2020-10-01 08:03:57 +0200 <tzh> handling inputs mostly
2020-10-01 08:04:29 +0200 <tzh> those are getting pushed into the network and turned into updates to a game info mvar kinda type, which in turn is read by the rendering loop
2020-10-01 08:04:43 +0200 <tzh> which is not exactly how frp is intended to be used as i understand it :V
2020-10-01 08:04:45 +0200Xnuk-Xnuk
2020-10-01 08:06:06 +0200cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Quit: Goodbye)
2020-10-01 08:10:58 +0200 <hololeap> tzh: i wouldn't have frp doing much other than controlling some kind of state using user input, and have it on its own thread apart from most of the gpipe stuff. you can use MVar, TMVar, etc. to communicate between the threads.
2020-10-01 08:13:00 +0200 <tzh> hololeap: the problem i'm having with that is that my timesteps are getting messed up. if i poll the time outside of the event network, its values are actually 'back in time' compared to values happening 'at the same time' within the event network, presumably due to some differences between logical vs. actual time
2020-10-01 08:13:12 +0200xcmw(~textual@dyn-72-33-0-89.uwnet.wisc.edu) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-01 08:13:42 +0200 <tzh> which leads to things like animations being messed up because the time given to a frame being render happens 'before' the time stored in the data structure
2020-10-01 08:14:28 +0200 <tzh> so i'd have to, like, poll the time 60fps or something and fire that into the event network anyway, or something like that, to get a monotonic time value that's also up-to-date for each frame
2020-10-01 08:16:03 +0200jb55(~jb55@gateway/tor-sasl/jb55) (Ping timeout: 240 seconds)
2020-10-01 08:16:31 +0200 <hololeap> yes, that is what you should do
2020-10-01 08:16:39 +0200jgt(~jgt@188.239.64.32)
2020-10-01 08:16:59 +0200 <hololeap> fire the event on each frame
2020-10-01 08:18:30 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 260 seconds)
2020-10-01 08:18:34 +0200 <tzh> yeah i guess that makes sense. still requires some restructuring of the game logic but probably not as much as totally rewriting the render/frp interface
2020-10-01 08:18:50 +0200Quarl(~Quarl@94.191.138.174.mobile.tre.se)
2020-10-01 08:20:03 +0200coot(~coot@37.30.49.34.nat.umts.dynamic.t-mobile.pl)
2020-10-01 08:20:23 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 260 seconds)
2020-10-01 08:21:07 +0200zacts(~zacts@dragora/developer/zacts) (Ping timeout: 240 seconds)
2020-10-01 08:21:47 +0200Alphi(~Alphi@193.56.252.210)
2020-10-01 08:22:16 +0200 <hololeap> maybe take a look at
2020-10-01 08:22:17 +0200 <hololeap> https://github.com/Twey/gloss-banana/blob/master/Graphics/Gloss/Interface/FRP/ReactiveBanana.hs
2020-10-01 08:22:42 +0200 <hololeap> it uses gloss, which simplifies the rendering quite a bit, but you might get some clues from there
2020-10-01 08:23:07 +0200zacts(~zacts@dragora/developer/zacts)
2020-10-01 08:23:22 +0200tomku(~tomku@unaffiliated/tomku)
2020-10-01 08:24:01 +0200 <tzh> yeah i'll take a look
2020-10-01 08:25:03 +0200jb55(~jb55@gateway/tor-sasl/jb55)
2020-10-01 08:25:26 +0200 <tzh> it's actually been a while since i touched this part of my code so i was just idly thinking for solutions, but when i get back to digging into the rendering+timing guts this looks like it'll help
2020-10-01 08:26:25 +0200 <tzh> it looks like gloss provides a callback for tick handling, and so this just hooks that up into sending time messages into the network?
2020-10-01 08:26:34 +0200hiroaki(~hiroaki@ip4d176049.dynamic.kabel-deutschland.de) (Ping timeout: 258 seconds)
2020-10-01 08:27:38 +0200dhouthoo(~dhouthoo@ptr-eiv6509pb4ifhdr9lsd.18120a2.ip6.access.telenet.be)
2020-10-01 08:28:00 +0200zacts(~zacts@dragora/developer/zacts) (Ping timeout: 265 seconds)
2020-10-01 08:28:27 +0200 <tzh> so i guess i'd just have to run my own timing loop based on some target-fps value and use that to push 'canonical' times into the event network, and then have the rendering loop render and pause, or something. although i guess that still has the timing issue, since to know how long or if the rendering loop should wait it would need to poll time from outside of the event network
2020-10-01 08:29:06 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-10-01 08:30:01 +0200 <hololeap> i've seen how this is done with gloss. it has a playIO function which takes a (s -> IO Picture) which it internally runs every frame
2020-10-01 08:30:20 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de)
2020-10-01 08:31:08 +0200shatriff(~vitaliish@176.52.219.10) (Remote host closed the connection)
2020-10-01 08:31:12 +0200 <tzh> right, but how does it determine internally when it's time to render a new frame?
2020-10-01 08:31:30 +0200 <tzh> or is the answer just "any time has passed"
2020-10-01 08:32:51 +0200tromp(~tromp@dhcp-077-249-230-040.chello.nl)
2020-10-01 08:33:35 +0200 <hololeap> is there some way with gpipe to create a function that calls an IO action, which produces the output, on every frame?
2020-10-01 08:34:29 +0200 <hololeap> because this can be the `Behavior Picture` equivalent that your network produces
2020-10-01 08:35:02 +0200 <tzh> i mean, gpipe is only a rendering library; if i want something to happen every frame i have to make that happen myself. like, i have a function that does the draw calls and swaps the buffers, that kind of thing, it's just the question of how to give that a time value that's meaningful in the context of the current game data
2020-10-01 08:35:40 +0200 <hololeap> i see
2020-10-01 08:35:54 +0200Sigyn(sigyn@freenode/utility-bot/sigyn) (Read error: Connection reset by peer)
2020-10-01 08:36:55 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-10-01 08:37:52 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Remote host closed the connection)
2020-10-01 08:37:59 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de)
2020-10-01 08:38:06 +0200 <hololeap> i think you would need to set up the timer seperately, which would poll the frp network and render the frame on every tick
2020-10-01 08:38:24 +0200Sigyn(sigyn@freenode/utility-bot/sigyn)
2020-10-01 08:38:24 +0200ChanServ+o Sigyn
2020-10-01 08:38:53 +0200knupfer(~Thunderbi@i59F7FFF3.versanet.de)
2020-10-01 08:40:01 +0200 <tzh> yeah i'll probably have to think about this more while actually working on my timing code
2020-10-01 08:40:12 +0200 <tzh> but i have a few more ideas now at least so that's been helpful
2020-10-01 08:40:35 +0200jgt(~jgt@188.239.64.32) (Ping timeout: 240 seconds)
2020-10-01 08:40:51 +0200 <hololeap> you can also ask on #reflex-frp. they may have some general ideas even though you're using reactive-banana
2020-10-01 08:41:08 +0200m0rphism(~m0rphism@HSI-KBW-046-005-177-122.hsi8.kabel-badenwuerttemberg.de)
2020-10-01 08:41:31 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 258 seconds)
2020-10-01 08:41:37 +0200ggole(~ggole@2001:8003:8119:7200:c589:9da3:81e6:1296)
2020-10-01 08:41:58 +0200 <hololeap> and look at the gloss codebase too, since it uses gl internally
2020-10-01 08:44:47 +0200falafel(~falafel@2605:e000:1527:d491:a806:37fa:6971:2798) (Ping timeout: 240 seconds)
2020-10-01 08:45:26 +0200Turmfalke(~user@unaffiliated/siracusa) (Quit: Bye!)
2020-10-01 08:46:33 +0200jedws(~jedws@121.209.139.222) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-01 08:47:29 +0200polyrain(~polyrain@2001:8003:640b:b900:58f5:a1c1:c514:8c13) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-01 08:47:39 +0200 <tzh> yeah
2020-10-01 08:47:53 +0200 <tzh> in the mean time, it's late so i should get to bed. ty for the help!
2020-10-01 08:49:30 +0200tzh(~tzh@2601:448:c500:5300::4b20) (Quit: zzz)
2020-10-01 08:49:59 +0200 <hololeap> np
2020-10-01 08:50:12 +0200knupfer(~Thunderbi@i59F7FFF3.versanet.de) (Ping timeout: 256 seconds)
2020-10-01 08:51:26 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-10-01 08:53:26 +0200jgt(~jgt@188.239.64.32)
2020-10-01 08:54:14 +0200Narinas(~Narinas@187.250.59.209.dsl.dyn.telnor.net)
2020-10-01 08:54:35 +0200ddere(uid110888@gateway/web/irccloud.com/x-jowgaeystqlypvfd) (*.net *.split)
2020-10-01 08:54:35 +0200thonkpod(~thonkpod@2001:19f0:ac01:b46:5400:1ff:fec7:d73d) (*.net *.split)
2020-10-01 08:54:35 +0200eacameron(sid256985@gateway/web/irccloud.com/x-kpwlorbysgtnxhte) (*.net *.split)
2020-10-01 08:54:35 +0200entel(uid256215@botters/entel) (*.net *.split)
2020-10-01 08:54:35 +0200liff(liff@kapsi.fi) (*.net *.split)
2020-10-01 08:54:35 +0200SolarAquarion(SolarAquar@gateway/shell/panicbnc/x-nikabmyijjgiqeue) (*.net *.split)
2020-10-01 08:54:35 +0200jabruen[m](jabruenmat@gateway/shell/matrix.org/x-akmaydnltwuauerf) (*.net *.split)
2020-10-01 08:54:35 +0200PotatoHatsue(berbermanp@gateway/shell/matrix.org/x-lcuapfbpkatzswxh) (*.net *.split)
2020-10-01 08:54:35 +0200glowcoil(sid3405@gateway/web/irccloud.com/x-thsriowqmdkgjing) (*.net *.split)
2020-10-01 08:54:35 +0200PoliticsII____(sid193551@gateway/web/irccloud.com/x-nvfqluymqsvazvtl) (*.net *.split)
2020-10-01 08:54:35 +0200dequbed(~dequbed@yanduxian.paranoidlabs.org) (*.net *.split)
2020-10-01 08:54:35 +0200koankeeper(sid216950@gateway/web/irccloud.com/x-zrkqcymdfzqfjfqv) (*.net *.split)
2020-10-01 08:54:35 +0200teehemkay(sid14792@gateway/web/irccloud.com/x-xjwybgbmcxfolzwh) (*.net *.split)
2020-10-01 08:54:35 +0200rann(sid175221@gateway/web/irccloud.com/x-aedrxgorilstsgns) (*.net *.split)
2020-10-01 08:54:35 +0200simony(sid226116@gateway/web/irccloud.com/x-ebcflagagczxghjj) (*.net *.split)
2020-10-01 08:54:35 +0200mpickering(sid78412@gateway/web/irccloud.com/x-ugziboqyrxfitrmv) (*.net *.split)
2020-10-01 08:54:35 +0200miklcct(quasselcor@2001:19f0:7001:5ad:5400:2ff:feb6:50d7) (*.net *.split)
2020-10-01 08:54:35 +0200benwr__(sid372383@gateway/web/irccloud.com/x-ehohzcwkyjbzpbwl) (*.net *.split)
2020-10-01 08:54:35 +0200nlofaro(sid258233@gateway/web/irccloud.com/x-etxlydyigzmwkiap) (*.net *.split)
2020-10-01 08:54:35 +0200angerman(sid209936@gateway/web/irccloud.com/x-kbnupcpypxlxxlnc) (*.net *.split)
2020-10-01 08:54:35 +0200unlink__(~unlink2@p200300ebcf25bd0068eb9d9c94da2a17.dip0.t-ipconnect.de) (*.net *.split)
2020-10-01 08:54:35 +0200srid(sridmatrix@gateway/shell/matrix.org/x-zqttickmrfyduksr) (*.net *.split)
2020-10-01 08:54:35 +0200michaelpj1(michaelpjm@gateway/shell/matrix.org/x-bmrqrkqdmdnabvkc) (*.net *.split)
2020-10-01 08:54:35 +0200johnnyboy[m](gifumatrix@gateway/shell/matrix.org/x-xczqbcixpmjhwvre) (*.net *.split)
2020-10-01 08:54:35 +0200chreekat[m](chreekatma@gateway/shell/matrix.org/x-umxlgtkybcwevjvb) (*.net *.split)
2020-10-01 08:54:35 +0200lambdaclan(lambdaclan@gateway/shell/matrix.org/x-rosqvrjyauthsfym) (*.net *.split)
2020-10-01 08:54:35 +0200io_r_us[m](commandlin@gateway/shell/matrix.org/x-kjrwesnzoyenqgzx) (*.net *.split)
2020-10-01 08:54:36 +0200barrucadu(~barrucadu@fsf/member/barrucadu) (*.net *.split)
2020-10-01 08:54:36 +0200bcoppens_(~bartcopp@vpn2.bartcoppens.be) (*.net *.split)
2020-10-01 08:54:36 +0200noteness(~noteness@unaffiliated/nessessary129) (*.net *.split)
2020-10-01 08:54:36 +0200opqdonut(opqdonut@pseudo.fixme.fi) (*.net *.split)
2020-10-01 08:54:36 +0200Velpoman(~Velpoman@159.65.76.124) (*.net *.split)
2020-10-01 08:54:36 +0200dixie(~dixie@real.wilbury.sk) (*.net *.split)
2020-10-01 08:54:36 +0200uwap(~uwap@genja.uwap.name) (*.net *.split)
2020-10-01 08:56:48 +0200Narinas(~Narinas@187.250.59.209.dsl.dyn.telnor.net) (Client Quit)
2020-10-01 08:57:13 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 264 seconds)
2020-10-01 08:57:13 +0200topos(~topos@138.197.1.46) (Ping timeout: 264 seconds)
2020-10-01 08:57:47 +0200jgt(~jgt@188.239.64.32) (Ping timeout: 240 seconds)
2020-10-01 08:58:18 +0200alp(~alp@2a01:e0a:58b:4920:905c:27a5:4384:bd6e)
2020-10-01 09:00:27 +0200Sgeo(~Sgeo@ool-18b982ad.dyn.optonline.net) (Read error: Connection reset by peer)
2020-10-01 09:01:59 +0200topos(~topos@138.197.1.46)
2020-10-01 09:03:39 +0200mananamenos(~mananamen@84.122.202.215.dyn.user.ono.com)
2020-10-01 09:04:08 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds)
2020-10-01 09:04:14 +0200whiteline(~whiteline@unaffiliated/whiteline)
2020-10-01 09:07:31 +0200tbreslein(~tbreslein@2a02:8108:140:44f8::901)
2020-10-01 09:11:07 +0200kritzefitz(~kritzefit@fw-front.credativ.com)
2020-10-01 09:12:13 +0200aarvar(~foewfoiew@50.35.43.33) (Ping timeout: 264 seconds)
2020-10-01 09:13:01 +0200cfricke(~cfricke@unaffiliated/cfricke)
2020-10-01 09:14:45 +0200polyrain(~polyrain@2001:8003:640b:b900:58f5:a1c1:c514:8c13)
2020-10-01 09:15:21 +0200o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt)
2020-10-01 09:15:48 +0200mav1(~mav@p5b02806a.dip0.t-ipconnect.de)
2020-10-01 09:16:21 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-10-01 09:19:01 +0200supercoven(~Supercove@84.251.84.166)
2020-10-01 09:19:05 +0200pfurla(~pfurla@ool-182ed2e2.dyn.optonline.net) (Ping timeout: 240 seconds)
2020-10-01 09:19:34 +0200o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt) (Ping timeout: 246 seconds)
2020-10-01 09:19:46 +0200polyrain(~polyrain@2001:8003:640b:b900:58f5:a1c1:c514:8c13) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-01 09:20:45 +0200jedws(~jedws@121.209.139.222)
2020-10-01 09:22:56 +0200pfurla(~pfurla@ool-182ed2e2.dyn.optonline.net)
2020-10-01 09:24:41 +0200borne(~fritjof@2001:638:708:30da:4225:aca1:4116:1d16)
2020-10-01 09:26:01 +0200s00pcan(~chris@107.181.165.217) (Ping timeout: 264 seconds)
2020-10-01 09:26:43 +0200s00pcan(~chris@075-133-056-178.res.spectrum.com)
2020-10-01 09:28:08 +0200toorevitimirp(~tooreviti@117.182.181.38)
2020-10-01 09:28:55 +0200borne(~fritjof@2001:638:708:30da:4225:aca1:4116:1d16) (Client Quit)
2020-10-01 09:29:11 +0200chele(~chele@ip5b416ea2.dynamic.kabel-deutschland.de)
2020-10-01 09:29:17 +0200martin02(silas@hund.fs.lmu.de) (Ping timeout: 272 seconds)
2020-10-01 09:31:00 +0200ubert(~Thunderbi@91.141.2.105.wireless.dyn.drei.com)
2020-10-01 09:31:04 +0200borne(~fritjof@2001:638:708:30da:4ed8:5a31:2712:89a5)
2020-10-01 09:32:09 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-10-01 09:34:38 +0200ubert(~Thunderbi@91.141.2.105.wireless.dyn.drei.com) (Client Quit)
2020-10-01 09:34:47 +0200kindaro(1f08d381@h31-8-211-129.dyn.bashtel.ru)
2020-10-01 09:34:53 +0200ubert(~Thunderbi@91.141.2.105.wireless.dyn.drei.com)
2020-10-01 09:35:18 +0200 <kindaro> Is there a simple way to know if a given instance of a complex type is in scope?
2020-10-01 09:35:21 +0200martin02(silas@hund.fs.lmu.de)
2020-10-01 09:36:07 +0200 <kindaro> `reifyInstances ''Show` may give me `Show (Maybe a_132)` and `Show Int`, but I need to know that I have `Show (Maybe Int)`.
2020-10-01 09:36:33 +0200 <kindaro> Surely I can do some mixing and matching, but I wonder if there is a short cut.
2020-10-01 09:37:27 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2020-10-01 09:37:28 +0200 <kindaro> …To think of it, there is probably no simple way because it is essentially an infinite set.
2020-10-01 09:38:10 +0200borne(~fritjof@2001:638:708:30da:4ed8:5a31:2712:89a5) (Quit: WeeChat 2.9)
2020-10-01 09:38:17 +0200borne(~fritjof@2001:638:708:30da:4ed8:5a31:2712:89a5)
2020-10-01 09:38:54 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Remote host closed the connection)
2020-10-01 09:39:36 +0200Tuplanolla(~Tuplanoll@91-159-68-239.elisa-laajakaista.fi)
2020-10-01 09:40:34 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de)
2020-10-01 09:44:47 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2020-10-01 09:46:52 +0200mav1(~mav@p5b02806a.dip0.t-ipconnect.de) (Ping timeout: 246 seconds)
2020-10-01 09:47:37 +0200jle`(~mstksg@unaffiliated/mstksg) (Ping timeout: 264 seconds)
2020-10-01 09:50:10 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 265 seconds)
2020-10-01 09:50:10 +0200danso(~dan@107-190-41-58.cpe.teksavvy.com) (Read error: Connection reset by peer)
2020-10-01 09:50:10 +0200voyons_calisse(~dan@107-190-41-58.cpe.teksavvy.com) (Read error: Connection reset by peer)
2020-10-01 09:50:39 +0200voyons_calisse(~dan@107-190-41-58.cpe.teksavvy.com)
2020-10-01 09:50:39 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6)
2020-10-01 09:50:43 +0200danso(~dan@107-190-41-58.cpe.teksavvy.com)
2020-10-01 09:50:51 +0200 <Axman6> I wouldn't be surprised if you could use the ... constraints? package
2020-10-01 09:50:56 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-10-01 09:50:56 +0200 <Axman6> @hoogle Dict
2020-10-01 09:50:57 +0200 <lambdabot> Data.Constraint data Dict
2020-10-01 09:50:57 +0200 <lambdabot> Data.Constraint Dict :: a => Dict a
2020-10-01 09:50:57 +0200 <lambdabot> Data.Vinyl.Core data Dict c a
2020-10-01 09:51:22 +0200madjestic(~madjestic@86-88-72-244.fixed.kpn.net)
2020-10-01 09:52:13 +0200 <dminuoso> kindaro: `Show (Maybe a_132)` is that already.
2020-10-01 09:52:36 +0200 <dminuoso> kindaro: Thing is, from an instance selection point of view, the constraint of an instance is not considered.
2020-10-01 09:53:00 +0200danso(~dan@107-190-41-58.cpe.teksavvy.com) (Client Quit)
2020-10-01 09:53:01 +0200 <dminuoso> That is, if you have `instance Show a => Maybe a`, then that instance will be selected for *all* a.
2020-10-01 09:53:13 +0200 <dminuoso> Even if there's no Show instance for a.
2020-10-01 09:54:15 +0200jgt(~jgt@188.239.64.32)
2020-10-01 09:54:16 +0200 <kindaro> My problem is that I need to match type signatures given to my program as strings at run time. I should have given some context — this is a continuation of a conversation I started yesterday.
2020-10-01 09:54:20 +0200ubert(~Thunderbi@91.141.2.105.wireless.dyn.drei.com) (Remote host closed the connection)
2020-10-01 09:54:42 +0200 <kindaro> The problem is to create an executable that does `interact (show ∘ read)` for any suitable type, selected at run time.
2020-10-01 09:55:22 +0200 <kindaro> So far I managed to generate a huge many way if that covers all simple cases such as `Double`, `Bool` and so on.
2020-10-01 09:55:36 +0200bobbytables(~bobbytabl@ec2-44-224-191-138.us-west-2.compute.amazonaws.com) (Ping timeout: 256 seconds)
2020-10-01 09:55:59 +0200 <kindaro> Now I see that I have to put a restriction on depth and generate however many cases that will be in some sort of a list comprehension.
2020-10-01 09:56:01 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6) (Quit: Quit.)
2020-10-01 09:56:20 +0200bobbytables(~bobbytabl@ec2-44-224-191-138.us-west-2.compute.amazonaws.com)
2020-10-01 09:56:39 +0200 <kindaro> That is all in Template Haskell.
2020-10-01 09:56:53 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6)
2020-10-01 09:58:09 +0200mmohammadi9812(~mmohammad@2.178.221.242)
2020-10-01 09:58:27 +0200ryansmccoy(~ryansmcco@193.37.254.27) (Ping timeout: 240 seconds)
2020-10-01 09:58:48 +0200ryansmccoy(~ryansmcco@193.37.254.27)
2020-10-01 09:59:46 +0200is_null(~jpic@pdpc/supporter/professional/is-null) (Ping timeout: 260 seconds)
2020-10-01 10:00:30 +0200__monty__(~toonn@unaffiliated/toonn)
2020-10-01 10:00:57 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-01 10:01:58 +0200hnOsmium0001(uid453710@gateway/web/irccloud.com/x-unnsmhewxbfoaung) (Quit: Connection closed for inactivity)
2020-10-01 10:05:38 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds)
2020-10-01 10:06:48 +0200mirrorbird(~psutcliff@2a00:801:3fb:53b9:b09b:cd4e:4e4a:44a9)
2020-10-01 10:07:25 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-10-01 10:07:25 +0200ddere(uid110888@gateway/web/irccloud.com/x-jowgaeystqlypvfd)
2020-10-01 10:07:25 +0200thonkpod(~thonkpod@2001:19f0:ac01:b46:5400:1ff:fec7:d73d)
2020-10-01 10:07:25 +0200entel(uid256215@botters/entel)
2020-10-01 10:07:25 +0200eacameron(sid256985@gateway/web/irccloud.com/x-kpwlorbysgtnxhte)
2020-10-01 10:07:25 +0200liff(liff@kapsi.fi)
2020-10-01 10:07:25 +0200SolarAquarion(SolarAquar@gateway/shell/panicbnc/x-nikabmyijjgiqeue)
2020-10-01 10:07:25 +0200jabruen[m](jabruenmat@gateway/shell/matrix.org/x-akmaydnltwuauerf)
2020-10-01 10:07:25 +0200PotatoHatsue(berbermanp@gateway/shell/matrix.org/x-lcuapfbpkatzswxh)
2020-10-01 10:07:25 +0200glowcoil(sid3405@gateway/web/irccloud.com/x-thsriowqmdkgjing)
2020-10-01 10:07:25 +0200rann(sid175221@gateway/web/irccloud.com/x-aedrxgorilstsgns)
2020-10-01 10:07:25 +0200PoliticsII____(sid193551@gateway/web/irccloud.com/x-nvfqluymqsvazvtl)
2020-10-01 10:07:25 +0200angerman(sid209936@gateway/web/irccloud.com/x-kbnupcpypxlxxlnc)
2020-10-01 10:07:25 +0200dequbed(~dequbed@yanduxian.paranoidlabs.org)
2020-10-01 10:07:25 +0200koankeeper(sid216950@gateway/web/irccloud.com/x-zrkqcymdfzqfjfqv)
2020-10-01 10:07:25 +0200teehemkay(sid14792@gateway/web/irccloud.com/x-xjwybgbmcxfolzwh)
2020-10-01 10:07:25 +0200simony(sid226116@gateway/web/irccloud.com/x-ebcflagagczxghjj)
2020-10-01 10:07:25 +0200miklcct(quasselcor@2001:19f0:7001:5ad:5400:2ff:feb6:50d7)
2020-10-01 10:07:25 +0200mpickering(sid78412@gateway/web/irccloud.com/x-ugziboqyrxfitrmv)
2020-10-01 10:07:25 +0200benwr__(sid372383@gateway/web/irccloud.com/x-ehohzcwkyjbzpbwl)
2020-10-01 10:07:25 +0200nlofaro(sid258233@gateway/web/irccloud.com/x-etxlydyigzmwkiap)
2020-10-01 10:07:25 +0200unlink__(~unlink2@p200300ebcf25bd0068eb9d9c94da2a17.dip0.t-ipconnect.de)
2020-10-01 10:07:25 +0200srid(sridmatrix@gateway/shell/matrix.org/x-zqttickmrfyduksr)
2020-10-01 10:07:25 +0200michaelpj1(michaelpjm@gateway/shell/matrix.org/x-bmrqrkqdmdnabvkc)
2020-10-01 10:07:25 +0200johnnyboy[m](gifumatrix@gateway/shell/matrix.org/x-xczqbcixpmjhwvre)
2020-10-01 10:07:25 +0200chreekat[m](chreekatma@gateway/shell/matrix.org/x-umxlgtkybcwevjvb)
2020-10-01 10:07:25 +0200lambdaclan(lambdaclan@gateway/shell/matrix.org/x-rosqvrjyauthsfym)
2020-10-01 10:07:25 +0200io_r_us[m](commandlin@gateway/shell/matrix.org/x-kjrwesnzoyenqgzx)
2020-10-01 10:07:25 +0200barrucadu(~barrucadu@fsf/member/barrucadu)
2020-10-01 10:07:25 +0200bcoppens_(~bartcopp@vpn2.bartcoppens.be)
2020-10-01 10:07:25 +0200noteness(~noteness@unaffiliated/nessessary129)
2020-10-01 10:07:25 +0200opqdonut(opqdonut@pseudo.fixme.fi)
2020-10-01 10:07:25 +0200Velpoman(~Velpoman@159.65.76.124)
2020-10-01 10:07:25 +0200dixie(~dixie@real.wilbury.sk)
2020-10-01 10:07:25 +0200uwap(~uwap@genja.uwap.name)
2020-10-01 10:08:08 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-10-01 10:09:42 +0200cpressey(~cpressey@88.144.70.46)
2020-10-01 10:11:03 +0200hekkaidekapus(~tchouri@gateway/tor-sasl/hekkaidekapus) (Ping timeout: 240 seconds)
2020-10-01 10:12:22 +0200Igloo(~igloo@81.2.99.210) (Ping timeout: 258 seconds)
2020-10-01 10:12:24 +0200tomku(~tomku@unaffiliated/tomku) (Ping timeout: 265 seconds)
2020-10-01 10:13:19 +0200Igloo(~igloo@81.2.99.210)
2020-10-01 10:13:25 +0200hekkaidekapus(~tchouri@gateway/tor-sasl/hekkaidekapus)
2020-10-01 10:14:19 +0200John20(~John@82.46.59.122)
2020-10-01 10:15:42 +0200 <tomsmeding> kindaro: to properly catch stuff like Maybe (Either String [(Bool, Int)]) you'll have to do instance resolution yourself I think, or find some TH function that does instance resolution for you
2020-10-01 10:15:56 +0200 <tomsmeding> because as you stated, listing all such types won't terminate :p
2020-10-01 10:16:02 +0200 <tomsmeding> (also, did you get my message via lambdabot?)
2020-10-01 10:16:30 +0200 <kindaro> Yes.
2020-10-01 10:17:02 +0200 <kindaro> In the mean time, I realized that what I wanted to do amounts to higher order Template Haskell.
2020-10-01 10:17:35 +0200dhil(~dhil@11.29.39.217.dyn.plus.net)
2020-10-01 10:17:36 +0200 <kindaro> So I switched from case expression to multi way if and it made the `Pat` thing disappear.
2020-10-01 10:19:22 +0200 <tomsmeding> basically what you need is a dependently-typed function that given a _string_ describing the type, returns the appropriate read and show functions for that type, and you want that function to work for an infinite number (recursive family) of types
2020-10-01 10:20:31 +0200 <tomsmeding> what is the business case? do you really want this for all types in scope, or just a particular set of them?
2020-10-01 10:20:49 +0200motersen(~user@2001-4dd1-ce19-0-41b8-8f35-edf5-ff23.ipv6dyn.netcologne.de)
2020-10-01 10:21:06 +0200 <tomsmeding> would it, for example, be acceptable to have to (automatically) derive an instance of a particular custom class for all the types that you want to show . read this way?
2020-10-01 10:21:18 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de)
2020-10-01 10:21:29 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-01 10:22:13 +0200todda7(~torstein@athedsl-4518485.home.otenet.gr)
2020-10-01 10:23:17 +0200 <tomsmeding> (that class would just include Show and Read constraints, but additionally export a function that, given a string naming a type, decides if that type belongs to that instance's type, and if so, tells you how to parse the types in the type parameter positions in the string and collect them together for the show,read functions)
2020-10-01 10:23:21 +0200jonathanx(~jonathan@dyn-8-sc.cdg.chalmers.se) (Remote host closed the connection)
2020-10-01 10:23:42 +0200 <tomsmeding> that function you could generate with generics
2020-10-01 10:23:50 +0200tomku(~tomku@unaffiliated/tomku)
2020-10-01 10:24:19 +0200jonathanx(~jonathan@dyn-8-sc.cdg.chalmers.se)
2020-10-01 10:24:21 +0200 <kindaro> Yes, it would be healthy to mark all supported types by an instance of a certain class.
2020-10-01 10:24:24 +0200 <tomsmeding> and then in templatehaskell, you don't have to do instance resolution anymore; you just get the list of instances of that custom class via reifyInstances, and then use the defined type name parsers to obtain your show/read functions
2020-10-01 10:25:03 +0200 <[exa]> is there any explanation of why would cabal sdist mark CHANGELOG.md as executable? (related: why are unixtimes reset to 1Gsec ?)
2020-10-01 10:25:10 +0200 <tomsmeding> an alternative direction is to use reifyInstances more: it can also accept a type with type parameters (not just 'a' as I've been doing), and tell you if that more-specified type is also an instance of the class
2020-10-01 10:25:22 +0200whiteline(~whiteline@unaffiliated/whiteline) (Ping timeout: 246 seconds)
2020-10-01 10:25:29 +0200 <kindaro> > given a string naming a type, decides if that type belongs to that instance's type, and if so, tells you how to parse the types in the type parameter positions in the string and collect them together
2020-10-01 10:25:32 +0200 <lambdabot> <hint>:1:25: error: <hint>:1:25: error: parse error on input ‘type’
2020-10-01 10:25:35 +0200 <kindaro> I am not sure I follow you there.
2020-10-01 10:25:54 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds)
2020-10-01 10:25:56 +0200 <tomsmeding> yeah was being vague
2020-10-01 10:26:42 +0200 <tomsmeding> not specifying exactly what data structures are involved, consider e.g. instance (Show a, Show b) => Show (Either a b)
2020-10-01 10:26:49 +0200 <tomsmeding> (ignoring Read for the moment, because it's analogous)
2020-10-01 10:27:02 +0200jedws(~jedws@121.209.139.222) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-01 10:27:42 +0200 <tomsmeding> then this custom class, which you'd derive for (Show a, Show b) => CustomClass (Either a b), would define a function 'parseType' or something that takes "Either String Bool"
2020-10-01 10:27:54 +0200 <tomsmeding> would parse that string as "Either " + parameters
2020-10-01 10:28:25 +0200 <tomsmeding> and return a data structure containing closures that tell the caller to parse the rest of the string recursively
2020-10-01 10:28:25 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2020-10-01 10:28:50 +0200 <tomsmeding> and a final closure that constructs the result (namely, the correct show/read functions) given the show/read functions of those contained types
2020-10-01 10:29:14 +0200toorevitimirp(~tooreviti@117.182.181.38) (Ping timeout: 258 seconds)
2020-10-01 10:29:55 +0200 <tomsmeding> maybe the data structure should only contain that final closure; the rest can be described with plain data (parameter starts at index 7, then parameter starts at index 1 after the last one's end; gimme the results from those two parameters, and I'll give you the show/read functions for the whole type)
2020-10-01 10:30:03 +0200whiteline(~whiteline@unaffiliated/whiteline)
2020-10-01 10:30:30 +0200 <tomsmeding> point being you escape TH for this part :p
2020-10-01 10:32:25 +0200 <tomsmeding> you'd have to re-implement some of the automatically derived Read logic though
2020-10-01 10:33:01 +0200 <dminuoso> kindaro: The most sensible thing I can come up with, is if that program uses GHCi.
2020-10-01 10:33:18 +0200thc202(~thc202@unaffiliated/thc202)
2020-10-01 10:33:41 +0200 <dminuoso> Such that the invocation of `show . read` happens interactively in GHCi at types determined at runtime.
2020-10-01 10:34:08 +0200tomsmedingrealises that's a far better idea
2020-10-01 10:34:44 +0200mud(~mud@unaffiliated/kadoban) (Remote host closed the connection)
2020-10-01 10:34:52 +0200 <kindaro> Do we have something like GHCi API?
2020-10-01 10:34:58 +0200 <lortabac> @hackage hint
2020-10-01 10:34:59 +0200 <lambdabot> https://hackage.haskell.org/package/hint
2020-10-01 10:35:11 +0200mud(~mud@unaffiliated/kadoban)
2020-10-01 10:35:12 +0200 <lortabac> kindaro: maybe this ^
2020-10-01 10:35:27 +0200 <kindaro> What a time to be alive!
2020-10-01 10:36:02 +0200 <kindaro> I imagine I could have saved some hours. On the other hand, I had a nice exercise in Template Haskell.
2020-10-01 10:36:26 +0200Sanchayan(~Sanchayan@223.226.111.203) (Quit: leaving)
2020-10-01 10:37:11 +0200 <lortabac> kindaro: funny thing is, I wanted to suggest you this solution the other day, but you went offline right before I could finish my sentence
2020-10-01 10:37:40 +0200 <tomsmeding> [exa]: it seems it marks all extra-source-files as executable?
2020-10-01 10:37:42 +0200conal(~conal@64.71.133.70)
2020-10-01 10:38:08 +0200 <kindaro> Maybe trying to be compatible with NTFS or something?
2020-10-01 10:38:43 +0200o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt)
2020-10-01 10:38:56 +0200 <tomsmeding> windows certainly likes to mark stuff executable, but I'd hope it hardly _needs_ them to be?
2020-10-01 10:39:14 +0200 <tomsmeding> also then why aren't the source files executable, only the extra-source-files
2020-10-01 10:39:31 +0200 <tomsmeding> and not the LICENSE file
2020-10-01 10:39:38 +0200jgt(~jgt@188.239.64.32) (Ping timeout: 256 seconds)
2020-10-01 10:39:47 +0200motersen(~user@2001-4dd1-ce19-0-41b8-8f35-edf5-ff23.ipv6dyn.netcologne.de) (Ping timeout: 240 seconds)
2020-10-01 10:40:24 +0200 <kindaro> Yep, that does not align.
2020-10-01 10:41:45 +0200coot(~coot@37.30.49.34.nat.umts.dynamic.t-mobile.pl) ()
2020-10-01 10:41:52 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-01 10:42:19 +0200 <[exa]> windows' executable bit is the "safe default" if reading the filesystem on a reasonable platform
2020-10-01 10:42:30 +0200 <[exa]> hopefully nothing to do with this
2020-10-01 10:43:01 +0200 <[exa]> btw isn't that just my issue? A perfectly empty cabal project from `cabal init` does that for me here.
2020-10-01 10:43:02 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 258 seconds)
2020-10-01 10:43:17 +0200 <tomsmeding> oh, you mean that windows has no concept of an x bit, so it just gets set by whatever code does the translation to unix world?
2020-10-01 10:43:21 +0200coot(~coot@37.30.49.34.nat.umts.dynamic.t-mobile.pl)
2020-10-01 10:43:56 +0200 <dminuoso> [exa]: File a bug report?
2020-10-01 10:44:23 +0200 <[exa]> tomsmeding: AFAIK that was the original reason when they wrote the fat16/32 drivers
2020-10-01 10:44:49 +0200 <tomsmeding> because I've seen x bits set also in e.g. zip files that I receive from windows users
2020-10-01 10:45:09 +0200 <[exa]> interesting
2020-10-01 10:45:22 +0200 <[exa]> perhaps it became a convention like \r\n :]
2020-10-01 10:45:42 +0200 <[exa]> but certainly that has nothing in common with CHANGELOG +x
2020-10-01 10:45:57 +0200 <[exa]> s/certainly/hopefully/
2020-10-01 10:46:02 +0200 <dminuoso> [exa]: And your question of 1Gsec is answered in the source code
2020-10-01 10:46:13 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds)
2020-10-01 10:46:19 +0200 <tomsmeding> https://github.com/haskell/cabal/blob/master/cabal-install/src/Distribution/Client/SrcDist.hs#L87
2020-10-01 10:46:21 +0200 <tomsmeding> indeed it is
2020-10-01 10:47:21 +0200 <dminuoso> It seems rather hacky though. It should rather adjust the proper mod time to have 1980 as a minimum.
2020-10-01 10:47:28 +0200 <dminuoso> As opposed to fixed at 1Gsec
2020-10-01 10:47:40 +0200taurux(~taurux@net-93-151-203-48.cust.dsl.teletu.it)
2020-10-01 10:47:43 +0200 <tomsmeding> in particular, the modification time is set to a constant value for reproducibility
2020-10-01 10:48:22 +0200 <dminuoso> I dont know about reproducibility here, the rationale seems to be just windows.
2020-10-01 10:48:31 +0200 <dminuoso> https://github.com/haskell/cabal/issues/5596
2020-10-01 10:49:02 +0200 <tomsmeding> well one of the comments quotes: > These archives are stable and two archives of the same format built from the same source will hash to the same value.
2020-10-01 10:49:16 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6) (Remote host closed the connection)
2020-10-01 10:49:25 +0200 <dminuoso> Mmm
2020-10-01 10:49:30 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-10-01 10:49:45 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6)
2020-10-01 10:50:02 +0200 <tomsmeding> https://cabal.readthedocs.io/en/3.4/cabal-commands.html#cabal-v2-sdist
2020-10-01 10:50:30 +0200 <[exa]> wow, thanks a lot
2020-10-01 10:50:41 +0200 <dminuoso> The executable bit is weird though
2020-10-01 10:50:54 +0200 <dminuoso> Can't immediately find the cause for it in the cabal sources
2020-10-01 10:51:52 +0200 <[exa]> it might be the same "safety" as with the filesystems, "what if someone will try to execute a file in a package that was build on windows"
2020-10-01 10:51:56 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-01 10:51:59 +0200filwisher(~filwisher@cpc76738-dals23-2-0-cust186.20-2.cable.virginm.net)
2020-10-01 10:52:42 +0200o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt) (*.net *.split)
2020-10-01 10:52:42 +0200thc202(~thc202@unaffiliated/thc202) (*.net *.split)
2020-10-01 10:52:42 +0200whiteline(~whiteline@unaffiliated/whiteline) (*.net *.split)
2020-10-01 10:52:42 +0200ddere(uid110888@gateway/web/irccloud.com/x-jowgaeystqlypvfd) (*.net *.split)
2020-10-01 10:52:42 +0200thonkpod(~thonkpod@2001:19f0:ac01:b46:5400:1ff:fec7:d73d) (*.net *.split)
2020-10-01 10:52:42 +0200entel(uid256215@botters/entel) (*.net *.split)
2020-10-01 10:52:42 +0200eacameron(sid256985@gateway/web/irccloud.com/x-kpwlorbysgtnxhte) (*.net *.split)
2020-10-01 10:52:42 +0200liff(liff@kapsi.fi) (*.net *.split)
2020-10-01 10:52:42 +0200SolarAquarion(SolarAquar@gateway/shell/panicbnc/x-nikabmyijjgiqeue) (*.net *.split)
2020-10-01 10:52:42 +0200jabruen[m](jabruenmat@gateway/shell/matrix.org/x-akmaydnltwuauerf) (*.net *.split)
2020-10-01 10:52:42 +0200PotatoHatsue(berbermanp@gateway/shell/matrix.org/x-lcuapfbpkatzswxh) (*.net *.split)
2020-10-01 10:52:42 +0200glowcoil(sid3405@gateway/web/irccloud.com/x-thsriowqmdkgjing) (*.net *.split)
2020-10-01 10:52:42 +0200PoliticsII____(sid193551@gateway/web/irccloud.com/x-nvfqluymqsvazvtl) (*.net *.split)
2020-10-01 10:52:42 +0200koankeeper(sid216950@gateway/web/irccloud.com/x-zrkqcymdfzqfjfqv) (*.net *.split)
2020-10-01 10:52:42 +0200dequbed(~dequbed@yanduxian.paranoidlabs.org) (*.net *.split)
2020-10-01 10:52:42 +0200simony(sid226116@gateway/web/irccloud.com/x-ebcflagagczxghjj) (*.net *.split)
2020-10-01 10:52:42 +0200teehemkay(sid14792@gateway/web/irccloud.com/x-xjwybgbmcxfolzwh) (*.net *.split)
2020-10-01 10:52:42 +0200benwr__(sid372383@gateway/web/irccloud.com/x-ehohzcwkyjbzpbwl) (*.net *.split)
2020-10-01 10:52:42 +0200rann(sid175221@gateway/web/irccloud.com/x-aedrxgorilstsgns) (*.net *.split)
2020-10-01 10:52:42 +0200miklcct(quasselcor@2001:19f0:7001:5ad:5400:2ff:feb6:50d7) (*.net *.split)
2020-10-01 10:52:42 +0200mpickering(sid78412@gateway/web/irccloud.com/x-ugziboqyrxfitrmv) (*.net *.split)
2020-10-01 10:52:42 +0200nlofaro(sid258233@gateway/web/irccloud.com/x-etxlydyigzmwkiap) (*.net *.split)
2020-10-01 10:52:42 +0200angerman(sid209936@gateway/web/irccloud.com/x-kbnupcpypxlxxlnc) (*.net *.split)
2020-10-01 10:52:42 +0200unlink__(~unlink2@p200300ebcf25bd0068eb9d9c94da2a17.dip0.t-ipconnect.de) (*.net *.split)
2020-10-01 10:52:42 +0200srid(sridmatrix@gateway/shell/matrix.org/x-zqttickmrfyduksr) (*.net *.split)
2020-10-01 10:52:42 +0200michaelpj1(michaelpjm@gateway/shell/matrix.org/x-bmrqrkqdmdnabvkc) (*.net *.split)
2020-10-01 10:52:42 +0200johnnyboy[m](gifumatrix@gateway/shell/matrix.org/x-xczqbcixpmjhwvre) (*.net *.split)
2020-10-01 10:52:42 +0200chreekat[m](chreekatma@gateway/shell/matrix.org/x-umxlgtkybcwevjvb) (*.net *.split)
2020-10-01 10:52:42 +0200lambdaclan(lambdaclan@gateway/shell/matrix.org/x-rosqvrjyauthsfym) (*.net *.split)
2020-10-01 10:52:42 +0200io_r_us[m](commandlin@gateway/shell/matrix.org/x-kjrwesnzoyenqgzx) (*.net *.split)
2020-10-01 10:52:42 +0200barrucadu(~barrucadu@fsf/member/barrucadu) (*.net *.split)
2020-10-01 10:52:42 +0200bcoppens_(~bartcopp@vpn2.bartcoppens.be) (*.net *.split)
2020-10-01 10:52:42 +0200noteness(~noteness@unaffiliated/nessessary129) (*.net *.split)
2020-10-01 10:52:42 +0200opqdonut(opqdonut@pseudo.fixme.fi) (*.net *.split)
2020-10-01 10:52:42 +0200Velpoman(~Velpoman@159.65.76.124) (*.net *.split)
2020-10-01 10:52:42 +0200dixie(~dixie@real.wilbury.sk) (*.net *.split)
2020-10-01 10:52:42 +0200uwap(~uwap@genja.uwap.name) (*.net *.split)
2020-10-01 10:52:49 +0200mmohammadi9812(~mmohammad@2.178.221.242) (Ping timeout: 256 seconds)
2020-10-01 10:53:16 +0200 <tomsmeding> https://github.com/haskell/cabal/search?q=entryPermissions that is suggestive
2020-10-01 10:53:38 +0200macrover(~macrover@ip70-189-231-35.lv.lv.cox.net) (Ping timeout: 272 seconds)
2020-10-01 10:54:28 +0200 <tomsmeding> https://github.com/haskell/cabal/issues/5813
2020-10-01 10:55:17 +0200 <tomsmeding> hmm, perhaps this was changed in cabal HEAD or something?
2020-10-01 10:55:25 +0200nckx(~nckx@tobias.gr) (Ping timeout: 264 seconds)
2020-10-01 10:55:31 +0200 <dminuoso> Indeed
2020-10-01 10:55:37 +0200 <dminuoso> 3.4/2.4.1.0 will have the fix
2020-10-01 10:55:40 +0200lep-delete(~lep@94.31.82.44) (Read error: Connection reset by peer)
2020-10-01 10:55:41 +0200 <dminuoso> [exa]: ^-
2020-10-01 10:55:49 +0200nckx(~nckx@tobias.gr)
2020-10-01 10:55:49 +0200 <dminuoso> Good find, tomsmeding.
2020-10-01 10:56:28 +0200lep-delete(~lep@94.31.82.44)
2020-10-01 10:56:36 +0200 <[exa]> wow cool
2020-10-01 10:56:48 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 272 seconds)
2020-10-01 10:58:03 +0200 <dminuoso> "How to make other people dig through source code and github. Just ask in #haskell"
2020-10-01 10:58:08 +0200filwisher(~filwisher@cpc76738-dals23-2-0-cust186.20-2.cable.virginm.net) (Quit: WeeChat 2.9)
2020-10-01 10:59:03 +0200 <tomsmeding> also thanks to whoever works on cabal, all the explicit imports are hugely helpful in navigating the source in a pinch :p
2020-10-01 10:59:17 +0200 <tomsmeding> and including issue references in useful places
2020-10-01 10:59:58 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 256 seconds)
2020-10-01 11:00:00 +0200 <[exa]> ok great, issue "solved"
2020-10-01 11:00:01 +0200Alphi(~Alphi@193.56.252.210) ()
2020-10-01 11:00:05 +0200 <[exa]> thanks guys, really. :]
2020-10-01 11:00:08 +0200 <tomsmeding> wait! :)
2020-10-01 11:00:16 +0200 <tomsmeding> wait and thy issues shall get solved
2020-10-01 11:00:31 +0200 <[exa]> I'm gonna try HEAD cabal and see
2020-10-01 11:00:37 +0200slycelote[m](slycelotem@gateway/shell/matrix.org/x-qegvxmgummjxgnuy) (Quit: Idle for 30+ days)
2020-10-01 11:03:47 +0200 <dminuoso> [exa]: Or just update to 3.4?
2020-10-01 11:03:50 +0200Takumo(takumo@unaffiliated/takumokatekari)
2020-10-01 11:04:03 +0200 <[exa]> there's 3.4?
2020-10-01 11:04:06 +0200 <dminuoso> Yes.
2020-10-01 11:04:12 +0200 <tomsmeding> ghcup has it as 'prerelease'
2020-10-01 11:04:57 +0200 <dminuoso> [exa]: It comes with a very cool list-bin command!
2020-10-01 11:05:01 +0200 <maerwald> ghcup install cabal 3.4.0.0-rc3
2020-10-01 11:05:02 +0200 <dminuoso> That alone makes it worthwhile to use.
2020-10-01 11:05:11 +0200 <dminuoso> (No more cabal-plan to safely extract build artifacts)
2020-10-01 11:06:31 +0200 <[exa]> is it prebuilt somewhere? (I am doing the ghcup stuff manually now)
2020-10-01 11:07:42 +0200mav1(~mav@p5b02806a.dip0.t-ipconnect.de)
2020-10-01 11:07:53 +0200 <maerwald> https://oleg.fi/cabal-install-3.4.0.0-rc3
2020-10-01 11:08:05 +0200mirrorbird(~psutcliff@2a00:801:3fb:53b9:b09b:cd4e:4e4a:44a9) (Ping timeout: 272 seconds)
2020-10-01 11:08:10 +0200 <dminuoso> Now, is oleg a trustworthy source for that? :>
2020-10-01 11:08:31 +0200 <maerwald> the only active cabal maintaier? not sure...
2020-10-01 11:08:40 +0200 <[exa]> :]
2020-10-01 11:08:53 +0200 <[exa]> oh let's just
2020-10-01 11:08:57 +0200 <[exa]> cabal install cabal-install
2020-10-01 11:08:59 +0200 <dminuoso> +1
2020-10-01 11:09:03 +0200 <[exa]> I like that
2020-10-01 11:09:10 +0200 <maerwald> nah
2020-10-01 11:09:14 +0200 <maerwald> that often fails
2020-10-01 11:09:18 +0200 <maerwald> not recommended
2020-10-01 11:09:20 +0200 <[exa]> nay!
2020-10-01 11:09:30 +0200 <dminuoso> How can you add a constraint to `cabal install`?
2020-10-01 11:09:44 +0200 <maerwald> dminuoso: --contraint
2020-10-01 11:09:46 +0200 <maerwald> :D
2020-10-01 11:09:56 +0200 <maerwald> (without the typo)
2020-10-01 11:09:56 +0200 <dminuoso> Ah, indeed
2020-10-01 11:10:08 +0200o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt)
2020-10-01 11:10:08 +0200thc202(~thc202@unaffiliated/thc202)
2020-10-01 11:10:08 +0200whiteline(~whiteline@unaffiliated/whiteline)
2020-10-01 11:10:08 +0200ddere(uid110888@gateway/web/irccloud.com/x-jowgaeystqlypvfd)
2020-10-01 11:10:08 +0200thonkpod(~thonkpod@2001:19f0:ac01:b46:5400:1ff:fec7:d73d)
2020-10-01 11:10:08 +0200entel(uid256215@botters/entel)
2020-10-01 11:10:08 +0200eacameron(sid256985@gateway/web/irccloud.com/x-kpwlorbysgtnxhte)
2020-10-01 11:10:08 +0200liff(liff@kapsi.fi)
2020-10-01 11:10:08 +0200SolarAquarion(SolarAquar@gateway/shell/panicbnc/x-nikabmyijjgiqeue)
2020-10-01 11:10:08 +0200PotatoHatsue(berbermanp@gateway/shell/matrix.org/x-lcuapfbpkatzswxh)
2020-10-01 11:10:08 +0200glowcoil(sid3405@gateway/web/irccloud.com/x-thsriowqmdkgjing)
2020-10-01 11:10:08 +0200rann(sid175221@gateway/web/irccloud.com/x-aedrxgorilstsgns)
2020-10-01 11:10:08 +0200PoliticsII____(sid193551@gateway/web/irccloud.com/x-nvfqluymqsvazvtl)
2020-10-01 11:10:08 +0200angerman(sid209936@gateway/web/irccloud.com/x-kbnupcpypxlxxlnc)
2020-10-01 11:10:08 +0200dequbed(~dequbed@yanduxian.paranoidlabs.org)
2020-10-01 11:10:08 +0200koankeeper(sid216950@gateway/web/irccloud.com/x-zrkqcymdfzqfjfqv)
2020-10-01 11:10:08 +0200teehemkay(sid14792@gateway/web/irccloud.com/x-xjwybgbmcxfolzwh)
2020-10-01 11:10:08 +0200simony(sid226116@gateway/web/irccloud.com/x-ebcflagagczxghjj)
2020-10-01 11:10:08 +0200miklcct(quasselcor@2001:19f0:7001:5ad:5400:2ff:feb6:50d7)
2020-10-01 11:10:08 +0200mpickering(sid78412@gateway/web/irccloud.com/x-ugziboqyrxfitrmv)
2020-10-01 11:10:08 +0200benwr__(sid372383@gateway/web/irccloud.com/x-ehohzcwkyjbzpbwl)
2020-10-01 11:10:08 +0200nlofaro(sid258233@gateway/web/irccloud.com/x-etxlydyigzmwkiap)
2020-10-01 11:10:08 +0200unlink__(~unlink2@p200300ebcf25bd0068eb9d9c94da2a17.dip0.t-ipconnect.de)
2020-10-01 11:10:08 +0200srid(sridmatrix@gateway/shell/matrix.org/x-zqttickmrfyduksr)
2020-10-01 11:10:08 +0200michaelpj1(michaelpjm@gateway/shell/matrix.org/x-bmrqrkqdmdnabvkc)
2020-10-01 11:10:08 +0200johnnyboy[m](gifumatrix@gateway/shell/matrix.org/x-xczqbcixpmjhwvre)
2020-10-01 11:10:08 +0200chreekat[m](chreekatma@gateway/shell/matrix.org/x-umxlgtkybcwevjvb)
2020-10-01 11:10:08 +0200lambdaclan(lambdaclan@gateway/shell/matrix.org/x-rosqvrjyauthsfym)
2020-10-01 11:10:08 +0200io_r_us[m](commandlin@gateway/shell/matrix.org/x-kjrwesnzoyenqgzx)
2020-10-01 11:10:08 +0200barrucadu(~barrucadu@fsf/member/barrucadu)
2020-10-01 11:10:08 +0200bcoppens_(~bartcopp@vpn2.bartcoppens.be)
2020-10-01 11:10:08 +0200noteness(~noteness@unaffiliated/nessessary129)
2020-10-01 11:10:08 +0200opqdonut(opqdonut@pseudo.fixme.fi)
2020-10-01 11:10:08 +0200Velpoman(~Velpoman@159.65.76.124)
2020-10-01 11:10:08 +0200dixie(~dixie@real.wilbury.sk)
2020-10-01 11:10:08 +0200uwap(~uwap@genja.uwap.name)
2020-10-01 11:12:26 +0200mav1(~mav@p5b02806a.dip0.t-ipconnect.de) (Ping timeout: 256 seconds)
2020-10-01 11:13:03 +0200rann(sid175221@gateway/web/irccloud.com/x-aedrxgorilstsgns) (Ping timeout: 244 seconds)
2020-10-01 11:14:05 +0200mmohammadi9812(~mmohammad@2.178.221.242)
2020-10-01 11:14:46 +0200rann(sid175221@gateway/web/irccloud.com/x-ovtijajwgywpgkxi)
2020-10-01 11:17:28 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-10-01 11:17:37 +0200ddere(uid110888@gateway/web/irccloud.com/x-jowgaeystqlypvfd) (Quit: Connection closed for inactivity)
2020-10-01 11:18:53 +0200jonathanx(~jonathan@dyn-8-sc.cdg.chalmers.se) (Ping timeout: 256 seconds)
2020-10-01 11:20:48 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-01 11:21:51 +0200kini1(~kini@s91904426.blix.com)
2020-10-01 11:23:52 +0200carlomagno1(~cararell@inet-hqmc02-o.oracle.com)
2020-10-01 11:24:09 +0200conal(~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
2020-10-01 11:25:07 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
2020-10-01 11:26:28 +0200carlomagno(~cararell@inet-hqmc02-o.oracle.com) (Ping timeout: 260 seconds)
2020-10-01 11:27:52 +0200acidjnk_new(~acidjnk@p200300d0c723785465f167aafe8fcf1d.dip0.t-ipconnect.de)
2020-10-01 11:28:15 +0200mav1(~mav@p5b02806a.dip0.t-ipconnect.de)
2020-10-01 11:30:28 +0200ubert(~Thunderbi@178.115.129.189.wireless.dyn.drei.com)
2020-10-01 11:31:05 +0200tsrt^(tsrt@ip98-184-89-2.mc.at.cox.net) ()
2020-10-01 11:31:50 +0200shatriff(~vitaliish@176.52.219.10)
2020-10-01 11:32:34 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 246 seconds)
2020-10-01 11:32:53 +0200nnst^(nnst@ip98-184-89-2.mc.at.cox.net)
2020-10-01 11:38:58 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-10-01 11:42:24 +0200bitmagie(~Thunderbi@200116b806edc300c48960da51f309e2.dip.versatel-1u1.de) (Quit: bitmagie)
2020-10-01 11:43:02 +0200dhil(~dhil@11.29.39.217.dyn.plus.net) (Ping timeout: 272 seconds)
2020-10-01 11:43:19 +0200filwisher(~filwisher@78.141.201.45)
2020-10-01 11:43:51 +0200filwishe1(~filwisher@cpc76738-dals23-2-0-cust186.20-2.cable.virginm.net)
2020-10-01 11:44:01 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de)
2020-10-01 11:46:52 +0200filwishe1(~filwisher@cpc76738-dals23-2-0-cust186.20-2.cable.virginm.net) (Client Quit)
2020-10-01 11:47:14 +0200filwishe1(~filwisher@cpc76738-dals23-2-0-cust186.20-2.cable.virginm.net)
2020-10-01 11:47:35 +0200filwishe1(~filwisher@cpc76738-dals23-2-0-cust186.20-2.cable.virginm.net) (Client Quit)
2020-10-01 11:48:37 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2020-10-01 11:50:28 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 256 seconds)
2020-10-01 11:50:42 +0200Tops2(~Tobias@dyndsl-095-033-090-070.ewe-ip-backbone.de)
2020-10-01 11:50:59 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-10-01 11:51:20 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-01 11:55:25 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
2020-10-01 11:56:15 +0200 <tomjaguarpaw> Is there a C++ like templating language for Haskell, that is like blaze or lucid but for C++ instead of HTML.
2020-10-01 11:58:43 +0200 <tomjaguarpaw> s/C++ like/C++/
2020-10-01 11:59:38 +0200dhil(~dhil@11.29.39.217.dyn.plus.net)
2020-10-01 12:01:20 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-01 12:02:44 +0200HaskellYogi(~vivekrama@49.207.206.176)
2020-10-01 12:04:43 +0200jb55(~jb55@gateway/tor-sasl/jb55) (Ping timeout: 240 seconds)
2020-10-01 12:05:32 +0200jb55(~jb55@gateway/tor-sasl/jb55)
2020-10-01 12:05:46 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds)
2020-10-01 12:08:50 +0200sw1nn(~sw1nn@host86-173-104-87.range86-173.btcentralplus.com) (Quit: WeeChat 2.9)
2020-10-01 12:09:38 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 272 seconds)
2020-10-01 12:10:38 +0200HaskellYogi(~vivekrama@49.207.206.176) (Quit: Sayonara. Long live Haskell)
2020-10-01 12:10:41 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-10-01 12:11:15 +0200HaskellYogi(~vivekrama@49.207.206.176)
2020-10-01 12:11:27 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-01 12:12:11 +0200sw1nn(~sw1nn@host86-173-104-87.range86-173.btcentralplus.com)
2020-10-01 12:14:53 +0200mmohammadi9812(~mmohammad@2.178.221.242) (Quit: I quit (╯°□°)╯︵ ┻━┻)
2020-10-01 12:15:11 +0200jonathanx(~jonathan@dyn-8-sc.cdg.chalmers.se)
2020-10-01 12:15:17 +0200filwisher(~filwisher@78.141.201.45) (Quit: ZNC 1.7.1 - https://znc.in)
2020-10-01 12:15:20 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 256 seconds)
2020-10-01 12:15:37 +0200filwisher(~filwisher@78.141.201.45)
2020-10-01 12:16:08 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds)
2020-10-01 12:17:26 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-10-01 12:18:03 +0200raichoo(~raichoo@213.240.178.58)
2020-10-01 12:18:52 +0200jle`(~mstksg@cpe-23-240-75-236.socal.res.rr.com)
2020-10-01 12:18:52 +0200jle`(~mstksg@cpe-23-240-75-236.socal.res.rr.com) (Changing host)
2020-10-01 12:18:52 +0200jle`(~mstksg@unaffiliated/mstksg)
2020-10-01 12:19:55 +0200DTZUZU(~DTZUZU@S0106bcd165662a4d.vs.shawcable.net) (Read error: Connection reset by peer)
2020-10-01 12:20:49 +0200DTZUZU(~DTZUZU@S0106bcd165662a4d.vs.shawcable.net)
2020-10-01 12:21:38 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-01 12:22:08 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 256 seconds)
2020-10-01 12:22:55 +0200tomku(~tomku@unaffiliated/tomku) (Ping timeout: 256 seconds)
2020-10-01 12:23:26 +0200tomku(~tomku@unaffiliated/tomku)
2020-10-01 12:23:45 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-10-01 12:24:59 +0200toorevitimirp(~tooreviti@117.182.181.38)
2020-10-01 12:26:06 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds)
2020-10-01 12:30:45 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 258 seconds)
2020-10-01 12:31:50 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-01 12:32:14 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-10-01 12:32:59 +0200shatriff(~vitaliish@176.52.219.10) (Remote host closed the connection)
2020-10-01 12:34:35 +0200rprije(~rprije@203.214.95.251) (Ping timeout: 240 seconds)
2020-10-01 12:34:51 +0200zacts(~zacts@dragora/developer/zacts)
2020-10-01 12:36:23 +0200nineonine(~nineonine@216-19-190-182.dyn.novuscom.net) (Read error: Connection reset by peer)
2020-10-01 12:36:24 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
2020-10-01 12:36:24 +0200mahene(~mahene@2a02:8109:86c0:8d68:5400:2bfd:d746:732c)
2020-10-01 12:36:56 +0200nineonine(~nineonine@216-19-190-182.dyn.novuscom.net)
2020-10-01 12:37:27 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 240 seconds)
2020-10-01 12:41:42 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-10-01 12:41:49 +0200mahene(~mahene@2a02:8109:86c0:8d68:5400:2bfd:d746:732c) (Ping timeout: 272 seconds)
2020-10-01 12:41:59 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-01 12:42:59 +0200cfricke(~cfricke@unaffiliated/cfricke) (Quit: WeeChat 2.9)
2020-10-01 12:46:35 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds)
2020-10-01 12:48:16 +0200cpressey(~cpressey@88.144.70.46) (Quit: \o/)
2020-10-01 12:51:04 +0200Papa(~papa@unaffiliated/papa) (Ping timeout: 258 seconds)
2020-10-01 12:51:16 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 256 seconds)
2020-10-01 12:51:38 +0200xts(~ts@46.101.20.9) (Ping timeout: 260 seconds)
2020-10-01 12:51:54 +0200xts(~ts@46.101.20.9)
2020-10-01 12:53:03 +0200Papa(~papa@unaffiliated/papa)
2020-10-01 12:55:28 +0200hackagebifunctors 5.5.8 - Bifunctors https://hackage.haskell.org/package/bifunctors-5.5.8 (ryanglscott)
2020-10-01 12:56:44 +0200kindaro(1f08d381@h31-8-211-129.dyn.bashtel.ru) (Ping timeout: 245 seconds)
2020-10-01 12:58:58 +0200hackagehasql-pipes 0.1.0.0 - A pipe to stream a postgres database cursor in the hasql ecosystem https://hackage.haskell.org/package/hasql-pipes-0.1.0.0 (PaoloVeronelli)
2020-10-01 13:00:04 +0200jonathanx(~jonathan@dyn-8-sc.cdg.chalmers.se) (Ping timeout: 246 seconds)
2020-10-01 13:01:38 +0200Amras(~Amras@unaffiliated/amras0000)
2020-10-01 13:01:48 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-01 13:02:08 +0200todda7(~torstein@athedsl-4518485.home.otenet.gr) (Ping timeout: 260 seconds)
2020-10-01 13:02:17 +0200hekkaidekapus(~tchouri@gateway/tor-sasl/hekkaidekapus) (Remote host closed the connection)
2020-10-01 13:02:41 +0200hekkaidekapus(~tchouri@gateway/tor-sasl/hekkaidekapus)
2020-10-01 13:04:38 +0200c1c1d1cd177__7_7(~user@46.0.160.33)
2020-10-01 13:05:02 +0200mav1(~mav@p5b02806a.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2020-10-01 13:05:03 +0200c1c1d1cd177__7_7(~user@46.0.160.33) (Client Quit)
2020-10-01 13:05:46 +0200c1c1d1cd177__7_7(~user@46.0.160.33)
2020-10-01 13:05:52 +0200hekkaidekapus(~tchouri@gateway/tor-sasl/hekkaidekapus) (Remote host closed the connection)
2020-10-01 13:06:16 +0200hekkaidekapus(~tchouri@gateway/tor-sasl/hekkaidekapus)
2020-10-01 13:06:49 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 264 seconds)
2020-10-01 13:06:57 +0200hackageth-lego 0.1 - Template Haskell construction utilities https://hackage.haskell.org/package/th-lego-0.1 (NikitaVolkov)
2020-10-01 13:08:17 +0200c1c1d1cd177__7_7(~user@46.0.160.33) (Client Quit)
2020-10-01 13:12:17 +0200jonathanx(~jonathan@dyn-8-sc.cdg.chalmers.se)
2020-10-01 13:14:56 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de)
2020-10-01 13:20:07 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2020-10-01 13:24:01 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de)
2020-10-01 13:24:44 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-10-01 13:25:57 +0200hackageprofunctors 5.6 - Profunctors https://hackage.haskell.org/package/profunctors-5.6 (ryanglscott)
2020-10-01 13:27:32 +0200howdoi(uid224@gateway/web/irccloud.com/x-owzahvktatqyicxd) (Quit: Connection closed for inactivity)
2020-10-01 13:28:27 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-01 13:29:07 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 246 seconds)
2020-10-01 13:30:40 +0200tchouri(~tchouri@gateway/tor-sasl/hekkaidekapus)
2020-10-01 13:32:43 +0200hekkaidekapus(~tchouri@gateway/tor-sasl/hekkaidekapus) (Ping timeout: 240 seconds)
2020-10-01 13:32:45 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
2020-10-01 13:34:34 +0200plutoniix(~q@175.176.222.7) (Quit: Leaving)
2020-10-01 13:36:12 +0200Gurkenglas(~Gurkengla@unaffiliated/gurkenglas)
2020-10-01 13:38:06 +0200jgt(~jgt@188.239.64.32)
2020-10-01 13:38:42 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-01 13:39:55 +0200atriq(~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0)
2020-10-01 13:40:07 +0200Taneb(~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0) (Ping timeout: 240 seconds)
2020-10-01 13:40:47 +0200magog(~wee@unaffiliated/magog) (Ping timeout: 240 seconds)
2020-10-01 13:41:16 +0200magog(~wee@unaffiliated/magog)
2020-10-01 13:43:18 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds)
2020-10-01 13:43:28 +0200hackageghc-lib-parser 0.20201001 - The GHC API, decoupled from GHC versions https://hackage.haskell.org/package/ghc-lib-parser-0.20201001 (shayne_fletcher)
2020-10-01 13:44:27 +0200hackageghc-lib 0.20201001 - The GHC API, decoupled from GHC versions https://hackage.haskell.org/package/ghc-lib-0.20201001 (shayne_fletcher)
2020-10-01 13:45:02 +0200rzmt(~rzmt@87-92-180-112.rev.dnainternet.fi) (Ping timeout: 260 seconds)
2020-10-01 13:46:16 +0200fendor(~fendor@178.115.131.145.wireless.dyn.drei.com)
2020-10-01 13:47:59 +0200rzmt(~rzmt@87-92-180-112.rev.dnainternet.fi)
2020-10-01 13:48:47 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-01 13:52:35 +0200solonarv(~solonarv@astrasbourg-653-1-252-112.w92-161.abo.wanadoo.fr)
2020-10-01 13:52:54 +0200polyrain(~polyrain@2001:8003:640b:b900:58f5:a1c1:c514:8c13)
2020-10-01 13:53:07 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
2020-10-01 13:53:12 +0200 <tomsmeding> tomjaguarpaw: https://hackage.haskell.org/package/language-c exists?
2020-10-01 13:53:23 +0200 <tomsmeding> though generating c++ sounds scary
2020-10-01 13:54:15 +0200taurux(~taurux@net-93-151-203-48.cust.dsl.teletu.it) (Ping timeout: 265 seconds)
2020-10-01 13:54:39 +0200HaskellYogi(~vivekrama@49.207.206.176) (Remote host closed the connection)
2020-10-01 13:55:15 +0200 <tomjaguarpaw> Thanks, that looks like it would be a useful backend to what I want to do. I'm looking for a frontend that makes the code readable.
2020-10-01 13:57:36 +0200taurux(~taurux@net-93-144-64-219.cust.vodafonedsl.it)
2020-10-01 14:00:00 +0200HaskellYogi(~vivekrama@49.207.206.176)
2020-10-01 14:00:01 +0200kini1(~kini@s91904426.blix.com) ()
2020-10-01 14:01:00 +0200Franciman(~francesco@host-212-171-42-250.retail.telecomitalia.it)
2020-10-01 14:04:10 +0200urodna(~urodna@unaffiliated/urodna)
2020-10-01 14:04:40 +0200HaskellYogi(~vivekrama@49.207.206.176) (Ping timeout: 258 seconds)
2020-10-01 14:04:43 +0200Max39(83dcf9b2@eduroam-249-178.wlan.uni-bonn.de)
2020-10-01 14:07:00 +0200mav1(~mav@83.135.139.36)
2020-10-01 14:07:17 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-01 14:07:43 +0200mirrorbird(~psutcliff@2a00:801:3fb:53b9:b09b:cd4e:4e4a:44a9)
2020-10-01 14:07:47 +0200todda7(~torstein@athedsl-4367507.home.otenet.gr)
2020-10-01 14:09:24 +0200Max39Max93
2020-10-01 14:11:17 +0200ericsagnes(~ericsagne@2405:6580:0:5100:ed19:5da:9d69:c63c) (Ping timeout: 260 seconds)
2020-10-01 14:11:39 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds)
2020-10-01 14:13:49 +0200Max93(83dcf9b2@eduroam-249-178.wlan.uni-bonn.de) (Remote host closed the connection)
2020-10-01 14:20:00 +0200taurux(~taurux@net-93-144-64-219.cust.vodafonedsl.it) (Ping timeout: 258 seconds)
2020-10-01 14:20:05 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-10-01 14:20:26 +0200taurux(~taurux@net-188-152-9-4.cust.vodafonedsl.it)
2020-10-01 14:22:54 +0200ericsagnes(~ericsagne@2405:6580:0:5100:6c67:5a40:c7fb:8ff8)
2020-10-01 14:24:32 +0200thir(~thir@p200300f27f0fc60094e773283d7bf825.dip0.t-ipconnect.de) (Remote host closed the connection)
2020-10-01 14:24:37 +0200bitmapper(uid464869@gateway/web/irccloud.com/x-snlzgsknnstcsppe) (Quit: Connection closed for inactivity)
2020-10-01 14:26:07 +0200thir(~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de)
2020-10-01 14:27:59 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-10-01 14:29:05 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 240 seconds)
2020-10-01 14:30:47 +0200thir(~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2020-10-01 14:32:25 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
2020-10-01 14:34:47 +0200atriqTaneb
2020-10-01 14:36:35 +0200 <[exa]> hm the amount of problems is surprising
2020-10-01 14:36:46 +0200 <[exa]> Ambiguous module name ‘Data.Vector.Mutable’: it was found in multiple packages: vector-0.12.1.2 vector-0.12.1.2
2020-10-01 14:37:53 +0200 <dminuoso> Cute
2020-10-01 14:38:04 +0200shatriff(~vitaliish@80.233.49.225)
2020-10-01 14:38:29 +0200 <maerwald> [exa]: ls ~/.ghc/*/environments/
2020-10-01 14:43:29 +0200 <[exa]> cool. :]
2020-10-01 14:43:33 +0200 <[exa]> thanks
2020-10-01 14:45:26 +0200John20(~John@82.46.59.122) (Ping timeout: 272 seconds)
2020-10-01 14:46:53 +0200finkata(~dpetrov@83.222.188.39)
2020-10-01 14:47:14 +0200finkata(~dpetrov@83.222.188.39) (Remote host closed the connection)
2020-10-01 14:49:05 +0200cfricke(~cfricke@unaffiliated/cfricke)
2020-10-01 14:49:57 +0200hackageghc-lib-parser-ex 0.20201001 - Algorithms on GHC parse trees https://hackage.haskell.org/package/ghc-lib-parser-ex-0.20201001 (shayne_fletcher)
2020-10-01 14:50:06 +0200todda7(~torstein@athedsl-4367507.home.otenet.gr) (Ping timeout: 256 seconds)
2020-10-01 14:50:19 +0200jle`(~mstksg@unaffiliated/mstksg) (Ping timeout: 265 seconds)
2020-10-01 14:52:28 +0200hackagefree 5.1.4 - Monads for free https://hackage.haskell.org/package/free-5.1.4 (ryanglscott)
2020-10-01 14:52:37 +0200nbloomf(~nbloomf@2600:1700:83e0:1f40:5470:d799:c2f1:7593)
2020-10-01 14:53:27 +0200rkrishnan(~rkrishnan@rkrishnan.org)
2020-10-01 14:55:32 +0200John20(~John@82.46.59.122)
2020-10-01 14:56:05 +0200Smaczny(~Smaczny@178.162.204.238)
2020-10-01 14:57:29 +0200thir(~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de)
2020-10-01 14:57:41 +0200nbloomf(~nbloomf@2600:1700:83e0:1f40:5470:d799:c2f1:7593) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-01 14:59:54 +0200raehik(~raehik@cpc96984-rdng25-2-0-cust109.15-3.cable.virginm.net)
2020-10-01 15:01:09 +0200mirrorbird(~psutcliff@2a00:801:3fb:53b9:b09b:cd4e:4e4a:44a9) (Ping timeout: 272 seconds)
2020-10-01 15:01:12 +0200st8less(~st8less@ip72-204-59-82.fv.ks.cox.net)
2020-10-01 15:02:52 +0200xelxebar(~xelxebar@gateway/tor-sasl/xelxebar) (Remote host closed the connection)
2020-10-01 15:03:39 +0200xelxebar(~xelxebar@gateway/tor-sasl/xelxebar)
2020-10-01 15:04:03 +0200seanparsons(~sean@cpc145088-gill21-2-0-cust281.20-1.cable.virginm.net) (Ping timeout: 260 seconds)
2020-10-01 15:05:41 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-10-01 15:05:59 +0200thir(~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de) (Ping timeout: 244 seconds)
2020-10-01 15:07:26 +0200motherfsck(~motherfsc@unaffiliated/motherfsck)
2020-10-01 15:08:28 +0200Achylles(~Achylles@179.98.132.189)
2020-10-01 15:11:19 +0200GyroW(~GyroW@unaffiliated/gyrow) (Read error: Connection reset by peer)
2020-10-01 15:11:31 +0200GyroW_(~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
2020-10-01 15:11:31 +0200GyroW_(~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
2020-10-01 15:11:31 +0200GyroW_(~GyroW@unaffiliated/gyrow)
2020-10-01 15:12:44 +0200st8less(~st8less@ip72-204-59-82.fv.ks.cox.net) (Quit: WeeChat 2.7.1)
2020-10-01 15:14:13 +0200seanparsons(~sean@cpc145088-gill21-2-0-cust281.20-1.cable.virginm.net)
2020-10-01 15:17:07 +0200kindaro(6dbb76bb@h109-187-118-187.dyn.bashtel.ru)
2020-10-01 15:19:01 +0200 <kindaro> How can I find out in Template Haskell if a given name is in scope? When I `reifyInstances`, I get instances for types that are not in scope, and I would like to filter those out.
2020-10-01 15:19:54 +0200dhil(~dhil@11.29.39.217.dyn.plus.net) (Ping timeout: 260 seconds)
2020-10-01 15:20:27 +0200Rudd0(~Rudd0@185.189.115.108) (Ping timeout: 240 seconds)
2020-10-01 15:20:52 +0200 <dminuoso> kindaro: lookupTypeName
2020-10-01 15:21:22 +0200nbloomf(~nbloomf@2600:1700:83e0:1f40:ec62:ae19:dbca:1ba7)
2020-10-01 15:21:43 +0200 <dminuoso> Note this does not give you module level scope, but only splice scope.
2020-10-01 15:23:37 +0200shatriff(~vitaliish@80.233.49.225) (Ping timeout: 264 seconds)
2020-10-01 15:23:56 +0200ym555(~ym@156.199.76.92)
2020-10-01 15:25:35 +0200FreeBirdLjj(~freebirdl@240e:388:4f41:dc00:60bf:e024:170:22c8)
2020-10-01 15:26:26 +0200HaskellYogi(~vivekrama@49.207.206.176)
2020-10-01 15:26:36 +0200mav1(~mav@83.135.139.36) (Ping timeout: 272 seconds)
2020-10-01 15:27:51 +0200polyrain(~polyrain@2001:8003:640b:b900:58f5:a1c1:c514:8c13) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-01 15:28:26 +0200elliott__(~elliott@pool-100-36-54-163.washdc.fios.verizon.net) (Quit: WeeChat 2.9)
2020-10-01 15:29:19 +0200Achylles(~Achylles@179.98.132.189) (Quit: Leaving)
2020-10-01 15:29:47 +0200FreeBirdLjj(~freebirdl@240e:388:4f41:dc00:60bf:e024:170:22c8) (Ping timeout: 240 seconds)
2020-10-01 15:35:14 +0200ystael(~ystael@209.6.50.55)
2020-10-01 15:39:30 +0200bitmapper(uid464869@gateway/web/irccloud.com/x-pdkqlqfnwurchqja)
2020-10-01 15:41:03 +0200murphy_(~murphy_@2604:2000:1281:8a9e:d2e4:da3f:de8a:c9c9) (Ping timeout: 272 seconds)
2020-10-01 15:41:22 +0200murphy_(~murphy_@2604:2000:1281:8a9e:79f9:b15f:8bb9:7d0e)
2020-10-01 15:46:21 +0200raehik(~raehik@cpc96984-rdng25-2-0-cust109.15-3.cable.virginm.net) (Ping timeout: 256 seconds)
2020-10-01 15:46:27 +0200hyperisco(~hyperisco@d192-186-117-226.static.comm.cgocable.net) (Read error: Connection reset by peer)
2020-10-01 15:48:27 +0200hackageaeson-value-parser 0.19.4 - API for parsing "aeson" JSON tree into Haskell types https://hackage.haskell.org/package/aeson-value-parser-0.19.4 (NikitaVolkov)
2020-10-01 15:48:49 +0200darjeeling_(~darjeelin@39.190.13.84)
2020-10-01 15:49:09 +0200p3n(~p3n@2a00:19a0:3:7c:0:d9c6:7cf6:1) (Remote host closed the connection)
2020-10-01 15:52:37 +0200kori(~kori@arrowheads/kori) (Read error: Connection reset by peer)
2020-10-01 15:52:58 +0200hackageinvariant 0.5.4 - Haskell98 invariant functors https://hackage.haskell.org/package/invariant-0.5.4 (ryanglscott)
2020-10-01 15:53:02 +0200ransom(~c4264035@c-73-243-2-10.hsd1.co.comcast.net)
2020-10-01 15:53:12 +0200drbean(~drbean@TC210-63-209-67.static.apol.com.tw) (Ping timeout: 272 seconds)
2020-10-01 15:53:41 +0200Smaczny(~Smaczny@178.162.204.238) (Remote host closed the connection)
2020-10-01 15:54:38 +0200darjeeling_(~darjeelin@39.190.13.84) (Quit: WeeChat 2.9)
2020-10-01 15:55:56 +0200darjeeling_(~darjeelin@39.190.13.84)
2020-10-01 15:56:34 +0200jgt(~jgt@188.239.64.32) (Ping timeout: 256 seconds)
2020-10-01 15:56:47 +0200toorevitimirp(~tooreviti@117.182.181.38) (Ping timeout: 240 seconds)
2020-10-01 15:57:08 +0200 <shapr> @quote dons
2020-10-01 15:57:08 +0200 <lambdabot> dons says: Oleg: A unit of measurement of type system complexity. Also, a famous computer scientist.
2020-10-01 15:57:12 +0200 <shapr> :-D
2020-10-01 15:57:29 +0200cfricke(~cfricke@unaffiliated/cfricke) (Quit: WeeChat 2.9)
2020-10-01 15:57:46 +0200 <lemmih> shapr: Long time, no see.
2020-10-01 15:58:01 +0200shaprhugs lemmih
2020-10-01 15:58:09 +0200 <shapr> lemmih: I like your animation project!
2020-10-01 15:58:22 +0200 <shapr> lemmih: which continent are you on these days?
2020-10-01 15:58:47 +0200 <shapr> lemmih: I have a job writing Haskell! My brain is stretching!
2020-10-01 15:59:20 +0200 <shapr> Also, haskell-language-server is amazing, it's a huge speed up to my coding workflow. The instant type checking feedback is the best thing ever.
2020-10-01 15:59:26 +0200 <lemmih> Thank! It's keeping me sane in these unusual times. I'm live in Singapore now.
2020-10-01 15:59:55 +0200raehik(~raehik@cpc96984-rdng25-2-0-cust109.15-3.cable.virginm.net)
2020-10-01 16:00:43 +0200 <lemmih> shapr: Wonderful. Is it remote work?
2020-10-01 16:02:18 +0200Saukk(~Saukk@2001:998:f1:3966:96a6:dee2:2e9:fdf3)
2020-10-01 16:02:58 +0200hackageth-lego 0.1.0.1 - Template Haskell construction utilities https://hackage.haskell.org/package/th-lego-0.1.0.1 (NikitaVolkov)
2020-10-01 16:04:03 +0200knupfer(~Thunderbi@dynamic-046-114-145-216.46.114.pool.telefonica.de)
2020-10-01 16:04:25 +0200raehik(~raehik@cpc96984-rdng25-2-0-cust109.15-3.cable.virginm.net) (Ping timeout: 240 seconds)
2020-10-01 16:05:03 +0200dhil(~dhil@11.29.39.217.dyn.plus.net)
2020-10-01 16:05:07 +0200alp(~alp@2a01:e0a:58b:4920:905c:27a5:4384:bd6e) (Ping timeout: 240 seconds)
2020-10-01 16:06:08 +0200tzh(~tzh@2601:448:c500:5300::4b20)
2020-10-01 16:06:14 +0200raehik(~raehik@cpc96984-rdng25-2-0-cust109.15-3.cable.virginm.net)
2020-10-01 16:07:14 +0200 <lemmih> shapr: The Haskell ecosystem sure has changed a lot. Better tooling, everything a bit more professional. Although I do miss gatherings being so weird and informal that John Hughes would ride your unicycle. :)
2020-10-01 16:09:08 +0200skiremembers that :)
2020-10-01 16:12:46 +0200son0p(~son0p@181.136.122.143)
2020-10-01 16:13:56 +0200Gurkenglas(~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 265 seconds)
2020-10-01 16:14:59 +0200mmynsted[m](mmynstedko@gateway/shell/matrix.org/x-bkszosvvokirdutd)
2020-10-01 16:15:18 +0200st8less(~st8less@ip72-204-59-82.fv.ks.cox.net)
2020-10-01 16:15:20 +0200todda7(~torstein@athedsl-4367507.home.otenet.gr)
2020-10-01 16:15:32 +0200 <kindaro> What I am looking for is more like `Type → Q Bool` than `String → Q (Maybe Name)`.
2020-10-01 16:16:05 +0200darjeeling_(~darjeelin@39.190.13.84) (Ping timeout: 240 seconds)
2020-10-01 16:16:35 +0200 <kindaro> Something else than `fmap isJust ∘ lookupTypeName ∘ ppr`.
2020-10-01 16:17:13 +0200 <maerwald> shapr: backend?
2020-10-01 16:18:32 +0200gienah(~mwright@gentoo/developer/gienah) (Read error: No route to host)
2020-10-01 16:18:53 +0200gienah(~mwright@gentoo/developer/gienah)
2020-10-01 16:19:06 +0200zebrag(~inkbottle@aaubervilliers-654-1-113-44.w86-198.abo.wanadoo.fr)
2020-10-01 16:20:06 +0200inkbottle(~inkbottle@aaubervilliers-654-1-83-94.w86-212.abo.wanadoo.fr) (Ping timeout: 260 seconds)
2020-10-01 16:21:28 +0200cr3(~cr3@192-222-143-195.qc.cable.ebox.net)
2020-10-01 16:22:05 +0200alp(~alp@2a01:e0a:58b:4920:c113:2588:2f2f:3e46)
2020-10-01 16:22:47 +0200clynamen(~clynamen@109.116.4.71)
2020-10-01 16:24:54 +0200Sigyn(sigyn@freenode/utility-bot/sigyn) (Quit: i've seen things you people wouldn't believe. spam bots on fire off the shoulder of sigyn. i watched k-line beams glitter in the dark near the Tannhäuser Gate. all these moments will be lost in time, like tears in rain. time to /die)
2020-10-01 16:25:27 +0200Sigyn(sigyn@freenode/utility-bot/sigyn)
2020-10-01 16:25:27 +0200ChanServ+o Sigyn
2020-10-01 16:27:09 +0200Tops21(~Tobias@dyndsl-095-033-090-070.ewe-ip-backbone.de)
2020-10-01 16:27:39 +0200Tops22(~Tobias@dyndsl-095-033-090-070.ewe-ip-backbone.de)
2020-10-01 16:28:55 +0200xcmw(~textual@dyn-72-33-0-89.uwnet.wisc.edu)
2020-10-01 16:29:55 +0200acidjnk_new(~acidjnk@p200300d0c723785465f167aafe8fcf1d.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2020-10-01 16:30:04 +0200Tops2(~Tobias@dyndsl-095-033-090-070.ewe-ip-backbone.de) (Ping timeout: 246 seconds)
2020-10-01 16:30:23 +0200DataComp_(~lumeng@static-50-43-26-251.bvtn.or.frontiernet.net) (Quit: Leaving...)
2020-10-01 16:30:27 +0200hackagehttp-io-streams 0.1.5.0 - HTTP and WebSocket client based on io-streams https://hackage.haskell.org/package/http-io-streams-0.1.5.0 (HerbertValerioRiedel)
2020-10-01 16:31:23 +0200Tops21(~Tobias@dyndsl-095-033-090-070.ewe-ip-backbone.de) (Ping timeout: 240 seconds)
2020-10-01 16:36:38 +0200avdb(~avdb@ip-62-235-13-127.dsl.scarlet.be)
2020-10-01 16:36:59 +0200bayashi(~bayashi@178.162.204.238)
2020-10-01 16:37:23 +0200acidjnk_new(~acidjnk@p200300d0c72378548d78178f4051abec.dip0.t-ipconnect.de)
2020-10-01 16:40:29 +0200machinedgod(~machinedg@45.78.189.122)
2020-10-01 16:40:34 +0200ddellacosta(~dd@86.106.121.168)
2020-10-01 16:41:13 +0200alp(~alp@2a01:e0a:58b:4920:c113:2588:2f2f:3e46) (Ping timeout: 272 seconds)
2020-10-01 16:43:17 +0200polyphem(~p0lyph3m@2a02:810d:640:776c:76d7:55f6:f85b:c889)
2020-10-01 16:44:42 +0200fresheyeball(~isaac@c-71-237-105-37.hsd1.co.comcast.net) (Quit: WeeChat 2.7.1)
2020-10-01 16:46:47 +0200xff0x(~fox@2001:1a81:5220:1600:f180:f194:ac6e:4ac8) (Ping timeout: 240 seconds)
2020-10-01 16:47:46 +0200tzh(~tzh@2601:448:c500:5300::4b20) (Ping timeout: 244 seconds)
2020-10-01 16:47:46 +0200howdoi(uid224@gateway/web/irccloud.com/x-impnfldsswehocvz)
2020-10-01 16:48:44 +0200argent0(~argent0@168.227.96.2)
2020-10-01 16:49:09 +0200kuribas(~user@ptr-25vy0i78se1i01mm5ri.18120a2.ip6.access.telenet.be)
2020-10-01 16:49:27 +0200hackagebound 2.0.2 - Making de Bruijn Succ Less https://hackage.haskell.org/package/bound-2.0.2 (ryanglscott)
2020-10-01 16:49:38 +0200Silox|_(uid11617@gateway/web/irccloud.com/x-gmrlywdstkzjmwkt)
2020-10-01 16:50:26 +0200alp(~alp@2a01:e0a:58b:4920:a0d1:174f:c86a:a9d0)
2020-10-01 16:52:09 +0200Sgeo(~Sgeo@ool-18b982ad.dyn.optonline.net)
2020-10-01 16:52:56 +0200jgt(~jgt@188.239.64.32)
2020-10-01 16:53:03 +0200Saukk(~Saukk@2001:998:f1:3966:96a6:dee2:2e9:fdf3) (Remote host closed the connection)
2020-10-01 16:56:43 +0200 <shapr> lemmih: yeah, I still have those pictures somewhere. I think chunks of the community are still that informal! I'm glad the tooling is improving.
2020-10-01 16:56:59 +0200 <shapr> lemmih: yes, it's a remote work job. The company is in Boston, I'm in the DC adjacent part of Maryland
2020-10-01 16:58:50 +0200 <mmaruseacph2> oh, this sounds interesting
2020-10-01 16:58:57 +0200 <mmaruseacph2> may I ask which company?
2020-10-01 16:59:48 +0200elliott_(~elliott_@pool-100-36-54-163.washdc.fios.verizon.net) (Read error: Connection reset by peer)
2020-10-01 17:00:01 +0200bayashi(~bayashi@178.162.204.238) ()
2020-10-01 17:00:43 +0200elliott_(~elliott_@pool-100-36-54-163.washdc.fios.verizon.net)
2020-10-01 17:01:45 +0200jonathanx(~jonathan@dyn-8-sc.cdg.chalmers.se) (Remote host closed the connection)
2020-10-01 17:04:20 +0200raichoo(~raichoo@213.240.178.58) (Quit: Lost terminal)
2020-10-01 17:04:35 +0200tchouri(~tchouri@gateway/tor-sasl/hekkaidekapus) (Quit: tchouri)
2020-10-01 17:05:01 +0200tchouri(~tchouri@gateway/tor-sasl/hekkaidekapus)
2020-10-01 17:05:27 +0200tchourihekkaidekapus
2020-10-01 17:05:36 +0200Lord_of_Life_(~Lord@unaffiliated/lord-of-life/x-0885362)
2020-10-01 17:07:14 +0200hnOsmium0001(uid453710@gateway/web/irccloud.com/x-nrjrerspdzjidqfs)
2020-10-01 17:07:18 +0200Lord_of_Life(~Lord@unaffiliated/lord-of-life/x-0885362) (Ping timeout: 272 seconds)
2020-10-01 17:08:13 +0200Lord_of_Life_Lord_of_Life
2020-10-01 17:09:19 +0200sm[m]likes lemmih's animation project too
2020-10-01 17:09:36 +0200xff0x(~fox@2001:1a81:5220:1600:f180:f194:ac6e:4ac8)
2020-10-01 17:10:42 +0200 <dminuoso> zzz... my Server.hs module where all servant code is being fed to takes up to a minute in the simplifer now..
2020-10-01 17:10:42 +0200knupfer(~Thunderbi@dynamic-046-114-145-216.46.114.pool.telefonica.de) (Read error: Connection reset by peer)
2020-10-01 17:10:48 +0200 <dminuoso> This is getting unbearable..
2020-10-01 17:10:52 +0200 <dminuoso> Dont even have any generics. :(
2020-10-01 17:11:45 +0200 <Cale> -fno-code should hurry it along ;)
2020-10-01 17:12:15 +0200borne(~fritjof@2001:638:708:30da:4ed8:5a31:2712:89a5) (Ping timeout: 272 seconds)
2020-10-01 17:12:27 +0200tzh(~tzh@c-73-94-222-143.hsd1.mn.comcast.net)
2020-10-01 17:13:35 +0200 <dminuoso> Im not sure whether that's particularly helpful for v2-test. ;)
2020-10-01 17:15:04 +0200 <AWizzArd> I would like to write a file to disk and know for sure that the file has been successfuly written. Is there a way to have a safe "flush to disk"? I need to know that the disk has flushed its caches and my data has certainly has been stored.
2020-10-01 17:15:34 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-10-01 17:15:52 +0200 <dminuoso> AWizzArd: Not trivially.
2020-10-01 17:15:59 +0200 <dminuoso> And not portably.
2020-10-01 17:16:21 +0200 <Cale> But on unix-likes, you want to call fsync
2020-10-01 17:16:24 +0200 <fendor> dminuoso, can't you use withFile?
2020-10-01 17:16:34 +0200 <dminuoso> Cale: that wont work
2020-10-01 17:16:39 +0200 <Cale> dminuoso: oh?
2020-10-01 17:16:43 +0200 <fendor> and call hFlush on the handle?
2020-10-01 17:16:55 +0200 <dminuoso> Cale: It depends on whether the harddisk itself has a write-back cache or not.
2020-10-01 17:17:08 +0200 <dminuoso> This is why databases should only run on disks with write-through caches.
2020-10-01 17:17:26 +0200 <dminuoso> fsync merely flushes os buffers onto the disks, but doesnt care or know what happens then
2020-10-01 17:17:30 +0200 <AWizzArd> Cale: I am on Linux.
2020-10-01 17:17:34 +0200 <Cale> Well, that's fair, though I wouldn't expect software to be able to do much more than that
2020-10-01 17:17:41 +0200 <dminuoso> Right
2020-10-01 17:17:55 +0200 <AWizzArd> dminuoso: I can buy the right harddisk if required.
2020-10-01 17:18:08 +0200 <dminuoso> AWizzArd: Make sure you buy one with write-through caches, and then fsync is enough.
2020-10-01 17:18:08 +0200 <AWizzArd> server disk for DBs, it’s fine
2020-10-01 17:18:14 +0200 <dminuoso> Note
2020-10-01 17:18:17 +0200 <AWizzArd> Okay, fsync is my friend.
2020-10-01 17:18:23 +0200 <dminuoso> That if you have a RAID controller that too must have write-through caching
2020-10-01 17:18:24 +0200 <Cale> http://hackage.haskell.org/package/cautious-file-1.0.2 looks like it has the basic idea.
2020-10-01 17:18:47 +0200 <dminuoso> AWizzArd: https://www.postgresql.org/docs/9.1/wal-reliability.html
2020-10-01 17:18:50 +0200 <dminuoso> This is a good guidance
2020-10-01 17:19:12 +0200 <dminuoso> Or well, better refer to the most recent version: https://www.postgresql.org/docs/13/wal-reliability.html
2020-10-01 17:20:04 +0200 <dminuoso> (Also take note about the hints of BBUs in raid controllers)
2020-10-01 17:20:41 +0200 <dminuoso> Furthermore, the notes regarding FLUSH CACHE EXT could be of interest to you.
2020-10-01 17:20:53 +0200 <dminuoso> In case you cant find a suitable write-through harddrive
2020-10-01 17:21:43 +0200Alucard(~Alucard@185.163.110.116)
2020-10-01 17:22:41 +0200 <Cale> Of course, another thing you can do is to use postgres to store all your stuff in the first place, so that at least the software tricks for reliability are handled. :)
2020-10-01 17:24:02 +0200kritzefitz(~kritzefit@fw-front.credativ.com) (Remote host closed the connection)
2020-10-01 17:24:14 +0200kindaro(6dbb76bb@h109-187-118-187.dyn.bashtel.ru) (Ping timeout: 245 seconds)
2020-10-01 17:24:15 +0200zebrag(~inkbottle@aaubervilliers-654-1-113-44.w86-198.abo.wanadoo.fr) (Quit: Konversation terminated!)
2020-10-01 17:24:37 +0200zebrag(~inkbottle@aaubervilliers-654-1-113-44.w86-198.abo.wanadoo.fr)
2020-10-01 17:26:01 +0200madjestic(~madjestic@86-88-72-244.fixed.kpn.net) (Ping timeout: 264 seconds)
2020-10-01 17:26:18 +0200toorevitimirp(~tooreviti@117.182.181.38)
2020-10-01 17:26:28 +0200hackagekan-extensions 5.2.1 - Kan extensions, Kan lifts, the Yoneda lemma, and (co)density (co)monads https://hackage.haskell.org/package/kan-extensions-5.2.1 (ryanglscott)
2020-10-01 17:26:49 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-01 17:27:43 +0200mmohammadi9812(~mmohammad@188.210.100.86)
2020-10-01 17:28:59 +0200conal(~conal@64.71.133.70)
2020-10-01 17:30:18 +0200toorevitimirp(~tooreviti@117.182.181.38) (Remote host closed the connection)
2020-10-01 17:31:36 +0200toorevitimirp(~tooreviti@117.182.181.38)
2020-10-01 17:32:46 +0200spew(uid195861@gateway/web/irccloud.com/x-nekawqgdgyhycrzn)
2020-10-01 17:33:19 +0200thir(~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de)
2020-10-01 17:34:25 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 240 seconds)
2020-10-01 17:35:32 +0200avdb(~avdb@ip-62-235-13-127.dsl.scarlet.be) (Quit: WeeChat 2.9)
2020-10-01 17:35:35 +0200toorevitimirp(~tooreviti@117.182.181.38) (Remote host closed the connection)
2020-10-01 17:36:16 +0200toorevitimirp(~tooreviti@117.182.181.38)
2020-10-01 17:36:57 +0200Guest18(567e8866@gateway/web/cgi-irc/kiwiirc.com/ip.86.126.136.102)
2020-10-01 17:37:05 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-10-01 17:39:47 +0200thir(~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2020-10-01 17:39:55 +0200zacts(~zacts@dragora/developer/zacts) (Quit: leaving)
2020-10-01 17:40:13 +0200zacts(~zacts@dragora/developer/zacts)
2020-10-01 17:42:07 +0200acidjnk_new(~acidjnk@p200300d0c72378548d78178f4051abec.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2020-10-01 17:42:27 +0200 <dminuoso> Cale: Heh, I found an alternative to -fno-code, -O0 seems to work for v2-test just fine.
2020-10-01 17:42:28 +0200hackagemattermost-api 50200.8.0 - Client API for Mattermost chat system https://hackage.haskell.org/package/mattermost-api-50200.8.0 (JonathanDaugherty)
2020-10-01 17:42:47 +0200 <dminuoso> It's amazing how the default -O setting takes over a minute for this. I dont even do type level tricks. :(
2020-10-01 17:43:20 +0200 <davean> dminuoso: Yah, -O0 is very fast. -fno-code is only slightly faster usually.
2020-10-01 17:43:28 +0200hackagematterhorn 50200.10.2, mattermost-api-qc 50200.8.0 (JonathanDaugherty): https://qbin.io/dame-way-72tw
2020-10-01 17:44:31 +0200monochrom-o monochrom
2020-10-01 17:45:53 +0200toorevitimirp(~tooreviti@117.182.181.38) (Remote host closed the connection)
2020-10-01 17:49:06 +0200chappi(~swaroop@157.49.85.251)
2020-10-01 17:49:29 +0200chappi(~swaroop@157.49.85.251) (Client Quit)
2020-10-01 17:50:48 +0200ericsagnes(~ericsagne@2405:6580:0:5100:6c67:5a40:c7fb:8ff8) (Ping timeout: 244 seconds)
2020-10-01 17:51:36 +0200avdb(~avdb@ip-62-235-13-127.dsl.scarlet.be)
2020-10-01 17:53:13 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds)
2020-10-01 17:55:52 +0200justanotheruser(~justanoth@unaffiliated/justanotheruser)
2020-10-01 17:57:08 +0200 <AWizzArd> I once mentioned that I was using a package.yaml because there I need to list dependencies only once. Someone then explained that Cabal can now do the same. How can I do it?
2020-10-01 17:57:23 +0200chappi(~swaroop@157.49.85.251)
2020-10-01 17:57:27 +0200 <AWizzArd> I would like to list 25 dependencies and not repeat them again for a test or benchmark section.
2020-10-01 17:57:47 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
2020-10-01 17:59:02 +0200jespada(~jespada@90.254.241.6) (Ping timeout: 260 seconds)
2020-10-01 17:59:07 +0200 <monochrom> https://cabal.readthedocs.io/en/3.4/cabal-package.html#common-stanzas
2020-10-01 18:00:05 +0200 <AWizzArd> monochrom: Is this also available before Cabal 3.4 (which seems to not be released yet)?
2020-10-01 18:00:08 +0200jespada(~jespada@90.254.241.6)
2020-10-01 18:00:23 +0200 <monochrom> I think yes.
2020-10-01 18:00:30 +0200xcmw(~textual@dyn-72-33-0-89.uwnet.wisc.edu) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-01 18:00:38 +0200 <AWizzArd> monochrom: but yeah, those `common` things were exactly what I was looking for, thx!
2020-10-01 18:00:44 +0200Rudd0(~Rudd0@185.189.115.108)
2020-10-01 18:00:47 +0200 <monochrom> Don't forget that you also need https://cabal.readthedocs.io/en/3.4/cabal-package.html#pkg-field-cabal-version to enable, heh, what I would call "cabal extensions"
2020-10-01 18:00:56 +0200chappi(~swaroop@157.49.85.251) (Client Quit)
2020-10-01 18:01:19 +0200tanuki(~quassel@173.168.154.189)
2020-10-01 18:01:58 +0200hackagerebase 1.9.1 - A more progressive alternative to the "base" package https://hackage.haskell.org/package/rebase-1.9.1 (NikitaVolkov)
2020-10-01 18:02:04 +0200 <monochrom> I refer to the version-3.4 manual because it is well structured.
2020-10-01 18:02:05 +0200chappi(~swaroop@157.49.85.251)
2020-10-01 18:02:55 +0200 <AWizzArd> monochrom: I am not really sure what this means, what I need to enable. Should I mention `cabal-version: 3.2` explicitly in my .cabal file? Or should `cabal-version:` no longer be used?
2020-10-01 18:03:13 +0200ericsagnes(~ericsagne@2405:6580:0:5100:4135:276:e32f:4d13)
2020-10-01 18:03:28 +0200hackagerebase 1.10 - A more progressive alternative to the "base" package https://hackage.haskell.org/package/rebase-1.10 (NikitaVolkov)
2020-10-01 18:03:55 +0200chappi(~swaroop@157.49.85.251) (Client Quit)
2020-10-01 18:03:56 +0200 <davean> AWizzArd: it would be used and it should be the first line.
2020-10-01 18:04:10 +0200 <davean> AWizzArd: it tells Cabal what file format the file is in
2020-10-01 18:04:28 +0200hackagererebase 1.10 - Reexports from "base" with a bunch of other standard libraries https://hackage.haskell.org/package/rerebase-1.10 (NikitaVolkov)
2020-10-01 18:04:41 +0200chappi(~swaroop@157.49.85.251)
2020-10-01 18:04:56 +0200 <monochrom> https://cabal.readthedocs.io/en/3.4/file-format-changelog.html#cabal-version-2-2 So any number from 2.2 or higher is fine.
2020-10-01 18:05:19 +0200chappi(~swaroop@157.49.85.251) (Client Quit)
2020-10-01 18:05:41 +0200chappi(~swaroop@157.49.85.251)
2020-10-01 18:05:56 +0200 <AWizzArd> And instead of using >= I would specify the exact Cabal version that is being used, for example 3.2, right?
2020-10-01 18:06:11 +0200 <monochrom> yes
2020-10-01 18:06:24 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-10-01 18:06:47 +0200 <AWizzArd> Right now, in a Nix project where I am using an older Cabal version, I need to prefix my commands with `new-`. Is this different in 3.2? Can I there omit that prefix?
2020-10-01 18:07:03 +0200 <monochrom> Yes
2020-10-01 18:07:59 +0200coot(~coot@37.30.49.34.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
2020-10-01 18:08:47 +0200tzh(~tzh@c-73-94-222-143.hsd1.mn.comcast.net) (Remote host closed the connection)
2020-10-01 18:09:12 +0200tzh(~tzh@2601:448:c500:5300::143b)
2020-10-01 18:09:32 +0200wroathe(~wroathe@c-73-24-27-54.hsd1.mn.comcast.net)
2020-10-01 18:09:57 +0200hackagebrick 0.57 - A declarative terminal user interface library https://hackage.haskell.org/package/brick-0.57 (JonathanDaugherty)
2020-10-01 18:10:22 +0200conal(~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
2020-10-01 18:15:20 +0200 <maerwald> phadej: stack has a "$targets" thing for ghc-options... the closes cabal has is local packages I think. Is there a way in cabal.project to have stuff apply only for targets?
2020-10-01 18:15:42 +0200 <maerwald> https://docs.haskellstack.org/en/stable/yaml_configuration/#ghc-options
2020-10-01 18:16:26 +0200 <maerwald> top-level in cabal is "locals" afair... except that ghc-options currently can't be top-level
2020-10-01 18:16:28 +0200hackagestring-interpolate 0.3.0.2 - Haskell string/text/bytestring interpolation that just works https://hackage.haskell.org/package/string-interpolate-0.3.0.2 (williamyaoh)
2020-10-01 18:17:37 +0200conal(~conal@64.71.133.70)
2020-10-01 18:19:58 +0200hackagepolysemy-time 0.1.0.0 - Polysemy effect for time https://hackage.haskell.org/package/polysemy-time-0.1.0.0 (tek)
2020-10-01 18:20:58 +0200hackagepolysemy-chronos 0.1.0.0 - Polysemy effect for chronos https://hackage.haskell.org/package/polysemy-chronos-0.1.0.0 (tek)
2020-10-01 18:21:16 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-10-01 18:21:20 +0200 <monochrom> maerwald: In cabal.project and/or cabal.project.local, you can name individual packages and give them tailor-made ghc-options.
2020-10-01 18:21:42 +0200 <maerwald> yes, but that doesn't give me *targets*
2020-10-01 18:22:03 +0200 <maerwald> context https://github.com/hasufell/stack2cabal/pull/13
2020-10-01 18:22:12 +0200 <monochrom> Right, you have to manually expand "targets" to package names and also duplicate.
2020-10-01 18:22:15 +0200 <monochrom> https://cabal.readthedocs.io/en/3.4/cabal-project.html
2020-10-01 18:22:45 +0200 <maerwald> the problem is that it's not statically known info
2020-10-01 18:23:08 +0200 <monochrom> Ah OK, cabal does not have an equivalent.
2020-10-01 18:23:26 +0200geekosaur(42d52102@66.213.33.2)
2020-10-01 18:23:58 +0200hackagequickjs-hs 0.1.2.2 - Wrapper for the QuickJS Javascript Engine https://hackage.haskell.org/package/quickjs-hs-0.1.2.2 (goodlyrottenapple)
2020-10-01 18:26:34 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds)
2020-10-01 18:26:46 +0200 <monochrom> If you are OK with writing --ghc-options on the command line, then it applies to all local packages.
2020-10-01 18:26:59 +0200alp(~alp@2a01:e0a:58b:4920:a0d1:174f:c86a:a9d0) (Ping timeout: 272 seconds)
2020-10-01 18:27:28 +0200 <maerwald> I just don't know how to convert this stack-ism to cabal
2020-10-01 18:27:38 +0200roconnor(~roconnor@host-104-157-196-197.dyn.295.ca) (Ping timeout: 260 seconds)
2020-10-01 18:27:51 +0200 <monochrom> I think it isn't convertable.
2020-10-01 18:29:10 +0200mirrorbird(~psutcliff@2a00:801:42a:82eb:6edc:4c78:a574:2a8f)
2020-10-01 18:30:50 +0200borne(~fritjof@200116b864e6dd0007933c164a08810c.dip.versatel-1u1.de)
2020-10-01 18:31:38 +0200bobey88(~bobey@72-172-218-188.fidnet.com)
2020-10-01 18:33:46 +0200Lycurgus(~niemand@98.4.96.130)
2020-10-01 18:35:11 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-01 18:40:25 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 264 seconds)
2020-10-01 18:42:57 +0200Gurkenglas(~Gurkengla@unaffiliated/gurkenglas)
2020-10-01 18:44:16 +0200 <AWizzArd> What might this `%` be in `manage p $ formatQuery ("CREATE DATABASE "%F.database) db` as seen here: https://hackage.haskell.org/package/influxdb-1.9.0/docs/Database-InfluxDB.html
2020-10-01 18:44:25 +0200 <AWizzArd> Could this have anything to do with Lens?
2020-10-01 18:44:40 +0200conal(~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
2020-10-01 18:46:20 +0200 <yushyin> https://hackage.haskell.org/package/influxdb-1.9.0/docs/Database-InfluxDB-Format.html#v:-37-
2020-10-01 18:46:24 +0200Franciman(~francesco@host-212-171-42-250.retail.telecomitalia.it) (Quit: Leaving)
2020-10-01 18:46:52 +0200thir(~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de)
2020-10-01 18:47:57 +0200 <AWizzArd> yushyin: but wasn’t this Module get imported via import qualified Database.InfluxDB.Format as F ?
2020-10-01 18:48:07 +0200 <AWizzArd> So the % would have to get qualified with `F.` no?
2020-10-01 18:48:56 +0200 <geekosaur> it's in a string
2020-10-01 18:49:23 +0200 <AWizzArd> geekosaur: The String ends directly beforet he % char
2020-10-01 18:49:36 +0200 <AWizzArd> There is no space after the closing double quote.
2020-10-01 18:49:40 +0200 <geekosaur> hm, right, my client wraps right there so I missed it
2020-10-01 18:49:44 +0200thir(~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de) (Remote host closed the connection)
2020-10-01 18:49:51 +0200thir(~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de)
2020-10-01 18:49:55 +0200 <yushyin> AWizzArd: Database.InfluxDB reexports (%)
2020-10-01 18:49:58 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-10-01 18:50:02 +0200avdb(~avdb@ip-62-235-13-127.dsl.scarlet.be) (Quit: WeeChat 2.9)
2020-10-01 18:50:57 +0200cheater(~user@unaffiliated/cheater) (Remote host closed the connection)
2020-10-01 18:51:02 +0200 <yushyin> https://hackage.haskell.org/package/influxdb-1.9.0/docs/Database-InfluxDB.html#v:-37-
2020-10-01 18:51:09 +0200carlomagno1(~cararell@inet-hqmc02-o.oracle.com) (Remote host closed the connection)
2020-10-01 18:51:33 +0200 <AWizzArd> yushyin: okay that makes sense then, thx. Mystery solved (:
2020-10-01 18:51:58 +0200 <yushyin> :)
2020-10-01 18:52:40 +0200cheater(~user@unaffiliated/cheater)
2020-10-01 18:54:37 +0200mmynsted[m]texasmynsted[m]
2020-10-01 18:54:39 +0200carlomagno(~cararell@inet-hqmc02-o.oracle.com)
2020-10-01 18:56:06 +0200nineonine(~nineonine@216-19-190-182.dyn.novuscom.net) (Remote host closed the connection)
2020-10-01 18:57:05 +0200 <monochrom> (: XQuery comments are enclosed in matching smileys :)
2020-10-01 18:58:25 +0200conal(~conal@64.71.133.70)
2020-10-01 18:58:55 +0200Silox|_(uid11617@gateway/web/irccloud.com/x-gmrlywdstkzjmwkt) (Quit: Connection closed for inactivity)
2020-10-01 18:59:17 +0200madjestic(~madjestic@86-88-72-244.fixed.kpn.net)
2020-10-01 18:59:43 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-10-01 19:00:46 +0200 <AWizzArd> haha yes
2020-10-01 19:02:30 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-10-01 19:03:47 +0200nineonine(~nineonine@216.81.48.202)
2020-10-01 19:04:02 +0200 <Squarism> I'm pondering the possibility to serialize addresses to a datastructure. A lens if you will. Are there any library doing such things?ä
2020-10-01 19:04:24 +0200thir(~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de) (Remote host closed the connection)
2020-10-01 19:04:50 +0200thir(~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de)
2020-10-01 19:04:58 +0200 <Squarism> lev0_field1/1/lev3_field2 so to speak
2020-10-01 19:05:50 +0200zacts(~zacts@dragora/developer/zacts) (Quit: leaving)
2020-10-01 19:05:58 +0200hackagesqueal-postgresql 0.7.0.1 - Squeal PostgreSQL Library https://hackage.haskell.org/package/squeal-postgresql-0.7.0.1 (echatav)
2020-10-01 19:05:58 +0200voyons_calisse(~dan@107-190-41-58.cpe.teksavvy.com) (Read error: Connection reset by peer)
2020-10-01 19:05:59 +0200 <Squarism> but the important thing is that it should be possible to convert to a string
2020-10-01 19:06:08 +0200 <Squarism> ...and back
2020-10-01 19:06:35 +0200voyons_calisse(~dan@107-190-41-58.cpe.teksavvy.com)
2020-10-01 19:07:41 +0200nineonine(~nineonine@216.81.48.202) (Remote host closed the connection)
2020-10-01 19:07:57 +0200nineonine(~nineonine@216.81.48.202)
2020-10-01 19:08:23 +0200Lycurgus(~niemand@98.4.96.130) (Quit: Exeunt)
2020-10-01 19:08:23 +0200gentauro(~gentauro@unaffiliated/gentauro) (Read error: Connection reset by peer)
2020-10-01 19:08:48 +0200gentauro(~gentauro@unaffiliated/gentauro)
2020-10-01 19:08:52 +0200Lycurgus(~niemand@98.4.96.130)
2020-10-01 19:09:08 +0200Turmfalke(~user@unaffiliated/siracusa)
2020-10-01 19:10:07 +0200alp(~alp@2a01:e0a:58b:4920:55a8:f0a:ee5d:168a)
2020-10-01 19:10:29 +0200Amras(~Amras@unaffiliated/amras0000) (Remote host closed the connection)
2020-10-01 19:11:57 +0200Sheilong(uid293653@gateway/web/irccloud.com/x-rtxvrjvmyhuaovrl)
2020-10-01 19:12:06 +0200conal(~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
2020-10-01 19:12:07 +0200thir(~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2020-10-01 19:12:42 +0200xcmw(~textual@dyn-72-33-0-89.uwnet.wisc.edu)
2020-10-01 19:13:20 +0200 <sm[m]> Squarism: show, read ?
2020-10-01 19:14:43 +0200 <Squarism> sm[m], but lenses are functions. Will that work... wo too much extra work?
2020-10-01 19:15:22 +0200supercoven(~Supercove@84.251.84.166) (Read error: Connection reset by peer)
2020-10-01 19:15:25 +0200 <sm[m]> ah, no. You'd have to reify them as stringly paths like you wrote above
2020-10-01 19:16:04 +0200 <sm[m]> serialising general optics functions.. makes my head hurt
2020-10-01 19:16:27 +0200 <sm[m]> (to think about)
2020-10-01 19:16:33 +0200 <maerwald> optics are not functions though
2020-10-01 19:16:43 +0200 <maerwald> but not sure that helps lol
2020-10-01 19:16:48 +0200 <maerwald> https://hackage.haskell.org/package/optics-core-0.3/docs/Optics-Optic.html#t:Optic
2020-10-01 19:17:29 +0200 <sm[m]> serialise a sequence of keys - sure
2020-10-01 19:17:56 +0200 <sm[m]> a "path"
2020-10-01 19:20:07 +0200 <dolio> They are functions internally.
2020-10-01 19:20:07 +0200taurux(~taurux@net-188-152-9-4.cust.vodafonedsl.it) (Ping timeout: 240 seconds)
2020-10-01 19:20:18 +0200 <dolio> You just have to follow 6 links.
2020-10-01 19:20:24 +0200 <maerwald> hehe
2020-10-01 19:21:08 +0200taurux(~taurux@net-130-25-108-225.cust.vodafonedsl.it)
2020-10-01 19:23:16 +0200 <monochrom> This reminds me of "typedef int ___pid; typedef __pid ___pid; typdelf _pid __pid; typedef pid _pid;"
2020-10-01 19:23:48 +0200 <dolio> Is that something you've actually seen?
2020-10-01 19:24:13 +0200 <monochrom> Yes. I may have botched some detail.
2020-10-01 19:24:37 +0200 <dolio> Well, I'm sure there was an excellent reason for it.
2020-10-01 19:24:53 +0200 <monochrom> and added one more typedef than I really saw.
2020-10-01 19:25:14 +0200 <geekosaur> it looks very glibc. some platform or emulation interface at each layer, which work out to null translations on most modern unixlikes, or something like that
2020-10-01 19:25:50 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-01 19:26:41 +0200thir(~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de)
2020-10-01 19:27:57 +0200hackagepath-dhall-instance 0.2.0.0 - ToDhall and FromDhall instances for Path. https://hackage.haskell.org/package/path-dhall-instance-0.2.0.0 (locallycompact)
2020-10-01 19:29:15 +0200 <monochrom> More fairly, it's "typedef int __pid_t;" and later "typedef __pid_t pid_t;"
2020-10-01 19:30:23 +0200 <monochrom> probably not in the same file
2020-10-01 19:30:55 +0200thir(~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2020-10-01 19:31:11 +0200 <geekosaur> and there'd be an emulation layer becuase Back In The Day it was actually a (short), then an (unsigned short)
2020-10-01 19:31:47 +0200wroathe(~wroathe@c-73-24-27-54.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
2020-10-01 19:34:02 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
2020-10-01 19:36:16 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 246 seconds)
2020-10-01 19:36:39 +0200borne(~fritjof@200116b864e6dd0007933c164a08810c.dip.versatel-1u1.de) (Ping timeout: 272 seconds)
2020-10-01 19:37:45 +0200taurux(~taurux@net-130-25-108-225.cust.vodafonedsl.it) (Ping timeout: 240 seconds)
2020-10-01 19:38:05 +0200Amras(~Amras@unaffiliated/amras0000)
2020-10-01 19:38:50 +0200taurux(~taurux@net-188-216-0-240.cust.vodafonedsl.it)
2020-10-01 19:39:21 +0200John20(~John@82.46.59.122) (Ping timeout: 265 seconds)
2020-10-01 19:40:06 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-10-01 19:42:01 +0200cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net)
2020-10-01 19:43:20 +0200vicfred(~vicfred@unaffiliated/vicfred) (Quit: Leaving)
2020-10-01 19:43:52 +0200macrover(~macrover@ip70-189-231-35.lv.lv.cox.net)
2020-10-01 19:46:16 +0200madjestic(~madjestic@86-88-72-244.fixed.kpn.net) (Ping timeout: 272 seconds)
2020-10-01 19:48:25 +0200conal(~conal@64.71.133.70)
2020-10-01 19:48:44 +0200wroathe(~wroathe@c-73-24-27-54.hsd1.mn.comcast.net)
2020-10-01 19:48:49 +0200geekosaur(42d52102@66.213.33.2) (Ping timeout: 245 seconds)
2020-10-01 19:49:02 +0200irc_user(uid423822@gateway/web/irccloud.com/x-ekikuzxknoijafbq)
2020-10-01 19:49:57 +0200hackageacc 0.1.1 - Sequence optimized for monoidal construction and folding https://hackage.haskell.org/package/acc-0.1.1 (NikitaVolkov)
2020-10-01 19:50:26 +0200jneira(501e65ce@gateway/web/cgi-irc/kiwiirc.com/ip.80.30.101.206) (Ping timeout: 258 seconds)
2020-10-01 19:52:27 +0200hackageth-lego 0.1.0.2 - Template Haskell construction utilities https://hackage.haskell.org/package/th-lego-0.1.0.2 (NikitaVolkov)
2020-10-01 19:54:19 +0200vicfred(~vicfred@unaffiliated/vicfred)
2020-10-01 19:54:33 +0200raehik(~raehik@cpc96984-rdng25-2-0-cust109.15-3.cable.virginm.net) (Ping timeout: 260 seconds)
2020-10-01 19:55:00 +0200raehik(~raehik@cpc96984-rdng25-2-0-cust109.15-3.cable.virginm.net)
2020-10-01 19:55:41 +0200olligobber(olligobber@gateway/vpn/privateinternetaccess/olligobber) (Ping timeout: 256 seconds)
2020-10-01 19:55:49 +0200LKoen(~LKoen@81.255.219.130)
2020-10-01 19:57:28 +0200madjestic(~madjestic@86-88-72-244.fixed.kpn.net)
2020-10-01 19:58:50 +0200thir(~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de)
2020-10-01 20:00:01 +0200Alucard(~Alucard@185.163.110.116) ()
2020-10-01 20:00:17 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-10-01 20:00:57 +0200o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt) (*.net *.split)
2020-10-01 20:00:57 +0200thc202(~thc202@unaffiliated/thc202) (*.net *.split)
2020-10-01 20:00:57 +0200whiteline(~whiteline@unaffiliated/whiteline) (*.net *.split)
2020-10-01 20:00:57 +0200thonkpod(~thonkpod@2001:19f0:ac01:b46:5400:1ff:fec7:d73d) (*.net *.split)
2020-10-01 20:00:57 +0200entel(uid256215@botters/entel) (*.net *.split)
2020-10-01 20:00:57 +0200eacameron(sid256985@gateway/web/irccloud.com/x-kpwlorbysgtnxhte) (*.net *.split)
2020-10-01 20:00:57 +0200liff(liff@kapsi.fi) (*.net *.split)
2020-10-01 20:00:57 +0200SolarAquarion(SolarAquar@gateway/shell/panicbnc/x-nikabmyijjgiqeue) (*.net *.split)
2020-10-01 20:00:57 +0200PotatoHatsue(berbermanp@gateway/shell/matrix.org/x-lcuapfbpkatzswxh) (*.net *.split)
2020-10-01 20:00:57 +0200glowcoil(sid3405@gateway/web/irccloud.com/x-thsriowqmdkgjing) (*.net *.split)
2020-10-01 20:00:57 +0200PoliticsII____(sid193551@gateway/web/irccloud.com/x-nvfqluymqsvazvtl) (*.net *.split)
2020-10-01 20:00:57 +0200koankeeper(sid216950@gateway/web/irccloud.com/x-zrkqcymdfzqfjfqv) (*.net *.split)
2020-10-01 20:00:57 +0200dequbed(~dequbed@yanduxian.paranoidlabs.org) (*.net *.split)
2020-10-01 20:00:57 +0200simony(sid226116@gateway/web/irccloud.com/x-ebcflagagczxghjj) (*.net *.split)
2020-10-01 20:00:57 +0200teehemkay(sid14792@gateway/web/irccloud.com/x-xjwybgbmcxfolzwh) (*.net *.split)
2020-10-01 20:00:57 +0200benwr__(sid372383@gateway/web/irccloud.com/x-ehohzcwkyjbzpbwl) (*.net *.split)
2020-10-01 20:00:57 +0200miklcct(quasselcor@2001:19f0:7001:5ad:5400:2ff:feb6:50d7) (*.net *.split)
2020-10-01 20:00:57 +0200mpickering(sid78412@gateway/web/irccloud.com/x-ugziboqyrxfitrmv) (*.net *.split)
2020-10-01 20:00:57 +0200nlofaro(sid258233@gateway/web/irccloud.com/x-etxlydyigzmwkiap) (*.net *.split)
2020-10-01 20:00:57 +0200angerman(sid209936@gateway/web/irccloud.com/x-kbnupcpypxlxxlnc) (*.net *.split)
2020-10-01 20:00:57 +0200unlink__(~unlink2@p200300ebcf25bd0068eb9d9c94da2a17.dip0.t-ipconnect.de) (*.net *.split)
2020-10-01 20:00:57 +0200srid(sridmatrix@gateway/shell/matrix.org/x-zqttickmrfyduksr) (*.net *.split)
2020-10-01 20:00:57 +0200michaelpj1(michaelpjm@gateway/shell/matrix.org/x-bmrqrkqdmdnabvkc) (*.net *.split)
2020-10-01 20:00:57 +0200johnnyboy[m](gifumatrix@gateway/shell/matrix.org/x-xczqbcixpmjhwvre) (*.net *.split)
2020-10-01 20:00:57 +0200chreekat[m](chreekatma@gateway/shell/matrix.org/x-umxlgtkybcwevjvb) (*.net *.split)
2020-10-01 20:00:57 +0200lambdaclan(lambdaclan@gateway/shell/matrix.org/x-rosqvrjyauthsfym) (*.net *.split)
2020-10-01 20:00:57 +0200io_r_us[m](commandlin@gateway/shell/matrix.org/x-kjrwesnzoyenqgzx) (*.net *.split)
2020-10-01 20:00:57 +0200barrucadu(~barrucadu@fsf/member/barrucadu) (*.net *.split)
2020-10-01 20:00:57 +0200bcoppens_(~bartcopp@vpn2.bartcoppens.be) (*.net *.split)
2020-10-01 20:00:57 +0200noteness(~noteness@unaffiliated/nessessary129) (*.net *.split)
2020-10-01 20:00:57 +0200opqdonut(opqdonut@pseudo.fixme.fi) (*.net *.split)
2020-10-01 20:00:57 +0200Velpoman(~Velpoman@159.65.76.124) (*.net *.split)
2020-10-01 20:00:57 +0200dixie(~dixie@real.wilbury.sk) (*.net *.split)
2020-10-01 20:00:57 +0200uwap(~uwap@genja.uwap.name) (*.net *.split)
2020-10-01 20:01:52 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6) (Remote host closed the connection)
2020-10-01 20:02:18 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6)
2020-10-01 20:03:02 +0200ethercrow[m](ethercrowm@gateway/shell/matrix.org/x-mipuhniwhozkskxo)
2020-10-01 20:04:34 +0200argent0(~argent0@168.227.96.2) (Ping timeout: 260 seconds)
2020-10-01 20:05:54 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds)
2020-10-01 20:06:07 +0200thir(~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2020-10-01 20:07:07 +0200HaskellYogi(~vivekrama@49.207.206.176) (Remote host closed the connection)
2020-10-01 20:08:15 +0200olligobber(olligobber@gateway/vpn/privateinternetaccess/olligobber)
2020-10-01 20:08:53 +0200borne(~fritjof@200116b864e6dd0007933c164a08810c.dip.versatel-1u1.de)
2020-10-01 20:10:13 +0200hiroaki(~hiroaki@2a02:908:4b18:e20::a362)
2020-10-01 20:12:17 +0200geekosaur(42d52102@66.213.33.2)
2020-10-01 20:12:25 +0200HaskellYogi(~vivekrama@49.207.206.176)
2020-10-01 20:12:38 +0200bobey88(~bobey@72-172-218-188.fidnet.com) (Quit: The Lounge - https://thelounge.chat)
2020-10-01 20:13:28 +0200hackageeq 4.2.1 - Leibnizian equality https://hackage.haskell.org/package/eq-4.2.1 (ryanglscott)
2020-10-01 20:15:26 +0200SolarAquarion(SolarAquar@gateway/shell/panicbnc/x-oeudzyiyixftjdbl)
2020-10-01 20:16:19 +0200vivan_(b5aa4b5c@181.170.75.92)
2020-10-01 20:16:30 +0200petersen(~petersen@redhat/juhp)
2020-10-01 20:17:16 +0200HaskellYogi(~vivekrama@49.207.206.176) (Ping timeout: 258 seconds)
2020-10-01 20:18:14 +0200jneira(501e65ce@gateway/web/cgi-irc/kiwiirc.com/ip.80.30.101.206)
2020-10-01 20:20:15 +0200bobey88(~bobey@72-172-218-188.fidnet.com)
2020-10-01 20:23:01 +0200mananamenos(~mananamen@84.122.202.215.dyn.user.ono.com) (Ping timeout: 264 seconds)
2020-10-01 20:25:40 +0200 <maerwald> how to tell brittany not to newline after a `let` and before the identifier? That looks pretty weird
2020-10-01 20:26:27 +0200hackagecriterion 1.5.7.0 - Robust, reliable performance measurement and analysis https://hackage.haskell.org/package/criterion-1.5.7.0 (ryanglscott)
2020-10-01 20:26:34 +0200 <maerwald> https://paste.tomsmeding.com/XoIwZzf1
2020-10-01 20:29:30 +0200acidjnk_new(~acidjnk@p200300d0c72378548d78178f4051abec.dip0.t-ipconnect.de)
2020-10-01 20:29:32 +0200NieDzejkob(~quassel@188.123.215.55) (Ping timeout: 258 seconds)
2020-10-01 20:31:22 +0200vicfred(~vicfred@unaffiliated/vicfred) (Quit: Leaving)
2020-10-01 20:36:30 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-10-01 20:36:33 +0200NieDzejkob(~quassel@188.123.215.55)
2020-10-01 20:40:31 +0200vicfred(~vicfred@unaffiliated/vicfred)
2020-10-01 20:40:37 +0200conal(~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
2020-10-01 20:41:18 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6) (Quit: Quit.)
2020-10-01 20:41:55 +0200conal(~conal@64.71.133.70)
2020-10-01 20:42:50 +0200ggole(~ggole@2001:8003:8119:7200:c589:9da3:81e6:1296) (Quit: Leaving)
2020-10-01 20:43:57 +0200motersen(~user@2001-4dd5-8af-0-fa3b-a793-4066-cc15.ipv6dyn.netcologne.de)
2020-10-01 20:44:40 +0200conal(~conal@64.71.133.70) (Client Quit)
2020-10-01 20:47:25 +0200o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt)
2020-10-01 20:47:25 +0200thc202(~thc202@unaffiliated/thc202)
2020-10-01 20:47:25 +0200whiteline(~whiteline@unaffiliated/whiteline)
2020-10-01 20:47:25 +0200thonkpod(~thonkpod@2001:19f0:ac01:b46:5400:1ff:fec7:d73d)
2020-10-01 20:47:25 +0200entel(uid256215@botters/entel)
2020-10-01 20:47:25 +0200eacameron(sid256985@gateway/web/irccloud.com/x-kpwlorbysgtnxhte)
2020-10-01 20:47:25 +0200liff(liff@kapsi.fi)
2020-10-01 20:47:25 +0200PotatoHatsue(berbermanp@gateway/shell/matrix.org/x-lcuapfbpkatzswxh)
2020-10-01 20:47:25 +0200glowcoil(sid3405@gateway/web/irccloud.com/x-thsriowqmdkgjing)
2020-10-01 20:47:25 +0200PoliticsII____(sid193551@gateway/web/irccloud.com/x-nvfqluymqsvazvtl)
2020-10-01 20:47:25 +0200angerman(sid209936@gateway/web/irccloud.com/x-kbnupcpypxlxxlnc)
2020-10-01 20:47:25 +0200dequbed(~dequbed@yanduxian.paranoidlabs.org)
2020-10-01 20:47:25 +0200koankeeper(sid216950@gateway/web/irccloud.com/x-zrkqcymdfzqfjfqv)
2020-10-01 20:47:25 +0200teehemkay(sid14792@gateway/web/irccloud.com/x-xjwybgbmcxfolzwh)
2020-10-01 20:47:25 +0200simony(sid226116@gateway/web/irccloud.com/x-ebcflagagczxghjj)
2020-10-01 20:47:25 +0200miklcct(quasselcor@2001:19f0:7001:5ad:5400:2ff:feb6:50d7)
2020-10-01 20:47:25 +0200mpickering(sid78412@gateway/web/irccloud.com/x-ugziboqyrxfitrmv)
2020-10-01 20:47:25 +0200benwr__(sid372383@gateway/web/irccloud.com/x-ehohzcwkyjbzpbwl)
2020-10-01 20:47:25 +0200nlofaro(sid258233@gateway/web/irccloud.com/x-etxlydyigzmwkiap)
2020-10-01 20:47:25 +0200unlink__(~unlink2@p200300ebcf25bd0068eb9d9c94da2a17.dip0.t-ipconnect.de)
2020-10-01 20:47:25 +0200srid(sridmatrix@gateway/shell/matrix.org/x-zqttickmrfyduksr)
2020-10-01 20:47:25 +0200michaelpj1(michaelpjm@gateway/shell/matrix.org/x-bmrqrkqdmdnabvkc)
2020-10-01 20:47:25 +0200johnnyboy[m](gifumatrix@gateway/shell/matrix.org/x-xczqbcixpmjhwvre)
2020-10-01 20:47:25 +0200chreekat[m](chreekatma@gateway/shell/matrix.org/x-umxlgtkybcwevjvb)
2020-10-01 20:47:25 +0200lambdaclan(lambdaclan@gateway/shell/matrix.org/x-rosqvrjyauthsfym)
2020-10-01 20:47:25 +0200io_r_us[m](commandlin@gateway/shell/matrix.org/x-kjrwesnzoyenqgzx)
2020-10-01 20:47:25 +0200barrucadu(~barrucadu@fsf/member/barrucadu)
2020-10-01 20:47:25 +0200bcoppens_(~bartcopp@vpn2.bartcoppens.be)
2020-10-01 20:47:25 +0200noteness(~noteness@unaffiliated/nessessary129)
2020-10-01 20:47:25 +0200opqdonut(opqdonut@pseudo.fixme.fi)
2020-10-01 20:47:25 +0200Velpoman(~Velpoman@159.65.76.124)
2020-10-01 20:47:25 +0200dixie(~dixie@real.wilbury.sk)
2020-10-01 20:47:25 +0200uwap(~uwap@genja.uwap.name)
2020-10-01 20:47:26 +0200 <fendor> maerwald, :O I like that format.
2020-10-01 20:47:52 +0200Tops22(~Tobias@dyndsl-095-033-090-070.ewe-ip-backbone.de) (Read error: Connection reset by peer)
2020-10-01 20:48:26 +0200machinedgod(~machinedg@45.78.189.122) (Ping timeout: 260 seconds)
2020-10-01 20:49:01 +0200 <maerwald> I don't :>
2020-10-01 20:49:25 +0200 <maerwald> two many newlines, and especially after such identifiers
2020-10-01 20:49:39 +0200nnst^(nnst@ip98-184-89-2.mc.at.cox.net) ()
2020-10-01 20:50:01 +0200 <ski> maerwald : oh. it doesn't even dedent after the `let' ..
2020-10-01 20:50:07 +0200skiwas thinking
2020-10-01 20:50:08 +0200bobey88(~bobey@72-172-218-188.fidnet.com) (Quit: The Lounge - https://thelounge.chat)
2020-10-01 20:50:10 +0200 <ski> foo x y z = let
2020-10-01 20:50:20 +0200 <ski> blah t = ...
2020-10-01 20:50:23 +0200 <ski> in ...
2020-10-01 20:50:26 +0200argent0(~argent0@168.227.96.2)
2020-10-01 20:50:30 +0200 <ski> (or something along those lines)
2020-10-01 20:50:47 +0200 <maerwald> there's also an error with indenting the second long list
2020-10-01 20:50:57 +0200tsrt^(tsrt@ip98-184-89-2.mc.at.cox.net)
2020-10-01 20:51:08 +0200 <motte> what's a good alternative to the (seemingly dead) pwstore-fast library?
2020-10-01 20:51:32 +0200 <ski> you mean in the definition of `pkgSpecificPrint' ?
2020-10-01 20:51:42 +0200 <maerwald> yeah
2020-10-01 20:52:00 +0200conal(~conal@64.71.133.70)
2020-10-01 20:56:01 +0200 <maerwald> I think, in the end you have to write your own formatter
2020-10-01 20:56:25 +0200 <maerwald> should just take half a year for an MVP
2020-10-01 20:56:40 +0200 <yushyin> xkcd standards? :)
2020-10-01 20:56:46 +0200 <ski> looks some `Maybe' matching could be replaced with a call to `maybe'
2020-10-01 20:57:11 +0200 <maerwald> ski: I prefer pattern matching
2020-10-01 20:57:25 +0200 <maerwald> unless I'm composing
2020-10-01 20:57:40 +0200 <ski> i'd at least put the `Nothing' branches before the `Just' ones
2020-10-01 20:57:48 +0200 <ski> (since they're shorter)
2020-10-01 20:57:49 +0200 <maerwald> I don't want :)
2020-10-01 20:57:55 +0200bobey88(~bobey@72-172-218-188.fidnet.com)
2020-10-01 20:58:28 +0200 <ski> you do as you want :)
2020-10-01 20:58:57 +0200hackagemicrolens-th 0.4.3.6 - Automatic generation of record lenses for microlens https://hackage.haskell.org/package/microlens-th-0.4.3.6 (Artyom)
2020-10-01 20:59:09 +0200 <maerwald> ski: (btw, that's not "operational semantics" preserving)
2020-10-01 20:59:23 +0200voyons_calisse(~dan@107-190-41-58.cpe.teksavvy.com) (Read error: Connection reset by peer)
2020-10-01 20:59:25 +0200 <ski> hm ?
2020-10-01 20:59:27 +0200mav1(~mav@83.135.139.36)
2020-10-01 20:59:38 +0200 <maerwald> reordering pattern matches
2020-10-01 20:59:53 +0200 <ski> they're disjoint, here
2020-10-01 20:59:55 +0200GyroW_(~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie)
2020-10-01 20:59:57 +0200 <maerwald> yes
2020-10-01 21:00:07 +0200 <ski> so reordering should be fine
2020-10-01 21:00:08 +0200voyons_calisse(~dan@107-190-41-58.cpe.teksavvy.com)
2020-10-01 21:00:13 +0200 <maerwald> in this case yeah
2020-10-01 21:00:53 +0200 <ski> (i wasn't suggesting doing it generally .. in some cases, i'd prefer having `Just' before `Nothing' :)
2020-10-01 21:01:13 +0200 <maerwald> but it was rather referring to evaluation order
2020-10-01 21:01:17 +0200GyroW(~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
2020-10-01 21:01:17 +0200GyroW(~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
2020-10-01 21:01:17 +0200GyroW(~GyroW@unaffiliated/gyrow)
2020-10-01 21:01:25 +0200Guest18(567e8866@gateway/web/cgi-irc/kiwiirc.com/ip.86.126.136.102) (Quit: Connection closed)
2020-10-01 21:01:28 +0200macrover(~macrover@ip70-189-231-35.lv.lv.cox.net) (Remote host closed the connection)
2020-10-01 21:01:48 +0200 <maerwald> I'm just making conversation, bc it's so quiet here
2020-10-01 21:02:02 +0200 <ski> you're still forcing the same thing, whether you're conceptually first matching with `Nothing', and then `Just x', or else the other way around
2020-10-01 21:02:23 +0200xelxebar(~xelxebar@gateway/tor-sasl/xelxebar) (Remote host closed the connection)
2020-10-01 21:02:24 +0200 <maerwald> right, but you could add a guard
2020-10-01 21:02:48 +0200xelxebar(~xelxebar@gateway/tor-sasl/xelxebar)
2020-10-01 21:03:24 +0200xcmw(~textual@dyn-72-33-0-89.uwnet.wisc.edu) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-01 21:03:25 +0200 <ski> yes, of course. then one probably couldn't reorder
2020-10-01 21:04:28 +0200 <maerwald> also, I'm starting to dislike the "one element per line" list formatting
2020-10-01 21:04:35 +0200 <maerwald> It's so much noise
2020-10-01 21:04:47 +0200ubert(~Thunderbi@178.115.129.189.wireless.dyn.drei.com) (Ping timeout: 240 seconds)
2020-10-01 21:04:58 +0200 <ski> pack related ones on the same line ?
2020-10-01 21:05:07 +0200 <maerwald> but if you care about minimal diffs, it's maybe better
2020-10-01 21:05:15 +0200 <ski> like, ending with the one ending with `\n'
2020-10-01 21:05:49 +0200 <maerwald> that said, britneys excessive newlining might actually play well with that property of minimal diffs
2020-10-01 21:06:04 +0200 <ski> (moving those spaces to the text starting the next line, i suppose)
2020-10-01 21:08:40 +0200 <maerwald> we need AI for formatting
2020-10-01 21:08:41 +0200 <ski> oh, you already have a `maybe' in there. the formatting of the call looks weird :)
2020-10-01 21:09:05 +0200isovector1(~isovector@172.103.216.166.cable.tpia.cipherkey.com)
2020-10-01 21:09:20 +0200 <maerwald> yeah, hence pattern matching is much clearer
2020-10-01 21:09:33 +0200 <ski> i guess it's doing a `maybeToList' and a `map'
2020-10-01 21:10:12 +0200 <maerwald> and in fact... I'd say I prefer a pattern match over composition (as long as nesting level is 1)
2020-10-01 21:10:33 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 258 seconds)
2020-10-01 21:10:56 +0200frdg(47b88ff9@pool-71-184-143-249.bstnma.fios.verizon.net)
2020-10-01 21:11:26 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-10-01 21:12:08 +0200 <frdg> does anyone happen to know how to run code when a session dies with yesod? For example when the session dies I want to print "hello".
2020-10-01 21:12:40 +0200conal(~conal@64.71.133.70) (Read error: Connection reset by peer)
2020-10-01 21:14:04 +0200bobey88(~bobey@72-172-218-188.fidnet.com) (Quit: The Lounge - https://thelounge.chat)
2020-10-01 21:15:05 +0200machinedgod(~machinedg@d67-193-126-196.home3.cgocable.net)
2020-10-01 21:15:34 +0200kuribas(~user@ptr-25vy0i78se1i01mm5ri.18120a2.ip6.access.telenet.be) (Quit: ERC (IRC client for Emacs 26.3))
2020-10-01 21:16:28 +0200hackagekind-generics-th 0.2.2.1 - Template Haskell support for generating `GenericK` instances https://hackage.haskell.org/package/kind-generics-th-0.2.2.1 (AlejandroSerrano)
2020-10-01 21:18:12 +0200conal(~conal@64.71.133.70)
2020-10-01 21:18:41 +0200kritzefitz(~kritzefit@212.86.56.80)
2020-10-01 21:20:32 +0200nwoob(~apple@unaffiliated/nwoob)
2020-10-01 21:20:54 +0200Quarl(~Quarl@94.191.138.174.mobile.tre.se) (Read error: Connection reset by peer)
2020-10-01 21:20:57 +0200cosimone(~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6)
2020-10-01 21:22:10 +0200 <nwoob> Haskell type system is more expressive.. What does this actually mean? How can I learn more about what is expressive type system and how haskell type system is more expressive then say for example typescript
2020-10-01 21:22:26 +0200bobey88(~bobey@72-172-218-188.fidnet.com)
2020-10-01 21:22:31 +0200oab(~oab@214.92-220-221.customer.lyse.net)
2020-10-01 21:25:38 +0200xcmw(~textual@dyn-72-33-0-89.uwnet.wisc.edu)
2020-10-01 21:26:50 +0200aarvar(~foewfoiew@50.35.43.33)
2020-10-01 21:26:53 +0200amiri(~amiri@cpe-76-91-154-9.socal.res.rr.com) (Remote host closed the connection)
2020-10-01 21:26:55 +0200falafel(~falafel@2605:e000:1527:d491:a806:37fa:6971:2798)
2020-10-01 21:27:47 +0200mahene(~mahene@2a02:8109:86c0:8d68:5400:2bfd:d746:732c)
2020-10-01 21:27:49 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 264 seconds)
2020-10-01 21:28:49 +0200amiri(~amiri@cpe-76-91-154-9.socal.res.rr.com)
2020-10-01 21:29:58 +0200todda7(~torstein@athedsl-4367507.home.otenet.gr) (Ping timeout: 260 seconds)
2020-10-01 21:31:25 +0200mav1(~mav@83.135.139.36) (Ping timeout: 264 seconds)
2020-10-01 21:31:28 +0200thir(~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de)
2020-10-01 21:32:05 +0200steve[m]2(stevetrout@gateway/shell/matrix.org/x-pdxujagzftttmnst)
2020-10-01 21:33:49 +0200alp(~alp@2a01:e0a:58b:4920:55a8:f0a:ee5d:168a) (Ping timeout: 272 seconds)
2020-10-01 21:36:22 +0200falafel(~falafel@2605:e000:1527:d491:a806:37fa:6971:2798) (Ping timeout: 260 seconds)
2020-10-01 21:36:41 +0200oab(~oab@214.92-220-221.customer.lyse.net) (Quit: oab)
2020-10-01 21:39:09 +0200tbreslein(~tbreslein@2a02:8108:140:44f8::901) (Remote host closed the connection)
2020-10-01 21:39:12 +0200acidjnk_new(~acidjnk@p200300d0c72378548d78178f4051abec.dip0.t-ipconnect.de) (Read error: Connection reset by peer)
2020-10-01 21:40:13 +0200vivan_(b5aa4b5c@181.170.75.92) (Remote host closed the connection)
2020-10-01 21:40:32 +0200 <frdg> is left recursion relevant in Haskell?
2020-10-01 21:40:54 +0200p-core(~Thunderbi@2001:718:1e03:5128:2ab7:7f35:48a1:8515)
2020-10-01 21:45:17 +0200chaosmasttter(~chaosmast@p200300c4a711ea01117f5b872fbc48e3.dip0.t-ipconnect.de)
2020-10-01 21:45:26 +0200bobey88(~bobey@72-172-218-188.fidnet.com) (Quit: The Lounge - https://thelounge.chat)
2020-10-01 21:46:42 +0200geekosaur(42d52102@66.213.33.2) (Remote host closed the connection)
2020-10-01 21:48:53 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds)
2020-10-01 21:51:48 +0200wroathe(~wroathe@c-73-24-27-54.hsd1.mn.comcast.net) (Ping timeout: 260 seconds)
2020-10-01 21:53:10 +0200frdg(47b88ff9@pool-71-184-143-249.bstnma.fios.verizon.net) (Remote host closed the connection)
2020-10-01 21:54:41 +0200shatriff(~vitaliish@haunt.prize.volia.net)
2020-10-01 21:55:53 +0200 <ski> @tell frdg "is left recursion relevant in Haskell?" -- can be, for parsing. (e.g. recursive-descent top-down parsing, often using parsing combinator libraries. or bottom-up `yacc'-like parser generators like `happy')
2020-10-01 21:55:53 +0200 <lambdabot> Consider it noted.
2020-10-01 21:58:28 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-10-01 22:00:21 +0200takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2020-10-01 22:00:35 +0200ryansmccoy(~ryansmcco@193.37.254.27) (Ping timeout: 240 seconds)
2020-10-01 22:00:47 +0200ransom(~c4264035@c-73-243-2-10.hsd1.co.comcast.net) (Quit: Textual IRC Client: www.textualapp.com)
2020-10-01 22:01:32 +0200ryansmccoy(~ryansmcco@156.96.151.132)
2020-10-01 22:01:56 +0200isovector1(~isovector@172.103.216.166.cable.tpia.cipherkey.com) (Quit: Leaving)
2020-10-01 22:02:37 +0200madjestic(~madjestic@86-88-72-244.fixed.kpn.net) (Ping timeout: 256 seconds)
2020-10-01 22:06:31 +0200 <Squarism> Is there any one ruling test framework for Haskell? Got the impression its both HSpec and HUnit, but no obvious winner?
2020-10-01 22:07:32 +0200 <koz_> Squarism: I wouldn't recommend HSpec. Tasty is much better.
2020-10-01 22:07:40 +0200 <koz_> Also, HSpec and HUnit aren't directly comparable.
2020-10-01 22:07:44 +0200chappi(~swaroop@157.49.85.251) (Remote host closed the connection)
2020-10-01 22:07:50 +0200 <ski> @tell frdg it could also be used for breadth-first (think nondeterministic) traversal of infinite trees, like `bin = 1 : [n | m <- bin,n <- [2 * n,2 * n + 1]]' or `calkinWilf = 1%1 : [y | x <- calkinWilf,y <- [1 / (1 + 1 / x),1 + x]]' (cf. Prolog `bin(1). bin(N) :- bin(M),( N is 2 * M ; N is 2 * M + 1 ).')
2020-10-01 22:07:50 +0200 <lambdabot> Consider it noted.
2020-10-01 22:07:55 +0200 <maerwald> koz_: better how? I tried both and they can all do the same
2020-10-01 22:07:56 +0200 <koz_> HSpec does both unit and property testing; HUnit is only unit testing.
2020-10-01 22:08:06 +0200 <koz_> maerwald: Its docs are garbage,
2020-10-01 22:08:13 +0200 <koz_> Like, honestly.
2020-10-01 22:08:15 +0200 <maerwald> it's like cabal vs stack I think
2020-10-01 22:08:29 +0200 <koz_> maerwald: So... same exact issue rofl?
2020-10-01 22:08:30 +0200 <Cale> I'll often just use QuickCheck on its own
2020-10-01 22:08:42 +0200 <koz_> But yeah, my experience with HSpec has been rather negative and I would not recommend its use.
2020-10-01 22:09:06 +0200 <maerwald> It's all fine
2020-10-01 22:09:14 +0200 <maerwald> the differences are minor
2020-10-01 22:09:25 +0200 <maerwald> the smaller the differences, the stronger the opinions :p
2020-10-01 22:09:27 +0200 <koz_> maerwald: Sure, and in my opinion they're not. YMMV.
2020-10-01 22:11:40 +0200 <nwoob> was my question not good?
2020-10-01 22:11:44 +0200coot(~coot@37.30.49.34.nat.umts.dynamic.t-mobile.pl)
2020-10-01 22:11:58 +0200 <Squarism> I used HUnit quite a bit and it did what it was supposed to do. But there it hasnt been updated in 3 years. Would be fun to use something that has a bit of momentum to it
2020-10-01 22:11:59 +0200 <koz_> nwoob: 'Expressive' is a vague term.
2020-10-01 22:12:12 +0200 <Squarism> -it*
2020-10-01 22:12:30 +0200 <maerwald> nwoob: typescript is more expressive in some senses, so not sure :p
2020-10-01 22:12:53 +0200wanaks[m](wanaksmatr@gateway/shell/matrix.org/x-ypunfwqxglzxjffl) ("User left")
2020-10-01 22:12:58 +0200 <maerwald> (actual structural typing is very expressive)
2020-10-01 22:13:21 +0200 <dolio> Many HUnit doesn't need any more work.
2020-10-01 22:13:28 +0200madjestic(~madjestic@86.88.72.244)
2020-10-01 22:13:46 +0200dhil(~dhil@11.29.39.217.dyn.plus.net) (Ping timeout: 246 seconds)
2020-10-01 22:14:11 +0200 <nwoob> maerwald: If I may ask, do you think typescript is beneficial over JS because of types
2020-10-01 22:14:14 +0200 <ski> nwoob : dunno TypeScript's type system, in what ways it differs ..
2020-10-01 22:14:18 +0200 <maerwald> nwoob: yes
2020-10-01 22:14:37 +0200 <Cale> nwoob: "Expressive" means something like the ability to translate mathematical properties that your program may or may not satisfy into types that the compiler will check, with some element of having those types not be a pain to actually write or use mixed in as well.
2020-10-01 22:14:40 +0200 <maerwald> it has a few holes though
2020-10-01 22:15:24 +0200 <maralorn> nwoob: I think one definition of an expressive type system would be how many kinds of Bugs you can prevent by having specific enough types.
2020-10-01 22:15:49 +0200 <nwoob> and how do you quantify that?
2020-10-01 22:16:51 +0200 <maralorn> nwoob: You don‘t. I think it's subjective. But in practice examples are very clear.
2020-10-01 22:16:58 +0200 <maerwald> hmm, haskell can't really prohibit concurrency bugs, there's that... I think you can only quantify it very generally
2020-10-01 22:17:01 +0200 <maerwald> not deeply
2020-10-01 22:17:24 +0200ericsagnes(~ericsagne@2405:6580:0:5100:4135:276:e32f:4d13) (Ping timeout: 244 seconds)
2020-10-01 22:17:48 +0200 <Cale> Some of them it kind of can, sort of
2020-10-01 22:18:00 +0200 <maerwald> Cale: you can in any language if you write a careful DSL
2020-10-01 22:18:09 +0200 <maerwald> but the language itself doesn't take care of it at all
2020-10-01 22:18:09 +0200 <Cale> Just the fact that everything is by default immutable is a great help
2020-10-01 22:18:20 +0200 <Cale> and the fact that computations can have limited effects
2020-10-01 22:18:26 +0200ClaudiusMaximus(~claude@unaffiliated/claudiusmaximus) (Quit: ...zzzZZZ)
2020-10-01 22:18:34 +0200 <maerwald> you can mess up MVar locking, you can get races with IORef
2020-10-01 22:18:37 +0200 <maerwald> and many other things
2020-10-01 22:18:51 +0200 <Cale> e.g. we have things like STM, and the properties that allow an STM transaction to be rolled back can basically be enforced by the types
2020-10-01 22:19:15 +0200Lycurgus(~niemand@98.4.96.130) (Quit: Exeunt)
2020-10-01 22:19:52 +0200 <Cale> But yeah, while you can get into all the usual kinds of trouble with modifying IORefs from multiple threads, the fact that not everything is implicitly a pile of IORefs helps a bunch
2020-10-01 22:20:03 +0200 <maralorn> You could also store all your variables in String and "fromJust . read" them whenever you want to do something with them. The point is not that Haskell programs are safe, but that it helps you to write safe programs …
2020-10-01 22:20:16 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-10-01 22:20:21 +0200 <maerwald> maralorn: safe?
2020-10-01 22:20:49 +0200 <maerwald> if you mean "doesn't crash", then haskell is actually not that good at it due to lack of checked exceptions
2020-10-01 22:20:53 +0200 <maralorn> maerwald: safer?
2020-10-01 22:21:07 +0200 <maerwald> if you mean "secure", then definitely no :p
2020-10-01 22:21:51 +0200son0p(~son0p@181.136.122.143) (Ping timeout: 258 seconds)
2020-10-01 22:21:57 +0200 <maralorn> Yeah, the lack of checked exceptions is a bit sad.
2020-10-01 22:22:12 +0200 <Cale> I don't know what checked exceptions would actually look like
2020-10-01 22:22:31 +0200 <Cale> How would they differ substantially from the usual ways that things can fail?
2020-10-01 22:22:40 +0200 <Cale> e.g. by returning an Either result
2020-10-01 22:22:41 +0200 <maerwald> Cale: Does that even work reasonably without a vm?
2020-10-01 22:23:11 +0200 <maerwald> I'm wondering about cross platform too
2020-10-01 22:23:40 +0200son0p(~son0p@181.136.122.143)
2020-10-01 22:23:47 +0200 <Cale> If your IO action produces an Either Something, then the fact that it can fail is encoded in its type, along with the type of potential failures.
2020-10-01 22:24:01 +0200 <maralorn> I think this kind of discussion is also a bit sad.
2020-10-01 22:24:06 +0200 <maerwald> Cale: checked exceptions don't have to be in the type at all
2020-10-01 22:24:24 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-10-01 22:24:33 +0200 <Cale> Why shouldn't they be?
2020-10-01 22:24:34 +0200 <maralorn> It feels like the overall point here is, that there is no such thing as safe programing (so let's not even try).
2020-10-01 22:24:42 +0200 <maerwald> Cale: why should they be?
2020-10-01 22:24:48 +0200 <maerwald> It clutters API
2020-10-01 22:25:18 +0200 <Cale> Because types are the properties of programs which we expect the compiler to check statically (and which the program itself serves as a proof)
2020-10-01 22:25:48 +0200 <maerwald> maralorn: well, there's "memory safe" and I don't know how good haskell performs here
2020-10-01 22:26:10 +0200 <maerwald> Cale: exceptions in java are also statically checked
2020-10-01 22:26:15 +0200 <dolio> What is 'checked' in the exceptions if they're not in something like the types?
2020-10-01 22:26:20 +0200 <maralorn> maerwald: I have had more rust than haskell programs segfault in the last years …
2020-10-01 22:26:29 +0200 <maerwald> not everything that's static needs to be a *type*
2020-10-01 22:26:46 +0200 <maerwald> maralorn: segfault or panic?
2020-10-01 22:26:47 +0200 <Cale> You could introduce what are effectively more overlapping type systems just for exceptions or just for other sorts of properties (cough LiquidHaskell), but it seems like it would be preferable to just have all that information in one coherent system.
2020-10-01 22:26:49 +0200 <maerwald> huge difference
2020-10-01 22:26:54 +0200 <maerwald> panic is memory safe
2020-10-01 22:27:05 +0200 <maralorn> maerwald: Actual segfaults.
2020-10-01 22:27:17 +0200 <maralorn> It had to do with ffi, so I am not being fair here …
2020-10-01 22:27:31 +0200 <maerwald> Cale: I disagree on that. I think that's one of the reasons of the (unnecessary) complexity of haskell...
2020-10-01 22:27:31 +0200alp(~alp@2a01:e0a:58b:4920:550:ea71:7853:65d0)
2020-10-01 22:27:39 +0200 <maerwald> that we try to shoehorn everything into types
2020-10-01 22:27:56 +0200 <maerwald> (because they're already expressive)
2020-10-01 22:28:10 +0200 <maerwald> (so it's just that extra mile...)
2020-10-01 22:28:17 +0200 <maerwald> (and then next year again)
2020-10-01 22:28:54 +0200coot(~coot@37.30.49.34.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
2020-10-01 22:28:57 +0200 <maerwald> maralorn: ffi is unsafe :p
2020-10-01 22:29:09 +0200 <maerwald> you literally put unsafe around it
2020-10-01 22:29:17 +0200mav1(~mav@83.135.139.36)
2020-10-01 22:29:23 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2020-10-01 22:29:30 +0200 <maerwald> rust doesn't pretend to not crash
2020-10-01 22:29:34 +0200 <maerwald> just crash gently
2020-10-01 22:30:09 +0200 <maralorn> maerwald: No, I didn‘t. I wrote a pure rust program but the library I used was buggy.
2020-10-01 22:30:12 +0200 <ski> Mercury has static modes, insts, determinisms (in addition to types)
2020-10-01 22:30:30 +0200 <ski> (uniqueness is done with insts, not with types as is the case in Clean)
2020-10-01 22:30:32 +0200 <maerwald> maralorn: ah yeah... you never know. But you have the same problem in haskell with ffi
2020-10-01 22:30:50 +0200 <maralorn> Yes
2020-10-01 22:30:54 +0200cr3(~cr3@192-222-143-195.qc.cable.ebox.net) (Quit: leaving)
2020-10-01 22:31:04 +0200 <maralorn> I think my biggest issue is that there is a class of concrete runtime errors in Haskell that the dev is not forced to acknowledge up front.
2020-10-01 22:32:18 +0200 <Cale> Yeah, part of the problem is just particular libraries that overuse that system of IO exceptions for things that the user is more likely than not going to want to handle
2020-10-01 22:32:42 +0200dhil(~dhil@11.29.39.217.dyn.plus.net)
2020-10-01 22:32:59 +0200 <Cale> Exceptions are good for things which will rarely want to be handled in any way that's much more graceful than stopping the program or restarting some part of it.
2020-10-01 22:33:04 +0200 <maerwald> it's fine for low-level libs (where it's hard to guess, what someone wants to handle), but yeah
2020-10-01 22:33:47 +0200thir(~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2020-10-01 22:33:49 +0200 <Cale> Most of the time, you can just return a value that represents the failure explicitly, and that will both make the user aware of the possibility, and pretty much ensure that it gets handled.
2020-10-01 22:34:23 +0200 <maerwald> we had the discussion once why haskell didn't to the rust way of not having exceptions at all (just panic)
2020-10-01 22:34:27 +0200 <maralorn> Then always someone comes around and tells me that there are exceptions (notably oom or async stuff) you can‘t force the dev to handle.
2020-10-01 22:34:35 +0200 <maerwald> I don't remember the conclusion, it was a convoluted discussion
2020-10-01 22:35:18 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 260 seconds)
2020-10-01 22:36:17 +0200 <Cale> Or of course, there are a wide range of things you can do with special monads
2020-10-01 22:37:05 +0200 <Cale> I've never wished that Haskell had more ways to express failure... there are almost too many already :)
2020-10-01 22:37:18 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 260 seconds)
2020-10-01 22:37:20 +0200 <maralorn> Yeah, that's true.
2020-10-01 22:38:01 +0200 <maerwald> it's just Maybe, Either, These, ExceptT, MonadThrow, MonadFail, open variants, IO exceptions (async and sync), ...
2020-10-01 22:38:21 +0200shatriff(~vitaliish@haunt.prize.volia.net) (Remote host closed the connection)
2020-10-01 22:38:28 +0200 <maralorn> MonadPlus
2020-10-01 22:38:39 +0200 <maerwald> MonadErrorFactory
2020-10-01 22:39:02 +0200 <maralorn> And of course "error" …
2020-10-01 22:39:33 +0200 <Cale> (and throw)
2020-10-01 22:39:36 +0200 <maralorn> @hoogle MonadErrorFactory
2020-10-01 22:39:36 +0200 <lambdabot> No results found
2020-10-01 22:39:42 +0200 <maerwald> :D
2020-10-01 22:39:59 +0200 <maerwald> I would have killed myself if that had returned any results
2020-10-01 22:40:36 +0200ski. o O ( restarts <https://mumble.net/~campbell/proposals/restart.text>,<http://www.gnu.org/software/mit-scheme/documentation/stable/mit-scheme-ref/Restarts.html>,<https://lisper.in/restarts>,<http://www.gigamonkeys.com/book/beyond-exception-handling-conditions-and-restarts.html>,<https://en.wikibooks.org/wiki/Common_Lisp/Advanced_topics/Condition_System> )
2020-10-01 22:41:24 +0200 <maerwald> I guess the only thing we don't do in haskell is signal failure with Int
2020-10-01 22:41:35 +0200 <maerwald> everything else we got covered
2020-10-01 22:42:57 +0200acidjnk_new(~acidjnk@p200300d0c723788040fc08bec5cc5c11.dip0.t-ipconnect.de)
2020-10-01 22:44:17 +0200xff0x(~fox@2001:1a81:5220:1600:f180:f194:ac6e:4ac8) (Ping timeout: 260 seconds)
2020-10-01 22:44:37 +0200ericsagnes(~ericsagne@2405:6580:0:5100:4135:276:e32f:4d13)
2020-10-01 22:44:54 +0200xff0x(~fox@2001:1a81:5220:1600:3ce1:e817:dda8:9f17)
2020-10-01 22:44:57 +0200 <koz_> @info asum
2020-10-01 22:44:58 +0200 <lambdabot> asum
2020-10-01 22:45:02 +0200 <koz_> @hoogle asum
2020-10-01 22:45:03 +0200 <lambdabot> Data.Foldable asum :: (Foldable t, Alternative f) => t (f a) -> f a
2020-10-01 22:45:03 +0200 <lambdabot> Data.Conduit.Combinators asum :: (Monad m, Alternative f) => ConduitT (f a) o m (f a)
2020-10-01 22:45:03 +0200 <lambdabot> Protolude asum :: (Foldable t, Alternative f) => t (f a) -> f a
2020-10-01 22:45:30 +0200mav1(~mav@83.135.139.36) (Ping timeout: 272 seconds)
2020-10-01 22:47:52 +0200 <ski> @. hoogle type (asum .) . fmap
2020-10-01 22:47:55 +0200 <lambdabot> Util altMap :: (Alternative p, Foldable f) => (a -> p b) -> f a -> p b
2020-10-01 22:47:55 +0200 <lambdabot> Relude.Foldable.Fold asumMap :: forall b m f a . (Foldable f, Alternative m) => (a -> m b) -> f a -> m b
2020-10-01 22:47:56 +0200 <lambdabot> Control.Effect.NonDet foldMapA :: (Foldable t, Alternative m) => (a -> m b) -> t a -> m b
2020-10-01 22:49:07 +0200 <koz_> @hoogle ($>)
2020-10-01 22:49:08 +0200 <lambdabot> Data.Functor ($>) :: Functor f => f a -> b -> f b
2020-10-01 22:49:08 +0200 <lambdabot> Data.Functor.Compat ($>) :: Functor f => f a -> b -> f b
2020-10-01 22:49:08 +0200 <lambdabot> Data.Functor.Apply ($>) :: Functor f => f a -> b -> f b
2020-10-01 22:50:06 +0200mmohammadi9812(~mmohammad@188.210.100.86) (Quit: I quit (╯°□°)╯︵ ┻━┻)
2020-10-01 22:50:56 +0200 <koz_> > ['0' .. '2']
2020-10-01 22:50:58 +0200 <lambdabot> "012"
2020-10-01 22:51:37 +0200borne(~fritjof@200116b864e6dd0007933c164a08810c.dip.versatel-1u1.de) (Ping timeout: 260 seconds)
2020-10-01 22:52:31 +0200rprije(~rprije@203.214.95.251)
2020-10-01 22:53:58 +0200hackageb9 3.1.0 - A tool and library for building virtual machine images. https://hackage.haskell.org/package/b9-3.1.0 (SvenHeyll)
2020-10-01 22:54:55 +0200gehmehgeh(~ircuser1@gateway/tor-sasl/gehmehgeh) (Remote host closed the connection)
2020-10-01 22:55:34 +0200day_(~Unknown@unaffiliated/day)
2020-10-01 22:57:26 +0200o1lo01ol_(~o1lo01ol1@bl11-140-216.dsl.telepac.pt)
2020-10-01 22:57:33 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-10-01 22:57:57 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-10-01 22:58:25 +0200day(~Unknown@unaffiliated/day) (Ping timeout: 240 seconds)
2020-10-01 22:58:25 +0200day_day
2020-10-01 22:58:41 +0200kritzefitz(~kritzefit@212.86.56.80) (Remote host closed the connection)
2020-10-01 22:58:53 +0200chaosmasttter(~chaosmast@p200300c4a711ea01117f5b872fbc48e3.dip0.t-ipconnect.de) (Quit: WeeChat 2.9)
2020-10-01 23:00:22 +0200o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt) (Ping timeout: 244 seconds)
2020-10-01 23:03:13 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 264 seconds)
2020-10-01 23:05:08 +0200gehmehgeh(~ircuser1@gateway/tor-sasl/gehmehgeh)
2020-10-01 23:05:25 +0200 <koz_> @hoogle replicateM
2020-10-01 23:05:25 +0200 <lambdabot> Control.Monad replicateM :: Applicative m => Int -> m a -> m [a]
2020-10-01 23:05:25 +0200 <lambdabot> Data.Sequence replicateM :: Applicative m => Int -> m a -> m (Seq a)
2020-10-01 23:05:26 +0200 <lambdabot> Data.Sequence.Internal replicateM :: Applicative m => Int -> m a -> m (Seq a)
2020-10-01 23:05:31 +0200 <koz_> Ah, Control.Monad.
2020-10-01 23:05:38 +0200 <koz_> The odd sock drawer of base.
2020-10-01 23:06:39 +0200nwoob(~apple@unaffiliated/nwoob) ()
2020-10-01 23:08:20 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-10-01 23:09:27 +0200mahene(~mahene@2a02:8109:86c0:8d68:5400:2bfd:d746:732c) (Ping timeout: 272 seconds)
2020-10-01 23:09:58 +0200st8less(~st8less@ip72-204-59-82.fv.ks.cox.net) (Ping timeout: 260 seconds)
2020-10-01 23:10:42 +0200ashbreeze(~mark@72-161-254-200.dyn.centurytel.net)
2020-10-01 23:12:24 +0200andoluca(~andoluca@2800:810:42b:2b4d:7956:556c:5013:7afa)
2020-10-01 23:12:50 +0200borne(~fritjof@200116b864e6dd0007933c164a08810c.dip.versatel-1u1.de)
2020-10-01 23:13:03 +0200andoluca(~andoluca@2800:810:42b:2b4d:7956:556c:5013:7afa) ()
2020-10-01 23:13:07 +0200_ashbreeze_(~mark@72-161-254-200.dyn.centurytel.net) (Ping timeout: 240 seconds)
2020-10-01 23:14:40 +0200knupfer(~Thunderbi@i59F7FFF3.versanet.de)
2020-10-01 23:16:47 +0200argent0(~argent0@168.227.96.2) (Ping timeout: 240 seconds)
2020-10-01 23:21:48 +0200 <dolio> Well, there's also replicateA, I think.
2020-10-01 23:22:04 +0200 <koz_> @info replicateA
2020-10-01 23:22:05 +0200 <lambdabot> replicateA
2020-10-01 23:22:09 +0200 <koz_> @hoogle replicateA
2020-10-01 23:22:10 +0200 <lambdabot> Data.Sequence replicateA :: Applicative f => Int -> f a -> f (Seq a)
2020-10-01 23:22:10 +0200 <lambdabot> Data.Sequence.Internal replicateA :: Applicative f => Int -> f a -> f (Seq a)
2020-10-01 23:22:10 +0200 <lambdabot> RIO.Seq replicateA :: Applicative f => Int -> f a -> f (Seq a)
2020-10-01 23:22:55 +0200 <dolio> Oh, they just generalized the M one? Weird.
2020-10-01 23:23:12 +0200 <koz_> dolio: Yep. It should really be named replicateA.
2020-10-01 23:23:23 +0200 <koz_> But then again, MonadZip should really be ApplicativeZip...
2020-10-01 23:23:40 +0200kupi(uid212005@gateway/web/irccloud.com/x-zotxyxtmvllkllma)
2020-10-01 23:23:44 +0200 <dolio> Well, it predates Applicative.
2020-10-01 23:23:53 +0200 <Uniaika> nah it should be "replicA"
2020-10-01 23:24:28 +0200 <Uniaika> and for a version that returns f (Seq ()), "repliCant"
2020-10-01 23:24:52 +0200 <Rembane> You need that test to see if the function goes psycho and kills you.
2020-10-01 23:25:02 +0200 <Uniaika> :D
2020-10-01 23:25:04 +0200 <koz_> Uniaika: I vote then that it should be 'repliCan'.
2020-10-01 23:25:19 +0200 <Uniaika> koz_: not with that attitude
2020-10-01 23:25:24 +0200 <koz_> Uniaika: :D
2020-10-01 23:25:35 +0200 <koz_> I am, after all, by your own labelling, a 'trash boi'.
2020-10-01 23:26:30 +0200 <Uniaika> oh yes absolutely
2020-10-01 23:26:33 +0200 <Uniaika> :D
2020-10-01 23:26:47 +0200LKoen(~LKoen@81.255.219.130) (Remote host closed the connection)
2020-10-01 23:28:20 +0200 <nshepperd> let don't replicate a = [a] in don't replicate "this"
2020-10-01 23:28:25 +0200 <nshepperd> > let don't replicate a = [a] in don't replicate "this"
2020-10-01 23:28:27 +0200 <lambdabot> ["this"]
2020-10-01 23:28:34 +0200 <nshepperd> perfect
2020-10-01 23:30:38 +0200LKoen(~LKoen@lstlambert-657-1-123-43.w92-154.abo.wanadoo.fr)
2020-10-01 23:31:58 +0200fendor(~fendor@178.115.131.145.wireless.dyn.drei.com) (Remote host closed the connection)
2020-10-01 23:32:34 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2020-10-01 23:34:10 +0200Franciman(~francesco@host-212-171-42-250.pool212171.interbusiness.it)
2020-10-01 23:35:41 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-10-01 23:37:51 +0200andreas303(~andreas@gateway/tor-sasl/andreas303) (Remote host closed the connection)
2020-10-01 23:39:16 +0200argent0(~argent0@168.227.97.5)
2020-10-01 23:39:23 +0200 <jackdk> > let don't m = pure () in don't $ do { putStrLn "hahaha" }
2020-10-01 23:39:25 +0200 <lambdabot> error:
2020-10-01 23:39:26 +0200 <lambdabot> • Ambiguous type variable ‘f0’ arising from a use of ‘show_M453378805249...
2020-10-01 23:39:26 +0200 <lambdabot> prevents the constraint ‘(Show (f0 ()))’ from being solved.
2020-10-01 23:39:52 +0200 <jackdk> ah well. anyway, https://hackage.haskell.org/package/acme-dont exists
2020-10-01 23:40:39 +0200knupfer(~Thunderbi@i59F7FFF3.versanet.de) (Ping timeout: 256 seconds)
2020-10-01 23:40:41 +0200bitmagie(~Thunderbi@200116b806edc300f80afde6120444f9.dip.versatel-1u1.de)
2020-10-01 23:41:08 +0200andreas303(~andreas@gateway/tor-sasl/andreas303)
2020-10-01 23:41:33 +0200todda7(~torstein@athedsl-4367507.home.otenet.gr)
2020-10-01 23:41:48 +0200 <monochrom> If you have an "asType1Of :: m x -> m ()", then you can solve the ambiguous type error by: let don't m = pure () `asType1Of` m in don't (putStrLn "hahah")
2020-10-01 23:42:28 +0200 <monochrom> err, asType1Of :: m a -> m x -> m a; asType1Of = const
2020-10-01 23:42:31 +0200 <beka> anyone happen to know how to use megaparsec's indent parsing w/ try? it seems like if i put the try just around the keywords that indicate the start of a syntactic construct with whitespace sensitivity, then the parser gets stuck because the indentation stuff blocks backtracking, but if i put it around the intendation stuff as well, then the whole thing can fail because of failures internal to the construct that shouldn't be backtrackable
2020-10-01 23:43:11 +0200 <beka> ive considered moving the keyword pard outside the indentation component but i think that will just make it not track the indentation correctly?? i dont know
2020-10-01 23:45:47 +0200todda7(~torstein@athedsl-4367507.home.otenet.gr) (Ping timeout: 240 seconds)
2020-10-01 23:50:08 +0200snakemasterflex(~snakemast@213.100.206.23)
2020-10-01 23:51:53 +0200Amras(~Amras@unaffiliated/amras0000) (Ping timeout: 272 seconds)
2020-10-01 23:52:04 +0200fajro(~fajro@193.56.252.210)
2020-10-01 23:53:10 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-01 23:54:11 +0200xcmw(~textual@dyn-72-33-0-89.uwnet.wisc.edu) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-10-01 23:55:04 +0200LKoen(~LKoen@lstlambert-657-1-123-43.w92-154.abo.wanadoo.fr) (Remote host closed the connection)
2020-10-01 23:55:06 +0200snakemasterflex(~snakemast@213.100.206.23) (Ping timeout: 260 seconds)
2020-10-01 23:59:29 +0200 <hololeap> rofl: https://todo.sr.ht/~jack/acme-dont/2
2020-10-01 23:59:47 +0200 <hololeap> this is cutting edge stuff