2022/10/14

2022-10-14 00:00:11 +0200LukeHoersten(~LukeHoers@user/lukehoersten)
2022-10-14 00:00:24 +0200ubert(~Thunderbi@91.141.75.122.wireless.dyn.drei.com) (Ping timeout: 264 seconds)
2022-10-14 00:00:24 +0200ubert1ubert
2022-10-14 00:07:46 +0200 <monochrom> You know, hyperbolic geometry display goes well with hyperbolic time. For example, if you compute and print an infinite list, you throttle the computation so the nth item is put on hold for Theta(n) seconds.
2022-10-14 00:09:00 +0200acidjnk_new(~acidjnk@p200300d6e7137a99955eeb096340e161.dip0.t-ipconnect.de)
2022-10-14 00:09:47 +0200stackdroid18(14094@user/stackdroid) (Quit: hasta la vista... tchau!)
2022-10-14 00:10:27 +0200phma(phma@2001:5b0:211f:2d8:cb19:bdbc:6195:cb49) (Read error: Connection reset by peer)
2022-10-14 00:10:31 +0200 <monochrom> This is known as Anti-de Sitter space-time and enjoys the AdS/CFT holographic principle >:)
2022-10-14 00:11:00 +0200 <EvanR> a clever and useful implementation of that would, as soon as you press enter, begin uniform acceleration of the user toward andromeda galaxy
2022-10-14 00:11:25 +0200phma(~phma@host-67-44-209-51.hnremote.net)
2022-10-14 00:11:26 +0200 <EvanR> time dilation would fix the infinite list and travel time to the destination in one shot
2022-10-14 00:11:52 +0200michalz(~michalz@185.246.207.200) (Remote host closed the connection)
2022-10-14 00:14:26 +0200wonko(~wjc@2a0e:1c80:2:0:45:15:19:130)
2022-10-14 00:14:28 +0200LukeHoersten(~LukeHoers@user/lukehoersten) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-10-14 00:16:04 +0200 <EvanR> holographic graphics would be good though
2022-10-14 00:24:35 +0200raehik1(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 248 seconds)
2022-10-14 00:25:48 +0200Tuplanolla(~Tuplanoll@91-159-69-34.elisa-laajakaista.fi)
2022-10-14 00:33:02 +0200jespada(~jespada@nmal-24-b2-v4wan-166357-cust1764.vm24.cable.virginm.net)
2022-10-14 00:34:41 +0200Topsi(~Topsi@dyndsl-095-033-016-174.ewe-ip-backbone.de)
2022-10-14 00:38:02 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk) (Remote host closed the connection)
2022-10-14 00:38:25 +0200califax(~califax@user/califx) (Ping timeout: 258 seconds)
2022-10-14 00:38:37 +0200califax_(~califax@user/califx)
2022-10-14 00:39:51 +0200califax_califax
2022-10-14 00:40:48 +0200DDR(~DDR@2604:3d08:4c7f:8250:90d1:8621:421c:69c0)
2022-10-14 00:45:55 +0200megaTherion(~therion@unix.io) (Ping timeout: 248 seconds)
2022-10-14 00:50:12 +0200wonko(~wjc@2a0e:1c80:2:0:45:15:19:130) (Ping timeout: 264 seconds)
2022-10-14 00:52:18 +0200nate1(~nate@98.45.169.16)
2022-10-14 00:56:22 +0200megaTherion(~therion@unix.io)
2022-10-14 00:57:39 +0200nate1(~nate@98.45.169.16) (Ping timeout: 268 seconds)
2022-10-14 00:58:44 +0200caryhartline(~caryhartl@2600:1700:2d0:8d30:85ce:60ba:541:2d5a)
2022-10-14 01:06:49 +0200justsomeguy(~justsomeg@user/justsomeguy)
2022-10-14 01:08:30 +0200jmorris(uid537181@id-537181.uxbridge.irccloud.com)
2022-10-14 01:12:42 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk)
2022-10-14 01:14:32 +0200titibandit(~titibandi@xdsl-78-34-208-230.nc.de) (Remote host closed the connection)
2022-10-14 01:15:56 +0200gqplox(~textual@97e654ef.skybroadband.com)
2022-10-14 01:16:11 +0200elbear(~lucian@188.24.138.239)
2022-10-14 01:18:37 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk) (Ping timeout: 268 seconds)
2022-10-14 01:20:48 +0200elbear(~lucian@188.24.138.239) (Ping timeout: 264 seconds)
2022-10-14 01:25:53 +0200rockystone(~rocky@user/rockymarine)
2022-10-14 01:38:11 +0200Sciencentistguy(~sciencent@hacksoc/ordinary-member) (Ping timeout: 248 seconds)
2022-10-14 01:43:33 +0200xff0x(~xff0x@ai071162.d.east.v6connect.net) (Ping timeout: 252 seconds)
2022-10-14 01:44:18 +0200vorpuni(~pvorp@2001:861:3881:c690:ba0e:e680:831e:7c7b) (Quit: bye)
2022-10-14 01:44:39 +0200gentauro(~gentauro@user/gentauro) (Read error: Connection reset by peer)
2022-10-14 01:46:26 +0200Sciencentistguy(~sciencent@hacksoc/ordinary-member)
2022-10-14 01:46:56 +0200xff0x(~xff0x@ai071162.d.east.v6connect.net)
2022-10-14 01:48:43 +0200 <Clinton[m]> This is kinda a vague question, looking for a bit of guidance.... (full message at <https://libera.ems.host/_matrix/media/r0/download/libera.chat/4e1475f4ab3bf82a4ff1628027b957b8521a…>)
2022-10-14 01:49:19 +0200 <EvanR> this ADT is found in GHC.Data.Bag https://paste.tomsmeding.com/KaoyLc6x I was wondering if there is any source literature on it somewhere
2022-10-14 01:50:04 +0200 <Axman6> Clinton[m]: I'm not sure you want that instance, but aren't you basically looking at bmap . bmap?
2022-10-14 01:50:15 +0200gentauro(~gentauro@user/gentauro)
2022-10-14 01:50:49 +0200ezzieyguywuf(~Unknown@user/ezzieyguywuf) (Quit: leaving)
2022-10-14 01:51:38 +0200 <ski> @kind ReaderT
2022-10-14 01:51:38 +0200 <lambdabot> * -> (* -> *) -> * -> *
2022-10-14 01:51:56 +0200 <ski> Clinton[m] : you have a kind error
2022-10-14 01:51:58 +0200 <Axman6> hmm, yeah doesn't quite work
2022-10-14 01:54:05 +0200 <Clinton[m]> Yeah, I know the instance doesn't work, as the `\x -> ...` syntax isn't valid.
2022-10-14 01:55:14 +0200 <EvanR> what would the type of the thing be
2022-10-14 01:55:29 +0200 <Clinton[m]> but the vibe is I think it does, if `x :: (Type -> Type) -> Type`.
2022-10-14 01:55:30 +0200 <ski> ah, i'm sorry, i'm mistaken .. your `x' has kind `k -> Type' (well, `k' is forced to be `Type' by `ReaderT')
2022-10-14 01:55:52 +0200 <ski> but yea, you can't use type-level lambdas
2022-10-14 01:55:54 +0200 <Clinton[m]> s///, s/k/Type/, s///
2022-10-14 01:56:38 +0200 <Clinton[m]> edited now for simplicity, I just copied it from the hackage package
2022-10-14 01:57:00 +0200 <ski> you could try using `instance FunctorB t => FunctorB (Compose t (ReaderT r))'
2022-10-14 01:57:52 +0200 <ski> hmm
2022-10-14 01:57:58 +0200 <Clinton[m]> ski: oh that could work...
2022-10-14 01:58:08 +0200 <ski> yea, but i'm not sure it's a that good idea
2022-10-14 01:59:18 +0200tomboy64(~tomboy64@user/tomboy64) (Quit: Off to see the wizard.)
2022-10-14 02:00:17 +0200shapr(~user@68.54.166.125) (Ping timeout: 250 seconds)
2022-10-14 02:00:19 +0200 <Clinton[m]> @ski ohh that instance already exists :) https://hackage.haskell.org/package/barbies-2.0.3.1/docs/Data-Functor-Barbie.html#t:FunctorB
2022-10-14 02:00:19 +0200 <lambdabot> Maybe you meant: wiki src ask
2022-10-14 02:00:28 +0200 <ski> it's usually not that good to make instances for `Compose f g', for more specific types (not tyvars) in place of `f' and `g', i think
2022-10-14 02:01:01 +0200 <ski> because then someone else might want to have another instance for another `f' or another `g', or both .. when does it stop ?
2022-10-14 02:01:14 +0200 <ski> better is to try to be general, if possible/reasonable
2022-10-14 02:02:34 +0200 <ski> .. or, if you have `Compose F g', you could define `FOf g a' to be `F (g a)', and make an instance for `FOf g' .. or if you have `Compose f G', you could define `OfG f a' to be `f (G a)', and make an instance for `OfG f'
2022-10-14 02:03:13 +0200tomboy64(~tomboy64@user/tomboy64)
2022-10-14 02:04:54 +0200 <ski> this is, btw, what several of the monad transformers are. `ReaderT r m a' is `(r ->) (m a)', iow `Compose (Reader r) m'. `WriterT w m a' is `m (w,a)' (modulo annoying ordering), which is `Compose m (Writer w a)'
2022-10-14 02:06:40 +0200 <ski> (i wsa thrown off by the naming of `x' earlier, i think)
2022-10-14 02:08:22 +0200 <ski> .. hm, i guess what you want here is a monad transformer transformer ?
2022-10-14 02:08:49 +0200TonyStone(~TonyStone@cpe-74-76-51-197.nycap.res.rr.com)
2022-10-14 02:09:51 +0200werneta(~werneta@137.78.30.207) (Ping timeout: 260 seconds)
2022-10-14 02:11:48 +0200 <ski> you want a `ReaderTT r t m a' that amounts to `t (ReaderT r m) a. so given a monad transformer `t' (mapping arbitrary monads `m' to monads `t m'), you get another monad transformer `ReaderTT r t', which maps arbitrary monads `m' to `ReaderTT r t m', amounting to `t (ReaderT r m)', letting `t' decide on which monadic result type the monad `ReaderT r m' is applied
2022-10-14 02:13:09 +0200VictorLandevos(~VictorLan@cpc142034-slou6-2-0-cust488.17-4.cable.virginm.net) (Remote host closed the connection)
2022-10-14 02:13:48 +0200 <ski> hmm
2022-10-14 02:15:57 +0200EvanR(~EvanR@user/evanr) (Quit: Leaving)
2022-10-14 02:17:20 +0200EvanR(~EvanR@user/evanr)
2022-10-14 02:17:23 +0200 <ski> no, this isn't quite right
2022-10-14 02:18:05 +0200 <Clinton[m]> ski I am still reading and thinking :)
2022-10-14 02:18:15 +0200 <ski> `ReaderT r m' is a monad. `t' maps this to a concrete, not to a monad
2022-10-14 02:18:47 +0200 <ski> this means that `ReaderTT' (if we should call it that), has kind `Type -> (Type -> Type) -> Type', not `Type -> (Type -> Type) -> (Type -> Type)'
2022-10-14 02:19:05 +0200 <ski> hm .. need another naming
2022-10-14 02:19:43 +0200zebrag(~chris@user/zebrag)
2022-10-14 02:20:15 +0200 <ski> (anyway, `t' doesn't accept a "monadic result type" to apply the monad transformer it takes as input to. it just applies it to some privately chosen type(s))
2022-10-14 02:20:42 +0200Topsi(~Topsi@dyndsl-095-033-016-174.ewe-ip-backbone.de) (Read error: Connection reset by peer)
2022-10-14 02:20:52 +0200 <ski> s/concrete/concrete type/
2022-10-14 02:24:15 +0200Tuplanolla(~Tuplanoll@91-159-69-34.elisa-laajakaista.fi) (Quit: Leaving.)
2022-10-14 02:31:27 +0200zaquest(~notzaques@5.130.79.72) (Remote host closed the connection)
2022-10-14 02:32:56 +0200zaquest(~notzaques@5.130.79.72)
2022-10-14 02:33:57 +0200 <ski> hm .. not sure what to call it, let's say `OfReaderT r t m' for the time being .. being `t (ReaderT r m)'. so you want `instance FunctorB t => FunctorB (OfReaderT r t)'
2022-10-14 02:37:44 +0200 <ski> so you go `bmap f (MkOfReaderT trm) = MkOfReaderT (bmap (hoist f) trm)'
2022-10-14 02:40:23 +0200 <ski> `f' has type `forall a. m a -> n a', so `hoist f' has type `forall a. ReaderT r m a -> ReaderT r n a', so `bmap (hoist f)' has type `t (ReaderT r m) -> t (ReaderT r n)', and with `trm' of type `t (ReaderT r m)', `bmap (hoist f) trm' has type `t (ReaderT r n)', and so `bmap f' transforms `OfReaderT r t m' to `OfReaderT r t n' as required
2022-10-14 02:41:56 +0200gurkenglas(~gurkengla@p548ac72e.dip0.t-ipconnect.de)
2022-10-14 02:42:26 +0200Me-me(~me-me@tunnel690570-pt.tunnel.tserv12.mia1.ipv6.he.net) (Quit: Disconnecting on purpose.)
2022-10-14 02:42:46 +0200 <ski> one could wonder if we could use `mapReaderT' in place of `hoist' .. well, `mapReaderT f' would have type `ReaderT r m x -> ReaderT r n x' (with *no* `forall x.' ! .. `mapReaderT' isn't rank-2. so we have to pick a type (`x' before), choose `a' and `b' in the type of `f' to be this type `x', and then `mapReaderT f' is *not* polymorphic !)
2022-10-14 02:43:23 +0200 <ski> .. and so we can't pass `mapReaderT f' to `bmap', since it *is* rank-2, demands a polymorphic argument
2022-10-14 02:43:55 +0200 <ski> (at first i was thinking we could use either of them. but apparently only `hoist' works here)
2022-10-14 02:44:37 +0200Me-me(~me-me@v.working.name)
2022-10-14 02:47:41 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:657b:163b:3e09:9614)
2022-10-14 02:49:25 +0200Me-me(~me-me@v.working.name) (Client Quit)
2022-10-14 02:51:31 +0200Me-me(~me-me@tunnel690570-pt.tunnel.tserv12.mia1.ipv6.he.net)
2022-10-14 02:51:33 +0200MrsGenius(~MrsGenius@S01069050ca4e3573.cg.shawcable.net)
2022-10-14 02:51:52 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:657b:163b:3e09:9614) (Ping timeout: 246 seconds)
2022-10-14 02:53:36 +0200 <ski> (i guess you could phrase it as `bmap f = MkOfReaderT . bmap (hoist f) . runOfReaderT' .. assuming `newtype OfReaderT r t m = MkOfReaderT {runOfReaderT :: t (ReaderT r m)}')
2022-10-14 02:53:46 +0200ec(~ec@gateway/tor-sasl/ec) (Remote host closed the connection)
2022-10-14 02:54:01 +0200 <Clinton[m]> ski: I've got this:... (full message at <https://libera.ems.host/_matrix/media/r0/download/libera.chat/fcf9bf1dbd0cc55f868a0ee83dfc89f039fb…>)
2022-10-14 02:54:18 +0200ec(~ec@gateway/tor-sasl/ec)
2022-10-14 02:55:25 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 252 seconds)
2022-10-14 02:55:26 +0200Lord_of_Life_(~Lord@user/lord-of-life/x-2819915)
2022-10-14 02:56:02 +0200 <ski> hmm .. anyway, since `mapReaderT' is out of the picture, we could try to generalize from `b (ReaderT r m)' to `b (t m)' (renamed `t' |-> `b', so i can use `t' for arbitrary monad transformer)
2022-10-14 02:56:28 +0200elbear(~lucian@188.24.138.239)
2022-10-14 02:56:42 +0200Lord_of_Life_Lord_of_Life
2022-10-14 02:56:55 +0200 <ski> so, we have a composition `b . t' where `b :: (Type -> Type) -> Type' and `t :: (Type -> Type) -> (Type -> Type)'
2022-10-14 02:57:28 +0200 <Clinton[m]> Ah, I guess that could work...
2022-10-14 02:59:54 +0200 <ski> i guess we could now have `instance (FunctorB b,MonadTrans t) => FunctorB (Compose b t)' .. now this is fully general, not a specialized version (apart from using `Compose :: ((Type -> Type) -> Type) -> ((Type -> Type) -> (Type -> Type)) -> ((Type -> Type) -> Type)', rather than the general `(k1 -> Type) -> (k0 -> k1) -> (k0 -> Type)')
2022-10-14 03:00:34 +0200 <ski> so, this is actually `FunctorB (Compose @(Type -> Type) @(Type -> Type) b t)'
2022-10-14 03:00:35 +0200 <Clinton[m]> ski: at some point I'll make a PR request to `barbies` so that you can `derive (Generic, FunctorB)` from a type like:... (full message at <https://libera.ems.host/_matrix/media/r0/download/libera.chat/e64ea5d02680e7239b030c7e56a7d5fb9127…>)
2022-10-14 03:00:59 +0200elbear(~lucian@188.24.138.239) (Ping timeout: 268 seconds)
2022-10-14 03:01:59 +0200 <ski> @hoogle hoist
2022-10-14 03:02:00 +0200 <lambdabot> Pipes hoist :: (MFunctor t, Monad m) => (forall a . () => m a -> n a) -> t m b -> t n b
2022-10-14 03:02:00 +0200 <lambdabot> Control.Monad.Morph hoist :: (MFunctor t, Monad m) => (forall a . m a -> n a) -> t m b -> t n b
2022-10-14 03:02:00 +0200 <lambdabot> Streaming hoist :: (MFunctor t, Monad m) => (forall a . () => m a -> n a) -> t m b -> t n b
2022-10-14 03:03:10 +0200 <ski> Clinton[m] : your `TransformerFunctor' looks similar to `MFunctor' (except that one provides the implementor of `hoist' with evidence for `Monad m', while your `TransformerFunctor' doesn't do that for `tfmap')
2022-10-14 03:03:52 +0200 <MrsGenius> Hello
2022-10-14 03:03:53 +0200 <ski> hmm
2022-10-14 03:03:58 +0200 <ski> hello MrsGenius
2022-10-14 03:04:05 +0200freeside(~mengwong@bb115-66-48-84.singnet.com.sg)
2022-10-14 03:04:13 +0200gqplox(~textual@97e654ef.skybroadband.com) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2022-10-14 03:04:19 +0200ski's still kinda distracted .. so's replying somewhat slowly
2022-10-14 03:04:39 +0200gqplox(~textual@97e654ef.skybroadband.com)
2022-10-14 03:05:17 +0200 <ski> rethinking the previous, now i'm wondering if `mapReaderT' would work, anyway
2022-10-14 03:05:48 +0200gqplox(~textual@97e654ef.skybroadband.com) (Client Quit)
2022-10-14 03:05:52 +0200 <ski> mapReaderT :: forall a b. (m a -> n b) -> ReaderT r m a -> ReaderT r n b
2022-10-14 03:06:02 +0200 <ski> f :: forall c. m c -> n c
2022-10-14 03:06:11 +0200 <ski> f :: m d -> n d
2022-10-14 03:06:23 +0200 <ski> mapReaderT :: (m d -> n d) -> ReaderT r m d -> ReaderT r n d
2022-10-14 03:06:33 +0200 <ski> mapReaderT f :: ReaderT r m d -> ReaderT r n d
2022-10-14 03:06:45 +0200 <ski> mapReaderT f :: forall d. ReaderT r m d -> ReaderT r n d
2022-10-14 03:07:18 +0200 <ski> basically, we can go from `forall a. Foo a -> Bar a' to `(forall a. Foo a) -> (forall a. Bar a)'
2022-10-14 03:07:41 +0200stiell_(~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection)
2022-10-14 03:08:30 +0200stiell_(~stiell@gateway/tor-sasl/stiell)
2022-10-14 03:09:35 +0200wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-10-14 03:09:35 +0200wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Client Quit)
2022-10-14 03:09:51 +0200wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-10-14 03:09:52 +0200wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-10-14 03:09:52 +0200wroathe(~wroathe@user/wroathe)
2022-10-14 03:10:08 +0200 <ski> hm, right, not sure why i didn't realize `x' was generalizable before. we don't pick a particular `x', but rather "pick" the one that we're provided by `bmap :: (forall x. f x -> g x) -> b f -> b g' (the one we're calling) for it's argument (`hoist f' / `mapReaderT f')
2022-10-14 03:10:53 +0200 <ski> so, the point is that, while `mapReaderT' is more general, we can get its type to look like the type of `hoist'
2022-10-14 03:11:52 +0200 <ski> Clinton[m] : hm, do you have a record with multiple fields like that ?
2022-10-14 03:15:15 +0200waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 250 seconds)
2022-10-14 03:15:26 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net) (Quit: Lost terminal)
2022-10-14 03:15:58 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
2022-10-14 03:17:10 +0200waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340)
2022-10-14 03:18:06 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2022-10-14 03:18:19 +0200jmorris(uid537181@id-537181.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
2022-10-14 03:22:08 +0200emmanuelux(~emmanuelu@user/emmanuelux) (Quit: au revoir)
2022-10-14 03:24:01 +0200gurkenglas(~gurkengla@p548ac72e.dip0.t-ipconnect.de) (Ping timeout: 252 seconds)
2022-10-14 03:30:01 +0200xff0x(~xff0x@ai071162.d.east.v6connect.net) (Ping timeout: 246 seconds)
2022-10-14 03:37:52 +0200zxx7529(~Thunderbi@user/zxx7529)
2022-10-14 03:39:54 +0200dcoutts_(~duncan@host86-163-164-210.range86-163.btcentralplus.com)
2022-10-14 03:41:14 +0200gqplox(~textual@97e654ef.skybroadband.com)
2022-10-14 03:42:36 +0200dcoutts__(~duncan@host86-163-164-210.range86-163.btcentralplus.com) (Ping timeout: 260 seconds)
2022-10-14 03:44:18 +0200Feuermagier_(~Feuermagi@213.149.82.60) (Quit: Leaving)
2022-10-14 03:45:28 +0200nate1(~nate@98.45.169.16)
2022-10-14 03:47:39 +0200king_gs(~Thunderbi@2806:103e:29:c5:4fb1:a8c9:906f:c6e0)
2022-10-14 03:48:03 +0200elbear(~lucian@188.24.138.239)
2022-10-14 03:52:47 +0200elbear(~lucian@188.24.138.239) (Ping timeout: 268 seconds)
2022-10-14 03:58:59 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2022-10-14 04:00:05 +0200 <Clinton[m]> ski: I'm not sure what you're getting at... are you addressing the issue about us not being about to use `hoist` because `bmap` doesn't require the transformation source to be a Monad?
2022-10-14 04:03:49 +0200bilegeek(~bilegeek@2600:1008:b018:1dfc:44e1:aaa5:595f:8e17)
2022-10-14 04:03:55 +0200rockystone(~rocky@user/rockymarine) (Ping timeout: 268 seconds)
2022-10-14 04:04:48 +0200rockystone(~rocky@user/rockymarine)
2022-10-14 04:09:55 +0200MrsGenius(~MrsGenius@S01069050ca4e3573.cg.shawcable.net) (Quit: Client closed)
2022-10-14 04:12:45 +0200xff0x(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp)
2022-10-14 04:16:26 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 260 seconds)
2022-10-14 04:18:11 +0200waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 248 seconds)
2022-10-14 04:18:11 +0200rockystone(~rocky@user/rockymarine) (Ping timeout: 260 seconds)
2022-10-14 04:19:22 +0200thegeekinside(~thegeekin@189.180.7.159) (Ping timeout: 246 seconds)
2022-10-14 04:20:25 +0200king_gs(~Thunderbi@2806:103e:29:c5:4fb1:a8c9:906f:c6e0) (Ping timeout: 246 seconds)
2022-10-14 04:20:53 +0200frost(~frost@user/frost)
2022-10-14 04:22:01 +0200eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net)
2022-10-14 04:23:06 +0200rockystone(~rocky@user/rockymarine)
2022-10-14 04:23:51 +0200king_gs(~Thunderbi@187.201.131.180)
2022-10-14 04:27:49 +0200td_(~td@83.135.9.55) (Ping timeout: 252 seconds)
2022-10-14 04:29:36 +0200td_(~td@83.135.9.35)
2022-10-14 04:29:54 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
2022-10-14 04:31:01 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection)
2022-10-14 04:33:19 +0200finn_elija(~finn_elij@user/finn-elija/x-0085643)
2022-10-14 04:33:19 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija)))
2022-10-14 04:33:19 +0200finn_elijaFinnElija
2022-10-14 04:33:45 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-10-14 04:37:13 +0200rockystone(~rocky@user/rockymarine) (Ping timeout: 268 seconds)
2022-10-14 04:38:23 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 258 seconds)
2022-10-14 04:45:40 +0200terrorjack(~terrorjac@2a01:4f8:1c1e:509a::1) (Quit: The Lounge - https://thelounge.chat)
2022-10-14 04:46:12 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk)
2022-10-14 04:47:02 +0200terrorjack(~terrorjac@2a01:4f8:1c1e:509a::1)
2022-10-14 04:48:46 +0200nate1(~nate@98.45.169.16) (Ping timeout: 246 seconds)
2022-10-14 04:50:53 +0200rockystone(~rocky@user/rockymarine)
2022-10-14 04:52:19 +0200raym(~aritra@user/raym) (Ping timeout: 248 seconds)
2022-10-14 04:52:51 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk) (Ping timeout: 248 seconds)
2022-10-14 04:56:07 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-10-14 05:00:19 +0200janus(janus@anubis.0x90.dk) ()
2022-10-14 05:01:23 +0200rockystone(~rocky@user/rockymarine) (Ping timeout: 248 seconds)
2022-10-14 05:03:54 +0200ec_(~ec@gateway/tor-sasl/ec)
2022-10-14 05:05:36 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 258 seconds)
2022-10-14 05:08:23 +0200raym(~aritra@user/raym)
2022-10-14 05:09:54 +0200king_gs(~Thunderbi@187.201.131.180) (Ping timeout: 268 seconds)
2022-10-14 05:10:29 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 268 seconds)
2022-10-14 05:11:15 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
2022-10-14 05:13:29 +0200rockystone(~rocky@user/rockymarine)
2022-10-14 05:24:05 +0200rockystone(~rocky@user/rockymarine) (Ping timeout: 268 seconds)
2022-10-14 05:29:25 +0200justsomeguy(~justsomeg@user/justsomeguy) (Ping timeout: 252 seconds)
2022-10-14 05:32:48 +0200gqplox(~textual@97e654ef.skybroadband.com) (Remote host closed the connection)
2022-10-14 05:36:01 +0200johnjaye(~pi@173.209.64.74) (Ping timeout: 252 seconds)
2022-10-14 05:38:15 +0200johnjaye(~pi@173.209.64.74)
2022-10-14 05:40:29 +0200rockystone(~rocky@user/rockymarine)
2022-10-14 05:40:30 +0200Vajb(~Vajb@2001:999:504:1841:9e47:1ec7:a52e:1d57) (Read error: Connection reset by peer)
2022-10-14 05:40:55 +0200Vajb(~Vajb@hag-jnsbng11-58c3a5-27.dhcp.inet.fi)
2022-10-14 05:45:41 +0200 <chymera> hi guys, any idea how I can convert "%" characters in strings to "%25" or "&" to "%26"? This is needed for URIs apparently... is this the correct package? https://hackage.haskell.org/package/uri-encode-1.5.0.6/docs/Network-URI-Encode.html
2022-10-14 05:46:41 +0200Vajb(~Vajb@hag-jnsbng11-58c3a5-27.dhcp.inet.fi) (Read error: Connection reset by peer)
2022-10-14 05:46:49 +0200 <EvanR> you can try the functions in that package in ghci, like > encode "30% off"
2022-10-14 05:47:52 +0200Vajb(~Vajb@hag-jnsbng11-58c3a5-27.dhcp.inet.fi)
2022-10-14 06:01:30 +0200elbear(~lucian@188.24.138.239)
2022-10-14 06:03:16 +0200Vajb(~Vajb@hag-jnsbng11-58c3a5-27.dhcp.inet.fi) (Read error: Connection reset by peer)
2022-10-14 06:03:51 +0200Vajb(~Vajb@2001:999:504:1841:9e47:1ec7:a52e:1d57)
2022-10-14 06:04:14 +0200azimut(~azimut@gateway/tor-sasl/azimut)
2022-10-14 06:05:59 +0200elbear(~lucian@188.24.138.239) (Ping timeout: 268 seconds)
2022-10-14 06:09:06 +0200freeside(~mengwong@bb115-66-48-84.singnet.com.sg) (Ping timeout: 268 seconds)
2022-10-14 06:09:30 +0200eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-10-14 06:11:57 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:657b:163b:3e09:9614)
2022-10-14 06:14:34 +0200caryhartline(~caryhartl@2600:1700:2d0:8d30:85ce:60ba:541:2d5a) (Quit: caryhartline)
2022-10-14 06:20:23 +0200zxx7529(~Thunderbi@user/zxx7529) (Ping timeout: 252 seconds)
2022-10-14 06:21:24 +0200rockystone(~rocky@user/rockymarine) (Ping timeout: 268 seconds)
2022-10-14 06:25:56 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 260 seconds)
2022-10-14 06:33:13 +0200freeside(~mengwong@bb115-66-48-84.singnet.com.sg)
2022-10-14 06:35:57 +0200king_gs(~Thunderbi@187.201.131.180)
2022-10-14 06:37:37 +0200freeside(~mengwong@bb115-66-48-84.singnet.com.sg) (Ping timeout: 252 seconds)
2022-10-14 06:49:16 +0200DDR(~DDR@2604:3d08:4c7f:8250:90d1:8621:421c:69c0) (Ping timeout: 260 seconds)
2022-10-14 06:49:38 +0200elbear(~lucian@188.24.138.239)
2022-10-14 06:50:41 +0200 <ski> Clinton[m] : well, i was addressing that you could after all use `mapReaderT' in place of `hoist' (although only the latter was generalizable). but then i wondered about your `Blah' record in your last "paste", with fields `blah1',`blah2', wondering what you'd use it for
2022-10-14 06:50:47 +0200rockystone(~rocky@user/rockymarine)
2022-10-14 06:52:29 +0200freeside(~mengwong@bb115-66-48-84.singnet.com.sg)
2022-10-14 06:57:26 +0200rockystone(~rocky@user/rockymarine) (Ping timeout: 260 seconds)
2022-10-14 06:57:37 +0200tam-carre(~tam-carre@2a01cb088a83b300a322b3f387318318.ipv6.abo.wanadoo.fr)
2022-10-14 07:00:40 +0200ezzieyguywuf(~Unknown@user/ezzieyguywuf)
2022-10-14 07:03:58 +0200azimut(~azimut@gateway/tor-sasl/azimut) (Quit: ZNC - https://znc.in)
2022-10-14 07:04:44 +0200azimut(~azimut@gateway/tor-sasl/azimut)
2022-10-14 07:05:35 +0200bilegeek(~bilegeek@2600:1008:b018:1dfc:44e1:aaa5:595f:8e17) (Quit: Leaving)
2022-10-14 07:08:15 +0200 <jonathanx> I spend way too much time removing imports suggested by --pedantic. Is there a way to quickly remove all redundant imports? I'm usin HLS/vscode
2022-10-14 07:08:50 +0200 <probie> Doesn't HLS highlight them for you?
2022-10-14 07:08:55 +0200johnjaye(~pi@173.209.64.74) (Ping timeout: 268 seconds)
2022-10-14 07:09:40 +0200codaraxis__(~codaraxis@user/codaraxis)
2022-10-14 07:10:37 +0200johnjaye(~pi@173.209.64.74)
2022-10-14 07:12:23 +0200mbuf(~Shakthi@49.204.114.28)
2022-10-14 07:13:19 +0200codaraxis___(~codaraxis@user/codaraxis) (Ping timeout: 246 seconds)
2022-10-14 07:15:21 +0200 <ski> hm, someone recently showed some script to maximize and minimize Haskell imports, in here ..
2022-10-14 07:16:41 +0200fjMSX(~hypni2p@2.92.213.55) (Remote host closed the connection)
2022-10-14 07:17:57 +0200king_gs(~Thunderbi@187.201.131.180) (Read error: Connection reset by peer)
2022-10-14 07:18:44 +0200takuan(~takuan@178-116-218-225.access.telenet.be)
2022-10-14 07:18:59 +0200king_gs(~Thunderbi@2806:103e:29:c5:4fb1:a8c9:906f:c6e0)
2022-10-14 07:19:29 +0200rockystone(~rocky@user/rockymarine)
2022-10-14 07:20:41 +0200chomwitt(~chomwitt@2a02:587:dc0c:c200:b1b7:d42d:7f9d:2308)
2022-10-14 07:20:55 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 258 seconds)
2022-10-14 07:21:50 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 268 seconds)
2022-10-14 07:24:53 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-10-14 07:25:36 +0200elbear(~lucian@188.24.138.239) (Ping timeout: 264 seconds)
2022-10-14 07:27:51 +0200fjMSX(~hypni2p@2.92.213.55)
2022-10-14 07:27:52 +0200 <geekosaur> Sep 29 13:01:02 <DigitalKiwi> https://mostlyabsurd.com/posts/2019/06/03/minimal-imports-maximal-imports/
2022-10-14 07:29:08 +0200elbear(~lucian@188.24.138.239)
2022-10-14 07:31:51 +0200raym(~aritra@user/raym) (Ping timeout: 260 seconds)
2022-10-14 07:34:07 +0200zebrag(~chris@user/zebrag) (Quit: Konversation terminated!)
2022-10-14 07:35:09 +0200jargon(~jargon@184.101.208.112) (Remote host closed the connection)
2022-10-14 07:44:59 +0200jargon(~jargon@184.101.208.112)
2022-10-14 07:46:12 +0200kenran(~user@user/kenran)
2022-10-14 07:47:33 +0200raym(~aritra@user/raym)
2022-10-14 07:53:39 +0200raym(~aritra@user/raym) (Ping timeout: 248 seconds)
2022-10-14 07:54:18 +0200ft(~ft@p3e9bc57b.dip0.t-ipconnect.de) (Quit: leaving)
2022-10-14 07:55:00 +0200kenran(~user@user/kenran) (Remote host closed the connection)
2022-10-14 07:59:26 +0200raym(~aritra@user/raym)
2022-10-14 08:06:16 +0200whatsupdoc(uid509081@id-509081.hampstead.irccloud.com) (Ping timeout: 260 seconds)
2022-10-14 08:08:20 +0200whatsupdoc(uid509081@id-509081.hampstead.irccloud.com)
2022-10-14 08:10:13 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk)
2022-10-14 08:10:50 +0200coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
2022-10-14 08:11:07 +0200rockystone(~rocky@user/rockymarine) (Ping timeout: 252 seconds)
2022-10-14 08:11:39 +0200rockystone(~rocky@user/rockymarine)
2022-10-14 08:13:48 +0200jargon(~jargon@184.101.208.112) (Remote host closed the connection)
2022-10-14 08:16:25 +0200kenran(~user@user/kenran)
2022-10-14 08:16:30 +0200razetime(~quassel@117.193.4.154)
2022-10-14 08:17:07 +0200tam-carre(~tam-carre@2a01cb088a83b300a322b3f387318318.ipv6.abo.wanadoo.fr) (Remote host closed the connection)
2022-10-14 08:19:27 +0200rockystone(~rocky@user/rockymarine) (Ping timeout: 250 seconds)
2022-10-14 08:20:03 +0200king_gs(~Thunderbi@2806:103e:29:c5:4fb1:a8c9:906f:c6e0) (Quit: king_gs)
2022-10-14 08:20:19 +0200king_gs(~Thunderbi@187.201.131.180)
2022-10-14 08:22:01 +0200freeside(~mengwong@bb115-66-48-84.singnet.com.sg) (Ping timeout: 260 seconds)
2022-10-14 08:23:44 +0200rockystone(~rocky@user/rockymarine)
2022-10-14 08:25:14 +0200 <ski> ty
2022-10-14 08:26:51 +0200stiell_(~stiell@gateway/tor-sasl/stiell) (Ping timeout: 258 seconds)
2022-10-14 08:29:21 +0200stiell_(~stiell@gateway/tor-sasl/stiell)
2022-10-14 08:29:21 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:c6ca:2b6d:906a:6c9f)
2022-10-14 08:30:51 +0200Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2022-10-14 08:33:22 +0200califax(~califax@user/califx) (Ping timeout: 258 seconds)
2022-10-14 08:36:49 +0200califax(~califax@user/califx)
2022-10-14 08:38:34 +0200freeside(~mengwong@bb115-66-48-84.singnet.com.sg)
2022-10-14 08:41:55 +0200king_gs(~Thunderbi@187.201.131.180) (Read error: Connection reset by peer)
2022-10-14 08:42:02 +0200king_gs1(~Thunderbi@2806:103e:29:c5:4fb1:a8c9:906f:c6e0)
2022-10-14 08:44:21 +0200king_gs1king_gs
2022-10-14 08:46:20 +0200nate1(~nate@98.45.169.16)
2022-10-14 08:47:47 +0200elbear(~lucian@188.24.138.239) (Ping timeout: 252 seconds)
2022-10-14 08:50:23 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-10-14 08:50:37 +0200 <talismanick> Has anyone used the manifolds package? How is it?
2022-10-14 08:51:24 +0200nate1(~nate@98.45.169.16) (Ping timeout: 268 seconds)
2022-10-14 08:51:32 +0200paddymahoney(~paddymaho@cpe9050ca207f83-cm9050ca207f80.cpe.net.cable.rogers.com)
2022-10-14 08:52:56 +0200mmaruseacph2(~mihai@198.199.98.239) (Ping timeout: 260 seconds)
2022-10-14 08:53:11 +0200mmaruseacph2(~mihai@198.199.98.239)
2022-10-14 08:55:07 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 252 seconds)
2022-10-14 08:57:45 +0200king_gs(~Thunderbi@2806:103e:29:c5:4fb1:a8c9:906f:c6e0) (Remote host closed the connection)
2022-10-14 08:58:01 +0200fjMSX(~hypni2p@2.92.213.55) (Remote host closed the connection)
2022-10-14 09:01:04 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2022-10-14 09:01:19 +0200elbear(~lucian@188.24.138.239)
2022-10-14 09:07:17 +0200elbear(~lucian@188.24.138.239) (Ping timeout: 268 seconds)
2022-10-14 09:08:07 +0200raym(~aritra@user/raym) (Ping timeout: 246 seconds)
2022-10-14 09:14:05 +0200raym(~aritra@user/raym)
2022-10-14 09:14:12 +0200turlando(~turlando@user/turlando) (Remote host closed the connection)
2022-10-14 09:14:18 +0200nschoe(~q@141.101.51.197)
2022-10-14 09:15:27 +0200turlando(~turlando@user/turlando)
2022-10-14 09:19:22 +0200califax(~califax@user/califx) (Ping timeout: 258 seconds)
2022-10-14 09:19:55 +0200elbear(~lucian@188.24.138.239)
2022-10-14 09:20:14 +0200Sciencentistguy(~sciencent@hacksoc/ordinary-member) (Ping timeout: 268 seconds)
2022-10-14 09:20:54 +0200califax(~califax@user/califx)
2022-10-14 09:24:19 +0200elbear(~lucian@188.24.138.239) (Ping timeout: 248 seconds)
2022-10-14 09:24:19 +0200econo(uid147250@user/econo) (Quit: Connection closed for inactivity)
2022-10-14 09:24:52 +0200chele(~chele@user/chele)
2022-10-14 09:25:44 +0200 <tomsmeding> EvanR: is the point of that 'Bag' to provide a data structure that can has O(1) append, O(1) fromList and O(n) toList? Because in that case I've reinvented it multiple times already :p
2022-10-14 09:28:05 +0200yuzhao(~yuzhao@36.112.45.73)
2022-10-14 09:30:09 +0200 <tomsmeding> dminuoso: O.o lemme debug
2022-10-14 09:30:51 +0200MajorBiscuit(~MajorBisc@86-88-79-148.fixed.kpn.net)
2022-10-14 09:32:22 +0200CiaoSen(~Jura@p200300c95700eb002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
2022-10-14 09:33:28 +0200Major_Biscuit(~MajorBisc@c-001-015-051.client.tudelft.eduvpn.nl)
2022-10-14 09:35:51 +0200califax(~califax@user/califx) (Ping timeout: 258 seconds)
2022-10-14 09:37:13 +0200elbear(~lucian@188.24.138.239)
2022-10-14 09:37:30 +0200MajorBiscuit(~MajorBisc@86-88-79-148.fixed.kpn.net) (Ping timeout: 268 seconds)
2022-10-14 09:40:51 +0200califax(~califax@user/califx)
2022-10-14 09:41:47 +0200elbear(~lucian@188.24.138.239) (Ping timeout: 250 seconds)
2022-10-14 09:43:26 +0200shriekingnoise(~shrieking@186.137.167.202) (Quit: Quit)
2022-10-14 09:50:28 +0200acidjnk_new(~acidjnk@p200300d6e7137a99955eeb096340e161.dip0.t-ipconnect.de) (Ping timeout: 246 seconds)
2022-10-14 09:52:04 +0200fserucas(~fserucas@2001:818:e376:a400:fb92:70c1:dd88:c7d7)
2022-10-14 09:52:07 +0200 <talismanick> Bag, like a multiset?
2022-10-14 09:53:32 +0200yahb2(~yahb2@2a01:4f8:c0c:5c7b::2) (Remote host closed the connection)
2022-10-14 09:53:44 +0200yahb2(~yahb2@2a01:4f8:c0c:5c7b::2)
2022-10-14 09:53:53 +0200 <tomsmeding> talismanick: EvanR sent this link https://paste.tomsmeding.com/KaoyLc6x
2022-10-14 09:54:51 +0200 <tomsmeding> % :set -XNoMonomorphismRestriction
2022-10-14 09:54:51 +0200 <yahb2> <no output>
2022-10-14 09:54:57 +0200 <tomsmeding> dminuoso: fixed
2022-10-14 09:55:37 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net)
2022-10-14 10:00:28 +0200Katarushisu(~Katarushi@cpc147790-finc20-2-0-cust502.4-2.cable.virginm.net)
2022-10-14 10:00:52 +0200acidjnk(~acidjnk@p200300d6e7137a99918d58bfa2347072.dip0.t-ipconnect.de)
2022-10-14 10:00:55 +0200 <dminuoso> % f :: Num a => a -> a -> a; g :: Num a => a -> a -> a; (f,g) = ((+),(-)
2022-10-14 10:00:55 +0200 <yahb2> <interactive>:30:71: error: ; parse error (possibly incorrect indentation or mismatched brackets)
2022-10-14 10:01:00 +0200 <dminuoso> % f :: Num a => a -> a -> a; g :: Num a => a -> a -> a; (f,g) = ((+),(-))
2022-10-14 10:01:00 +0200 <yahb2> <interactive>:32:1: error: ; Overloaded signature conflicts with monomorphism restriction ; f :: forall a. Num a => a -> a -> a
2022-10-14 10:01:10 +0200 <dminuoso> Here we go. This is a fun and probably little known bit. :)
2022-10-14 10:02:56 +0200razetime(~quassel@117.193.4.154) (Ping timeout: 260 seconds)
2022-10-14 10:03:45 +0200 <tomsmeding> huh. So this is _without_ monores.
2022-10-14 10:04:01 +0200mbuf(~Shakthi@49.204.114.28) (Quit: Leaving)
2022-10-14 10:04:21 +0200 <tomsmeding> ah no, it's with monores
2022-10-14 10:04:28 +0200 <dminuoso> Yeah
2022-10-14 10:04:34 +0200 <dminuoso> Sorry, I had enabled it behind the scenes.
2022-10-14 10:04:34 +0200dr_merijn(~dr_merijn@86-86-29-250.fixed.kpn.net)
2022-10-14 10:04:47 +0200 <dminuoso> The surprising bit is the restriction despite f and g being annotated.
2022-10-14 10:05:05 +0200 <tomsmeding> funny, and it works when the bindings for f and g are simple function bindings instead of via a non-trivial pattern
2022-10-14 10:05:27 +0200 <tomsmeding> yeah this is somewhat surprising
2022-10-14 10:05:27 +0200 <dminuoso> Yup, its exactly that non-trivial pattern that makes the difference.
2022-10-14 10:05:35 +0200 <dminuoso> There's good and subtle reasons for this
2022-10-14 10:06:03 +0200 <tomsmeding> yeah it sort of makes sense after the fact, but I wouldn't have naively predicted it
2022-10-14 10:06:07 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:657b:163b:3e09:9614) (Remote host closed the connection)
2022-10-14 10:07:10 +0200tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz)
2022-10-14 10:07:11 +0200 <tomsmeding> by the way the problem with yahb2 was that apparently ghc needs /tmp nowadays, and my container script gave it no /tmp
2022-10-14 10:07:13 +0200 <tomsmeding> :p
2022-10-14 10:07:19 +0200 <tomsmeding> not sure what changed
2022-10-14 10:09:01 +0200aliosablack(~chomwitt@2a02:587:dc0c:c200:b1b7:d42d:7f9d:2308)
2022-10-14 10:09:14 +0200elbear(~lucian@188.24.138.239)
2022-10-14 10:09:34 +0200chomwitt(~chomwitt@2a02:587:dc0c:c200:b1b7:d42d:7f9d:2308) (Read error: Connection reset by peer)
2022-10-14 10:11:00 +0200Sciencentistguy(~sciencent@hacksoc/ordinary-member)
2022-10-14 10:13:29 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
2022-10-14 10:13:57 +0200elbear(~lucian@188.24.138.239) (Ping timeout: 252 seconds)
2022-10-14 10:14:09 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan)
2022-10-14 10:19:16 +0200Sciencentistguy(~sciencent@hacksoc/ordinary-member) (Ping timeout: 260 seconds)
2022-10-14 10:19:44 +0200razetime(~quassel@117.193.4.154)
2022-10-14 10:22:24 +0200Sciencentistguy(~sciencent@hacksoc/ordinary-member)
2022-10-14 10:22:26 +0200__xor(~xor@74.215.182.83)
2022-10-14 10:25:07 +0200yuzhao(~yuzhao@36.112.45.73) (Ping timeout: 250 seconds)
2022-10-14 10:26:46 +0200elbear(~lucian@188.24.138.239)
2022-10-14 10:27:01 +0200 <dminuoso> https://hackage.haskell.org/package/bytestring-0.11.3.1/docs/Data-ByteString-Builder-Prim.html#t:F…
2022-10-14 10:27:04 +0200 <dminuoso> This module is so lovely. :)
2022-10-14 10:27:19 +0200 <dminuoso> data FixedPrim a = FP {-# UNPACK #-} !Int (a -> Ptr Word8 -> IO ())
2022-10-14 10:27:20 +0200mastarija(~mastarija@2a05:4f46:e03:6000:5956:8a4b:bcdb:bf92)
2022-10-14 10:28:28 +0200 <dminuoso> Absolutely love this, as its incredibly reusable.
2022-10-14 10:28:48 +0200 <tomsmeding> nice
2022-10-14 10:28:58 +0200 <tomsmeding> very general
2022-10-14 10:31:11 +0200elbear(~lucian@188.24.138.239) (Ping timeout: 250 seconds)
2022-10-14 10:31:32 +0200 <dminuoso> In the new Put monad Im building, Ill just unsafePerformIO myself a buffer via mallocForeignPtrBytes, and then just unpack these primitives from bytestring.
2022-10-14 10:31:40 +0200 <dminuoso> And poke them directly in there
2022-10-14 10:31:57 +0200 <dminuoso> And since each FixedPrim already has length available too, bound checking is trivial too
2022-10-14 10:32:18 +0200 <dminuoso> And at the end Ill just unsafely construct a ByteString from the ForeignPtr directly
2022-10-14 10:33:02 +0200yuzhao(~yuzhao@36.112.45.73)
2022-10-14 10:35:12 +0200talismanick(~talismani@2601:200:c100:c9e0::1b0b) (Ping timeout: 264 seconds)
2022-10-14 10:41:53 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk) (Remote host closed the connection)
2022-10-14 10:42:11 +0200 <dr_merijn> dminuoso: High five!
2022-10-14 10:42:58 +0200 <dr_merijn> dminuoso: Have you ever really lived until you abuse Haskell to type pun ByteString into vectors and vice versa? ;)
2022-10-14 10:44:56 +0200loras(~loras@c-73-139-125-125.hsd1.fl.comcast.net) (Ping timeout: 260 seconds)
2022-10-14 10:45:36 +0200teo(~teo@user/teo)
2022-10-14 10:51:26 +0200yuzhao(~yuzhao@36.112.45.73) (Read error: Connection reset by peer)
2022-10-14 10:52:16 +0200Flow(~none@gentoo/developer/flow) (Ping timeout: 268 seconds)
2022-10-14 10:52:19 +0200Katarushisu(~Katarushi@cpc147790-finc20-2-0-cust502.4-2.cable.virginm.net) (Ping timeout: 248 seconds)
2022-10-14 10:55:14 +0200raehik1(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-10-14 10:57:31 +0200tam-carre(~tam-carre@2a01cb088a83b300a322b3f387318318.ipv6.abo.wanadoo.fr)
2022-10-14 10:59:40 +0200Flow(~none@gentoo/developer/flow)
2022-10-14 11:00:08 +0200elbear(~lucian@188.24.138.239)
2022-10-14 11:00:12 +0200Katarushisu(~Katarushi@cpc147790-finc20-2-0-cust502.4-2.cable.virginm.net)
2022-10-14 11:04:33 +0200elbear(~lucian@188.24.138.239) (Ping timeout: 252 seconds)
2022-10-14 11:05:40 +0200yuzhao(~yuzhao@36.112.45.73)
2022-10-14 11:06:37 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:657b:163b:3e09:9614)
2022-10-14 11:11:30 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:657b:163b:3e09:9614) (Ping timeout: 264 seconds)
2022-10-14 11:14:49 +0200sagax(~sagax_nb@user/sagax)
2022-10-14 11:15:32 +0200tcard(~tcard@2400:4051:5801:7500:19ce:ed82:2ab7:90f9)
2022-10-14 11:16:14 +0200dr_merijn(~dr_merijn@86-86-29-250.fixed.kpn.net) (Quit: leaving)
2022-10-14 11:18:41 +0200elbear(~lucian@188.24.138.239)
2022-10-14 11:19:09 +0200yuzhao(~yuzhao@36.112.45.73) (Read error: Connection reset by peer)
2022-10-14 11:21:52 +0200merijn(~merijn@86.86.29.250)
2022-10-14 11:28:39 +0200yuzhao(~yuzhao@36.112.45.73)
2022-10-14 11:32:10 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-10-14 11:32:25 +0200Kaiepi(~Kaiepi@142.68.249.28) (Ping timeout: 252 seconds)
2022-10-14 11:32:49 +0200razetime(~quassel@117.193.4.154) (Ping timeout: 268 seconds)
2022-10-14 11:35:31 +0200Kaiepi(~Kaiepi@142.68.249.28)
2022-10-14 11:38:07 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk)
2022-10-14 11:45:25 +0200Batzy(~quassel@user/batzy) (Read error: Connection reset by peer)
2022-10-14 11:46:18 +0200Batzy(~quassel@user/batzy)
2022-10-14 11:47:35 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-10-14 11:48:44 +0200wonko(~wjc@2a0e:1c80:2:0:45:15:19:130)
2022-10-14 11:49:05 +0200causal(~user@2001:470:ea0f:3:329c:23ff:fe3f:1e0e) (Quit: WeeChat 3.6)
2022-10-14 11:55:47 +0200cfricke(~cfricke@user/cfricke)
2022-10-14 11:55:59 +0200ccapndave(~ccapndave@xcpe-62-167-164-44.cgn.res.adslplus.ch)
2022-10-14 11:59:36 +0200Katarushisu(~Katarushi@cpc147790-finc20-2-0-cust502.4-2.cable.virginm.net) (Ping timeout: 260 seconds)
2022-10-14 12:02:45 +0200Katarushisu(~Katarushi@cpc147790-finc20-2-0-cust502.4-2.cable.virginm.net)
2022-10-14 12:03:48 +0200yuzhao(~yuzhao@36.112.45.73) (Ping timeout: 268 seconds)
2022-10-14 12:06:23 +0200vn36(~vn36@123.63.203.210)
2022-10-14 12:09:39 +0200Kaiepi(~Kaiepi@142.68.249.28) (Ping timeout: 248 seconds)
2022-10-14 12:09:51 +0200razetime(~quassel@117.193.4.154)
2022-10-14 12:11:16 +0200xff0x(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 260 seconds)
2022-10-14 12:16:19 +0200Haskelytic(~Haskelyti@118.179.211.17)
2022-10-14 12:17:11 +0200fjMSX(~hypni2p@2.92.213.55)
2022-10-14 12:19:18 +0200mastarija(~mastarija@2a05:4f46:e03:6000:5956:8a4b:bcdb:bf92) (Ping timeout: 264 seconds)
2022-10-14 12:20:49 +0200gurkenglas(~gurkengla@p548ac72e.dip0.t-ipconnect.de)
2022-10-14 12:21:41 +0200elbear(~lucian@188.24.138.239) (Ping timeout: 268 seconds)
2022-10-14 12:24:01 +0200Kaiepi(~Kaiepi@142.68.249.28)
2022-10-14 12:24:16 +0200elbear(~lucian@188.24.138.239)
2022-10-14 12:28:53 +0200elbear(~lucian@188.24.138.239) (Ping timeout: 252 seconds)
2022-10-14 12:30:05 +0200titibandit(~titibandi@xdsl-78-34-208-230.nc.de)
2022-10-14 12:30:56 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk) (Remote host closed the connection)
2022-10-14 12:30:57 +0200__xor(~xor@74.215.182.83) (Quit: brb)
2022-10-14 12:42:02 +0200jmdaemon(~jmdaemon@user/jmdaemon) (Ping timeout: 268 seconds)
2022-10-14 12:47:41 +0200nate1(~nate@98.45.169.16)
2022-10-14 12:52:59 +0200nate1(~nate@98.45.169.16) (Ping timeout: 268 seconds)
2022-10-14 12:53:23 +0200raehik1(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 248 seconds)
2022-10-14 12:53:45 +0200CiaoSen(~Jura@p200300c95700eb002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 250 seconds)
2022-10-14 12:53:48 +0200raym(~aritra@user/raym) (Ping timeout: 264 seconds)
2022-10-14 12:54:33 +0200raehik1(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-10-14 12:54:36 +0200raym(~aritra@user/raym)
2022-10-14 12:58:07 +0200elbear(~lucian@188.24.138.239)
2022-10-14 13:06:43 +0200rockystone(~rocky@user/rockymarine) (Ping timeout: 248 seconds)
2022-10-14 13:10:51 +0200xff0x(~xff0x@2405:6580:b080:900:b67d:8bf9:8e64:c723)
2022-10-14 13:11:09 +0200ccapndave(~ccapndave@xcpe-62-167-164-44.cgn.res.adslplus.ch) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-10-14 13:11:48 +0200Guest6(~Guest6@2a01cb0408ee99001bcd18dfc58a6927.ipv6.abo.wanadoo.fr)
2022-10-14 13:16:48 +0200kuribas(~user@ptr-17d51emi970ix5xwkf4.18120a2.ip6.access.telenet.be)
2022-10-14 13:19:43 +0200 <Guest6> Hello. I'm facing an issue, if somebody can help :
2022-10-14 13:19:44 +0200 <Guest6> I use this function from a library :
2022-10-14 13:19:44 +0200 <Guest6> access :: MonadIO m => Pipe -> AccessMode -> Database -> Action m a -> m a
2022-10-14 13:19:45 +0200 <Guest6> I would like to pass some of its parameters, then passing the result to another functions so they can pass the last parameter themselves :
2022-10-14 13:19:45 +0200 <Guest6> example =
2022-10-14 13:19:46 +0200 <Guest6>   let access_ = access pipe UnconfirmedWrites "dbName"
2022-10-14 13:19:46 +0200 <Guest6>   someOtherFunc access_
2022-10-14 13:19:47 +0200 <Guest6> someOtherFunc :: (Action m a -> m a) -> IO ()
2022-10-14 13:19:47 +0200 <Guest6> someOtherFunc access_ = access_ something
2022-10-14 13:19:48 +0200 <Guest6> But i dont achieve to type someOtherFunc signature properly.
2022-10-14 13:19:48 +0200 <Guest6> the compiler want me to replace "a" by a specific type which would not work on every access_ usages
2022-10-14 13:20:12 +0200 <Guest6>  Couldn't match type ‘a’ with ‘Value’
2022-10-14 13:20:13 +0200 <Guest6>       Expected: Action m a
2022-10-14 13:20:13 +0200 <Guest6>         Actual: Action m Value
2022-10-14 13:20:14 +0200 <Guest6>       ‘a’ is a rigid type variable bound by
2022-10-14 13:22:20 +0200titibandit(~titibandi@xdsl-78-34-208-230.nc.de) (Remote host closed the connection)
2022-10-14 13:22:22 +0200rockystone(~rocky@user/rockymarine)
2022-10-14 13:22:57 +0200 <kuribas> Guest6: use a pastebin
2022-10-14 13:25:27 +0200nschoe(~q@141.101.51.197) (Quit: Switching off)
2022-10-14 13:29:10 +0200mastarija(~mastarija@2a05:4f46:e03:6000:a9d8:5076:9112:988e)
2022-10-14 13:30:40 +0200 <Guest6> kuribas https://pastebin.com/ZeaECyZD
2022-10-14 13:32:38 +0200 <kuribas> Guest6: maybe you want a RankN function?
2022-10-14 13:32:52 +0200 <kuribas> for example (forall a. Action m a - > m a)
2022-10-14 13:33:57 +0200 <kuribas> normally the a is scoped to the function signature, so it is bound to a single value.
2022-10-14 13:34:15 +0200 <kuribas> with a forall it is scoped to the passed function, so you can pass it different values.
2022-10-14 13:34:57 +0200Feuermagier(~Feuermagi@user/feuermagier)
2022-10-14 13:35:50 +0200 <kuribas> https://wiki.haskell.org/Rank-N_types
2022-10-14 13:38:30 +0200Topsi(~Topsi@dyndsl-095-033-095-014.ewe-ip-backbone.de)
2022-10-14 13:41:05 +0200vn36(~vn36@123.63.203.210) (Ping timeout: 268 seconds)
2022-10-14 13:43:26 +0200 <Guest6> kuribas it seems that is solving my issue indeed, thanks !
2022-10-14 13:44:46 +0200jinsun(~jinsun@user/jinsun)
2022-10-14 13:44:48 +0200Haskelytic(~Haskelyti@118.179.211.17) (Quit: Client closed)
2022-10-14 13:47:21 +0200 <kuribas> you're welcome :)
2022-10-14 13:51:54 +0200Everything(~Everythin@37.115.210.35)
2022-10-14 13:56:35 +0200 <dminuoso> Error: bytecode compiler can't handle unboxed tuples and sums.
2022-10-14 13:56:38 +0200 <dminuoso> Nooo!
2022-10-14 13:56:47 +0200 <dminuoso> My evil cunning plans all collapsed.
2022-10-14 13:58:53 +0200vn36(~vn36@123.63.203.210)
2022-10-14 13:59:06 +0200 <tomsmeding> dminuoso: wasn't that improved in one of the later ghc releases
2022-10-14 14:00:29 +0200 <dminuoso> Mmm Im on 9.0.2 already
2022-10-14 14:00:44 +0200 <dminuoso> It would definitely be nice, as the cabal build/test flow is just a bit cumbersome
2022-10-14 14:00:48 +0200TonyStone(~TonyStone@cpe-74-76-51-197.nycap.res.rr.com) (Read error: Connection reset by peer)
2022-10-14 14:00:53 +0200 <dminuoso> `cabal repl` is really nice
2022-10-14 14:02:26 +0200 <Axman6> Guest6: Welcome to the world of RankNTypes!
2022-10-14 14:02:41 +0200elbear(~lucian@188.24.138.239) (Ping timeout: 260 seconds)
2022-10-14 14:03:25 +0200stiell_(~stiell@gateway/tor-sasl/stiell) (Ping timeout: 258 seconds)
2022-10-14 14:04:17 +0200 <Guest6> Axman6 the more i learn about haskell the more my language extension lists grow !
2022-10-14 14:04:56 +0200 <Axman6> This is the way
2022-10-14 14:05:18 +0200 <Axman6> I kinda want a t-shirt that says "Today is a Good Day to Learn About RankNTypes"
2022-10-14 14:05:29 +0200 <tomsmeding> dminuoso: "later" meaning 9.4 or so, do you have a small test case?
2022-10-14 14:05:32 +0200 <Axman6> but instead, I need to go to sleep
2022-10-14 14:06:11 +0200Kaiepi(~Kaiepi@142.68.249.28) (Remote host closed the connection)
2022-10-14 14:06:30 +0200 <tomsmeding> dminuoso: seems to work in 9.2.3
2022-10-14 14:06:36 +0200Kaiepi(~Kaiepi@142.68.249.28)
2022-10-14 14:06:41 +0200 <dminuoso> tomsmeding: a = (# 'a' #)
2022-10-14 14:06:41 +0200 <tomsmeding> % :set -XUnboxedTuples
2022-10-14 14:06:41 +0200 <yahb2> <no output>
2022-10-14 14:06:52 +0200 <tomsmeding> % f :: (# Int, Int #) -> () ; f _ = ()
2022-10-14 14:06:52 +0200 <yahb2> Error: bytecode compiler can't handle unboxed tuples and sums. ; Possibly due to foreign import/export decls in source. ; Workaround: use -fobject-code, or compile this module to .o separately.
2022-10-14 14:06:54 +0200 <tomsmeding> :(
2022-10-14 14:07:01 +0200 <dminuoso> What version does yahb2 run on?
2022-10-14 14:07:25 +0200justsomeguy(~justsomeg@user/justsomeguy)
2022-10-14 14:07:31 +0200 <dminuoso> Its interesting that (# Int #) is accepted by the way. :p
2022-10-14 14:07:42 +0200 <dminuoso> Heck, even unboxed unit is admissable
2022-10-14 14:07:53 +0200 <tomsmeding> dminuoso: yahb2 is 8.10.7
2022-10-14 14:07:54 +0200 <dminuoso> % f :: (# #) -> (); f _ = ()
2022-10-14 14:07:54 +0200 <yahb2> <no output>
2022-10-14 14:08:12 +0200 <dminuoso> Im unsure why an unboxed unit is useful, but it feels symmetric.
2022-10-14 14:08:22 +0200 <tomsmeding> 🤔
2022-10-14 14:08:32 +0200 <dminuoso> WEll I guess it allows things like IO to be compiled to something without overhead
2022-10-14 14:08:57 +0200 <tomsmeding> isn't the point of unboxed unit that it takes _zero_ space instead of constant space?
2022-10-14 14:09:01 +0200 <Guest6> Axman6 are rankntypes particularly important ?
2022-10-14 14:09:05 +0200 <dminuoso> But that uses State#, which we could pretend to be (##) with a phantom type
2022-10-14 14:09:12 +0200 <dminuoso> tomsmeding: well guaranteed zero space.
2022-10-14 14:09:25 +0200 <dminuoso> I suppose unit might be elided in some cases too
2022-10-14 14:09:31 +0200 <hpc> it's like a void-returning function in C
2022-10-14 14:09:41 +0200 <tomsmeding> probably, but in a data type it's I think a full pointer
2022-10-14 14:10:10 +0200 <dminuoso> hpc: How would you construct `f :: Int -> (# #)` then?
2022-10-14 14:10:19 +0200 <dminuoso> Im not sure the comparison really holds, because you cant do that
2022-10-14 14:11:06 +0200 <dminuoso> `newtype IO a = IO (State# RealWorld -> (# State# RealWorld, a #))`
2022-10-14 14:11:23 +0200 <dminuoso> In this it makes sense, as its just a vehicle to drag a phantom type through, and provide some magical tokens that have no runtime representation
2022-10-14 14:11:32 +0200 <dminuoso> But State# is apparently deeply magical
2022-10-14 14:11:43 +0200 <dminuoso> (Isomorphic to (##) though as far as I can tell)
2022-10-14 14:11:48 +0200Kaiepi(~Kaiepi@142.68.249.28) (Ping timeout: 264 seconds)
2022-10-14 14:13:06 +0200 <tomsmeding> is it useful for yahb2 to be on a more recent compiler
2022-10-14 14:13:50 +0200 <dminuoso> Sure, how else could I procastinate with unboxed tuples on IRC?
2022-10-14 14:14:01 +0200 <tomsmeding> oh hey 9.2.4 is now recommended in ghcup!!!
2022-10-14 14:14:22 +0200elbear(~lucian@188.24.138.239)
2022-10-14 14:16:41 +0200stiell_(~stiell@gateway/tor-sasl/stiell)
2022-10-14 14:19:15 +0200 <merijn> Guest6: Not super, but OTOH, it's also not super complex
2022-10-14 14:19:47 +0200acidjnk(~acidjnk@p200300d6e7137a99918d58bfa2347072.dip0.t-ipconnect.de) (Ping timeout: 248 seconds)
2022-10-14 14:20:31 +0200spacenautx(~spacenaut@user/spacenautx)
2022-10-14 14:20:53 +0200 <tomsmeding> % :q
2022-10-14 14:20:53 +0200 <yahb2> <no output>
2022-10-14 14:20:58 +0200 <tomsmeding> % :set -XUnboxedTuples
2022-10-14 14:20:58 +0200 <yahb2> <no output>
2022-10-14 14:21:05 +0200 <tomsmeding> % f :: (# Int, Int #) -> () ; f _ = ()
2022-10-14 14:21:05 +0200 <yahb2> <no output>
2022-10-14 14:21:12 +0200 <tomsmeding> dminuoso: 9.2.4 now :)
2022-10-14 14:23:01 +0200elbear(~lucian@188.24.138.239) (Ping timeout: 268 seconds)
2022-10-14 14:23:42 +0200zxx7529(~Thunderbi@user/zxx7529)
2022-10-14 14:24:01 +0200rockystone(~rocky@user/rockymarine) (Ping timeout: 252 seconds)
2022-10-14 14:24:53 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 258 seconds)
2022-10-14 14:25:08 +0200 <dminuoso> Sweet, thank you
2022-10-14 14:26:40 +0200drlkf(~drlkf@chat.drlkf.net) (Quit: drlkf)
2022-10-14 14:26:58 +0200drlkf(~drlkf@chat.drlkf.net)
2022-10-14 14:27:34 +0200ChaiTRex(~ChaiTRex@user/chaitrex) (Ping timeout: 258 seconds)
2022-10-14 14:27:36 +0200drlkf(~drlkf@chat.drlkf.net) (Client Quit)
2022-10-14 14:27:53 +0200drlkf(~drlkf@chat.drlkf.net)
2022-10-14 14:28:05 +0200yahb2(~yahb2@2a01:4f8:c0c:5c7b::2) (Remote host closed the connection)
2022-10-14 14:28:49 +0200yahb2(~yahb2@2a01:4f8:c0c:5c7b::2)
2022-10-14 14:30:00 +0200ircbrowse_tom(~ircbrowse@2a01:4f8:1c1c:9319::1)
2022-10-14 14:30:01 +0200Server+Cnt
2022-10-14 14:31:12 +0200Kaiepi(~Kaiepi@142.68.249.28)
2022-10-14 14:32:36 +0200drlkf(~drlkf@chat.drlkf.net) (Client Quit)
2022-10-14 14:32:53 +0200drlkf(~drlkf@chat.drlkf.net)
2022-10-14 14:37:05 +0200rockystone(~rocky@user/rockymarine)
2022-10-14 14:37:31 +0200mastarija(~mastarija@2a05:4f46:e03:6000:a9d8:5076:9112:988e) (Quit: Leaving)
2022-10-14 14:38:40 +0200edrx(~Eduardo@2804:56c:d2cf:4c00:4e88:4940:415:b08a)
2022-10-14 14:39:34 +0200drlkf(~drlkf@chat.drlkf.net) (Quit: drlkf)
2022-10-14 14:39:51 +0200drlkf(~drlkf@chat.drlkf.net)
2022-10-14 14:40:38 +0200 <edrx> hi all! anyone knows/remembers any recent paper that uses box diagrams like the one at the bottom of this file? http://angg.twu.net/HASKELL/State1.hs.html
2022-10-14 14:41:28 +0200 <edrx> oops, I forgot to mention: on arxiv, or in some other place that makes the sources available...
2022-10-14 14:42:31 +0200stiell_(~stiell@gateway/tor-sasl/stiell) (Ping timeout: 258 seconds)
2022-10-14 14:43:00 +0200 <edrx> I finally found a way to change Tikz diagrams bit by bit from a REPL, and I would like to see if I can start with the source in Tikz for a box diagram like that an modify it
2022-10-14 14:43:02 +0200ccapndave(~ccapndave@xcpe-62-167-164-44.cgn.res.adslplus.ch)
2022-10-14 14:43:11 +0200ccapndave(~ccapndave@xcpe-62-167-164-44.cgn.res.adslplus.ch) (Client Quit)
2022-10-14 14:43:51 +0200stiell_(~stiell@gateway/tor-sasl/stiell)
2022-10-14 14:44:30 +0200drlkf(~drlkf@chat.drlkf.net) (Client Quit)
2022-10-14 14:44:47 +0200drlkf(~drlkf@chat.drlkf.net)
2022-10-14 14:47:33 +0200ircbrowse_tom(~ircbrowse@static.162.49.55.162.clients.your-server.de)
2022-10-14 14:47:38 +0200Server+Cnt
2022-10-14 14:49:19 +0200 <edrx> aah, there's one in Fong & Spivak: https://arxiv.org/pdf/1803.05316.pdf#page=4
2022-10-14 14:49:23 +0200 <edrx> sorry for the noise =)
2022-10-14 14:49:24 +0200finsternis(~X@23.226.237.192) (Read error: Connection reset by peer)
2022-10-14 14:50:47 +0200Guest6(~Guest6@2a01cb0408ee99001bcd18dfc58a6927.ipv6.abo.wanadoo.fr) (Quit: Client closed)
2022-10-14 14:52:16 +0200 <edrx> even better: https://github.com/appliedcategorytheory/TikZWD
2022-10-14 14:55:07 +0200ircbrowse_tom(~ircbrowse@2a01:4f8:1c1c:9319::1)
2022-10-14 14:55:12 +0200Server+Cnt
2022-10-14 14:57:45 +0200justsomeguy(~justsomeg@user/justsomeguy) (Quit: WeeChat 3.5)
2022-10-14 15:00:28 +0200zero(~z@user/zero)
2022-10-14 15:02:11 +0200freeside(~mengwong@bb115-66-48-84.singnet.com.sg) (Ping timeout: 260 seconds)
2022-10-14 15:03:24 +0200zzz(~z@user/zero) (Ping timeout: 264 seconds)
2022-10-14 15:03:36 +0200__monty__(~toonn@user/toonn)
2022-10-14 15:04:07 +0200tomsmeding(~tomsmedin@2a01:4f8:c0c:5e5e::2) (Quit: ZNC 1.8.2 - https://znc.in)
2022-10-14 15:04:22 +0200spacenautx(~spacenaut@user/spacenautx) (Quit: WeeChat 3.0)
2022-10-14 15:04:49 +0200tomsmeding(~tomsmedin@static.21.109.88.23.clients.your-server.de)
2022-10-14 15:07:56 +0200frost(~frost@user/frost) (Ping timeout: 244 seconds)
2022-10-14 15:08:16 +0200wonko(~wjc@2a0e:1c80:2:0:45:15:19:130) (Ping timeout: 246 seconds)
2022-10-14 15:08:39 +0200rockystone(~rocky@user/rockymarine) (Ping timeout: 268 seconds)
2022-10-14 15:10:13 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:657b:163b:3e09:9614)
2022-10-14 15:13:00 +0200Kaipei(~Kaiepi@142.68.249.28)
2022-10-14 15:14:04 +0200Kaipii(~Kaiepi@142.68.249.28)
2022-10-14 15:14:43 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:657b:163b:3e09:9614) (Ping timeout: 248 seconds)
2022-10-14 15:15:34 +0200thegeekinside(~thegeekin@189.180.7.159)
2022-10-14 15:16:51 +0200Kaiepi(~Kaiepi@142.68.249.28) (Ping timeout: 248 seconds)
2022-10-14 15:17:56 +0200Kaipei(~Kaiepi@142.68.249.28) (Ping timeout: 268 seconds)
2022-10-14 15:19:01 +0200ezzieyguywuf(~Unknown@user/ezzieyguywuf) (Remote host closed the connection)
2022-10-14 15:20:16 +0200ezzieyguywuf(~Unknown@user/ezzieyguywuf)
2022-10-14 15:21:26 +0200emad(~emad@156.214.189.113)
2022-10-14 15:22:21 +0200rockystone(~rocky@user/rockymarine)
2022-10-14 15:25:51 +0200elbear(~lucian@188.24.138.239)
2022-10-14 15:26:34 +0200son0p(~ff@181.136.122.143) (Quit: leaving)
2022-10-14 15:27:27 +0200rockystone(~rocky@user/rockymarine) (Ping timeout: 252 seconds)
2022-10-14 15:31:01 +0200ccapndave(~ccapndave@xcpe-62-167-164-44.cgn.res.adslplus.ch)
2022-10-14 15:31:48 +0200freeside(~mengwong@bb115-66-48-84.singnet.com.sg)
2022-10-14 15:32:37 +0200ll(~ll@atoulouse-258-1-7-21.w90-16.abo.wanadoo.fr)
2022-10-14 15:33:19 +0200zxx7529(~Thunderbi@user/zxx7529) (Quit: zxx7529)
2022-10-14 15:34:27 +0200geekosaur(~geekosaur@xmonad/geekosaur) (Quit: Leaving)
2022-10-14 15:36:12 +0200son0p(~ff@181.136.122.143)
2022-10-14 15:39:06 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
2022-10-14 15:46:00 +0200razetime(~quassel@117.193.4.154) (Ping timeout: 264 seconds)
2022-10-14 15:51:17 +0200freeside(~mengwong@bb115-66-48-84.singnet.com.sg) (Ping timeout: 252 seconds)
2022-10-14 15:54:44 +0200wroathe(~wroathe@user/wroathe)
2022-10-14 15:55:19 +0200rockystone(~rocky@user/rockymarine)
2022-10-14 15:56:06 +0200hololeap(~quassel@user/hololeap) (Quit: Bye)
2022-10-14 15:58:01 +0200hololeap(~quassel@user/hololeap)
2022-10-14 16:01:26 +0200nschoe(~q@141.101.51.197)
2022-10-14 16:03:26 +0200freeside(~mengwong@bb115-66-48-84.singnet.com.sg)
2022-10-14 16:05:09 +0200emad(~emad@156.214.189.113) (Quit: Leaving)
2022-10-14 16:06:21 +0200rockystone(~rocky@user/rockymarine) (Ping timeout: 260 seconds)
2022-10-14 16:08:54 +0200rockystone(~rocky@user/rockymarine)
2022-10-14 16:10:26 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 260 seconds)
2022-10-14 16:12:31 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:c6ca:2b6d:906a:6c9f) (Quit: WeeChat 2.8)
2022-10-14 16:13:07 +0200geekosaur(~geekosaur@xmonad/geekosaur)
2022-10-14 16:15:08 +0200 <ski> edrx : (not papers, but) possibly Bartosz Milewski uses such diagrams, not sure. there's also the somewhat related "railroad" diagrams, for `Maybe'/`Either'
2022-10-14 16:18:19 +0200Sgeo(~Sgeo@user/sgeo)
2022-10-14 16:18:48 +0200shriekingnoise(~shrieking@186.137.167.202)
2022-10-14 16:21:29 +0200acidjnk(~acidjnk@p54ad5adb.dip0.t-ipconnect.de)
2022-10-14 16:22:04 +0200kenran(~user@user/kenran) (Remote host closed the connection)
2022-10-14 16:26:24 +0200 <edrx> ski: where can I find examples of these railroad diagrams?
2022-10-14 16:27:41 +0200Guest|60(~Guest|60@137.155.240.225)
2022-10-14 16:28:22 +0200 <Guest|60> sorry i am confused how do i start the download of Haskell?
2022-10-14 16:28:46 +0200 <Guest|60> i copy and paste the command line prompt from the website but it gives me an error
2022-10-14 16:31:19 +0200edrx(~Eduardo@2804:56c:d2cf:4c00:4e88:4940:415:b08a) (Ping timeout: 268 seconds)
2022-10-14 16:31:46 +0200razetime(~quassel@117.193.4.154)
2022-10-14 16:32:35 +0200 <[exa]> Guest|60: what is your system and from which website do you copypaste the command?
2022-10-14 16:32:54 +0200 <[exa]> (also, ideally, what is the error :D )
2022-10-14 16:33:12 +0200 <Guest|60> https://www.haskell.org/downloads/
2022-10-14 16:33:24 +0200 <Guest|60> Set-ExecutionPolicy Bypass -Scope Process -Force;[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072;Invoke-Command -ScriptBlock ([ScriptBlock]::Create((Invoke-WebRequest https://www.haskell.org/ghcup/sh/bootstrap-haskell.ps1 -UseBasicParsing))) -ArgumentList $true
2022-10-14 16:33:55 +0200ec_(~ec@gateway/tor-sasl/ec) (Remote host closed the connection)
2022-10-14 16:33:56 +0200azimut(~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection)
2022-10-14 16:34:10 +0200 <[exa]> that's some kind of windows and powershell?
2022-10-14 16:34:26 +0200 <Guest|60> 'Set-ExecutionPolicy' is not recognized as an internal or external command,
2022-10-14 16:34:26 +0200 <Guest|60> operable program or batch file.
2022-10-14 16:34:33 +0200ec_(~ec@gateway/tor-sasl/ec)
2022-10-14 16:34:33 +0200 <Guest|60> yes windows
2022-10-14 16:34:34 +0200azimut(~azimut@gateway/tor-sasl/azimut)
2022-10-14 16:34:53 +0200 <Guest|60> i typed it into the command prompt
2022-10-14 16:35:44 +0200 <ski> you probably need to open a PowerShell, not an ordinary Command window (or `<Windows>-r')
2022-10-14 16:36:24 +0200elkcl(~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru) (Ping timeout: 264 seconds)
2022-10-14 16:36:27 +0200elkcl_(~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru)
2022-10-14 16:36:34 +0200elkcl_elkcl
2022-10-14 16:36:57 +0200 <[exa]> Guest|60: I didn't touch windows for like 15 years now so I really don't know, but there are many windows users around, so if you wait they will surely give some advice
2022-10-14 16:37:02 +0200 <Guest|60> thank you that was the issue
2022-10-14 16:37:07 +0200 <[exa]> ah nice. :]
2022-10-14 16:38:55 +0200jonathanx(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Ping timeout: 246 seconds)
2022-10-14 16:39:56 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-10-14 16:41:56 +0200burnsidesLlama(~burnsides@client-8-80.eduroam.oxuni.org.uk)
2022-10-14 16:45:49 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-10-14 16:45:55 +0200azimut(~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection)
2022-10-14 16:46:15 +0200azimut(~azimut@gateway/tor-sasl/azimut)
2022-10-14 16:49:13 +0200nate1(~nate@98.45.169.16)
2022-10-14 16:49:55 +0200Guest|60(~Guest|60@137.155.240.225) (Quit: Connection closed)
2022-10-14 16:54:08 +0200nate1(~nate@98.45.169.16) (Ping timeout: 268 seconds)
2022-10-14 16:59:03 +0200mikoto-chan(~mikoto-ch@193.185.223.3)
2022-10-14 17:02:44 +0200nschoe(~q@141.101.51.197) (Ping timeout: 268 seconds)
2022-10-14 17:03:53 +0200elbear(~lucian@188.24.138.239) (Ping timeout: 252 seconds)
2022-10-14 17:06:16 +0200ChaiTRex(~ChaiTRex@user/chaitrex) (Ping timeout: 258 seconds)
2022-10-14 17:06:57 +0200ChaiTRex(~ChaiTRex@user/chaitrex)
2022-10-14 17:07:15 +0200Ram-Z(~Ram-Z@li1814-254.members.linode.com) (Ping timeout: 250 seconds)
2022-10-14 17:07:49 +0200ft(~ft@p3e9bc57b.dip0.t-ipconnect.de)
2022-10-14 17:14:11 +0200CiaoSen(~Jura@p200300c95700eb002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
2022-10-14 17:18:11 +0200kuribas(~user@ptr-17d51emi970ix5xwkf4.18120a2.ip6.access.telenet.be) (Remote host closed the connection)
2022-10-14 17:19:36 +0200rockystone(~rocky@user/rockymarine) (Ping timeout: 264 seconds)
2022-10-14 17:26:07 +0200hgolden(~hgolden@cpe-172-251-233-141.socal.res.rr.com) (Remote host closed the connection)
2022-10-14 17:26:59 +0200acidjnk(~acidjnk@p54ad5adb.dip0.t-ipconnect.de) (Ping timeout: 252 seconds)
2022-10-14 17:29:21 +0200bontaq(~user@ool-45779fe5.dyn.optonline.net)
2022-10-14 17:31:39 +0200rockystone(~rocky@user/rockymarine)
2022-10-14 17:31:47 +0200teo(~teo@user/teo) (Ping timeout: 248 seconds)
2022-10-14 17:32:58 +0200burnsidesLlama(~burnsides@client-8-80.eduroam.oxuni.org.uk) (Remote host closed the connection)
2022-10-14 17:34:03 +0200ccapndave(~ccapndave@xcpe-62-167-164-44.cgn.res.adslplus.ch) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-10-14 17:34:39 +0200cfricke(~cfricke@user/cfricke) (Quit: WeeChat 3.7)
2022-10-14 17:35:37 +0200shapr(~user@144.163.4.141)
2022-10-14 17:37:24 +0200coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot)
2022-10-14 17:39:03 +0200elbear(~lucian@188.24.138.239)
2022-10-14 17:44:43 +0200vn36(~vn36@123.63.203.210)
2022-10-14 17:44:57 +0200elbear(~lucian@188.24.138.239) (Ping timeout: 252 seconds)
2022-10-14 17:45:46 +0200coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
2022-10-14 17:46:58 +0200coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Client Quit)
2022-10-14 17:47:09 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:657b:163b:3e09:9614)
2022-10-14 17:52:21 +0200vn36(~vn36@123.63.203.210) ()
2022-10-14 17:52:41 +0200euandreh(~euandreh@179.214.113.107) (Ping timeout: 268 seconds)
2022-10-14 17:53:13 +0200jakalx(~jakalx@base.jakalx.net) ()
2022-10-14 18:08:29 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:657b:163b:3e09:9614) (Remote host closed the connection)
2022-10-14 18:09:57 +0200elbear(~lucian@188.24.138.239)
2022-10-14 18:12:01 +0200shapr(~user@144.163.4.141) (Remote host closed the connection)
2022-10-14 18:12:20 +0200Kaipii(~Kaiepi@142.68.249.28) (Remote host closed the connection)
2022-10-14 18:12:44 +0200Kaipii(~Kaiepi@142.68.249.28)
2022-10-14 18:17:23 +0200chele(~chele@user/chele) (Remote host closed the connection)
2022-10-14 18:17:39 +0200Kaipii(~Kaiepi@142.68.249.28) (Ping timeout: 248 seconds)
2022-10-14 18:17:48 +0200elbear(~lucian@188.24.138.239) (Ping timeout: 264 seconds)
2022-10-14 18:18:35 +0200rockystone(~rocky@user/rockymarine) (Ping timeout: 268 seconds)
2022-10-14 18:22:29 +0200Ram-Z(~Ram-Z@li1814-254.members.linode.com)
2022-10-14 18:22:43 +0200califax(~califax@user/califx) (Remote host closed the connection)
2022-10-14 18:23:31 +0200califax(~califax@user/califx)
2022-10-14 18:24:12 +0200hgolden(~hgolden@cpe-172-251-233-141.socal.res.rr.com)
2022-10-14 18:24:32 +0200acidjnk(~acidjnk@p200300d6e7137a40c4feba2158f796a3.dip0.t-ipconnect.de)
2022-10-14 18:29:05 +0200rockystone(~rocky@user/rockymarine)
2022-10-14 18:32:40 +0200fserucas(~fserucas@2001:818:e376:a400:fb92:70c1:dd88:c7d7) (Ping timeout: 246 seconds)
2022-10-14 18:35:28 +0200merijn(~merijn@86.86.29.250) (Ping timeout: 246 seconds)
2022-10-14 18:36:02 +0200Everything(~Everythin@37.115.210.35) (Quit: leaving)
2022-10-14 18:36:30 +0200rockystone(~rocky@user/rockymarine) (Ping timeout: 268 seconds)
2022-10-14 18:38:59 +0200titibandit(~titibandi@xdsl-78-34-208-230.nc.de)
2022-10-14 18:40:42 +0200euandreh(~euandreh@179.214.113.107)
2022-10-14 18:41:49 +0200rockystone(~rocky@user/rockymarine)
2022-10-14 18:43:41 +0200Kaipii(~Kaiepi@142.68.249.28)
2022-10-14 18:45:23 +0200zmt00(~zmt00@user/zmt00) (Ping timeout: 248 seconds)
2022-10-14 18:46:23 +0200coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
2022-10-14 18:46:33 +0200Feuermagier(~Feuermagi@user/feuermagier) (Remote host closed the connection)
2022-10-14 18:46:58 +0200tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net)
2022-10-14 18:56:35 +0200pavonia(~user@user/siracusa) (Quit: Bye!)
2022-10-14 18:59:47 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:657b:163b:3e09:9614)
2022-10-14 18:59:48 +0200CiaoSen(~Jura@p200300c95700eb002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 264 seconds)
2022-10-14 19:01:14 +0200caryhartline(~caryhartl@2600:1700:2d0:8d30:85ce:60ba:541:2d5a)
2022-10-14 19:01:35 +0200ll(~ll@atoulouse-258-1-7-21.w90-16.abo.wanadoo.fr) (Ping timeout: 252 seconds)
2022-10-14 19:02:12 +0200merijn(~merijn@c-001-001-006.client.esciencecenter.eduvpn.nl)
2022-10-14 19:02:31 +0200freeside(~mengwong@bb115-66-48-84.singnet.com.sg) (Ping timeout: 260 seconds)
2022-10-14 19:02:42 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-10-14 19:03:32 +0200ll(~ll@atoulouse-258-1-7-21.w90-16.abo.wanadoo.fr)
2022-10-14 19:04:15 +0200aliosablack(~chomwitt@2a02:587:dc0c:c200:b1b7:d42d:7f9d:2308) (Ping timeout: 268 seconds)
2022-10-14 19:07:32 +0200jakalx(~jakalx@base.jakalx.net)
2022-10-14 19:07:48 +0200econo(uid147250@user/econo)
2022-10-14 19:20:02 +0200ezzieyguywuf(~Unknown@user/ezzieyguywuf) (Remote host closed the connection)
2022-10-14 19:20:16 +0200n8chan(~nate@98.45.169.16) (Quit: WeeChat 2.9)
2022-10-14 19:21:13 +0200ezzieyguywuf(~Unknown@user/ezzieyguywuf)
2022-10-14 19:25:21 +0200drlkf(~drlkf@chat.drlkf.net) (Quit: drlkf)
2022-10-14 19:25:41 +0200drlkf(~drlkf@chat.drlkf.net)
2022-10-14 19:25:55 +0200Major_Biscuit(~MajorBisc@c-001-015-051.client.tudelft.eduvpn.nl) (Ping timeout: 250 seconds)
2022-10-14 19:27:54 +0200elbear(~lucian@188.24.138.239)
2022-10-14 19:28:03 +0200titibandit(~titibandi@xdsl-78-34-208-230.nc.de) (Remote host closed the connection)
2022-10-14 19:31:17 +0200Digit(~user@user/digit) (Ping timeout: 252 seconds)
2022-10-14 19:31:33 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan) (Ping timeout: 258 seconds)
2022-10-14 19:31:38 +0200freeside(~mengwong@bb115-66-48-84.singnet.com.sg)
2022-10-14 19:32:01 +0200elbear(~lucian@188.24.138.239) (Ping timeout: 252 seconds)
2022-10-14 19:32:18 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan)
2022-10-14 19:32:29 +0200razetime(~quassel@117.193.4.154) (Remote host closed the connection)
2022-10-14 19:34:03 +0200zebrag(~chris@user/zebrag)
2022-10-14 19:34:11 +0200geekosaur(~geekosaur@xmonad/geekosaur) (Quit: Leaving)
2022-10-14 19:40:23 +0200zxx7529(~Thunderbi@user/zxx7529)
2022-10-14 19:42:16 +0200zmt00(~zmt00@user/zmt00)
2022-10-14 19:44:25 +0200geekosaur(~geekosaur@xmonad/geekosaur)
2022-10-14 19:50:43 +0200azimut(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 258 seconds)
2022-10-14 19:51:53 +0200azimut(~azimut@gateway/tor-sasl/azimut)
2022-10-14 19:52:18 +0200beteigeuze(~Thunderbi@2001:8a0:61b5:6101:f0c:e4e3:bfdc:91df)
2022-10-14 19:53:52 +0200Digitteknohippie(~user@27.53.200.146.dyn.plus.net)
2022-10-14 19:54:50 +0200finsternis(~X@23.226.237.192)
2022-10-14 19:57:22 +0200 <geekosaur> if I do this again, will I end up with three bugs, or four? 😛
2022-10-14 19:57:32 +0200 <geekosaur> oh, wrong channel
2022-10-14 19:57:51 +0200zxx7529(~Thunderbi@user/zxx7529) (Remote host closed the connection)
2022-10-14 20:05:28 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-10-14 20:09:31 +0200ccapndave(~ccapndave@xcpe-62-167-164-44.cgn.res.adslplus.ch)
2022-10-14 20:10:26 +0200bontaq(~user@ool-45779fe5.dyn.optonline.net) (Remote host closed the connection)
2022-10-14 20:11:25 +0200ChaiTRex(~ChaiTRex@user/chaitrex) (Ping timeout: 258 seconds)
2022-10-14 20:12:02 +0200ccapndave(~ccapndave@xcpe-62-167-164-44.cgn.res.adslplus.ch) (Client Quit)
2022-10-14 20:12:46 +0200 <EvanR> tomsmeding, I'm guessing it's mainly for claiming to have O(1) ++
2022-10-14 20:12:54 +0200bontaq(~user@ool-45779fe5.dyn.optonline.net)
2022-10-14 20:12:55 +0200 <tomsmeding> EvanR: right
2022-10-14 20:13:07 +0200 <tomsmeding> though O(1) fromList is kinda necessary for the O(1) ++ to be useful ;)
2022-10-14 20:13:48 +0200 <EvanR> I see line 5 does that, cool.
2022-10-14 20:14:04 +0200 <EvanR> I found this after not being able to remember where I saw some whole thing about the data type
2022-10-14 20:14:25 +0200 <EvanR> data Bag a = Nil | Node a | Bag a :<> Bag a, or something
2022-10-14 20:14:31 +0200ChaiTRex(~ChaiTRex@user/chaitrex)
2022-10-14 20:14:34 +0200 <EvanR> and how it's so great it's used in ghc
2022-10-14 20:14:41 +0200 <tomsmeding> right, same idea but without the ListBag
2022-10-14 20:14:56 +0200 <tomsmeding> in my usecases for the type I've not yet needed the listbag constructor
2022-10-14 20:17:09 +0200 <EvanR> did you mean O(1) toList
2022-10-14 20:17:14 +0200 <EvanR> because that would be interesting
2022-10-14 20:17:34 +0200 <tomsmeding> it's impossible to have O(1) (++) _and_ O(1) toList
2022-10-14 20:17:36 +0200 <tomsmeding> :p
2022-10-14 20:17:41 +0200Digitteknohippie(~user@27.53.200.146.dyn.plus.net) (Changing host)
2022-10-14 20:17:42 +0200Digitteknohippie(~user@user/digit)
2022-10-14 20:17:42 +0200DigitteknohippieDigit
2022-10-14 20:18:02 +0200 <tomsmeding> O(n) toList is the best you're going to get I think
2022-10-14 20:18:06 +0200 <EvanR> cetacean needed
2022-10-14 20:18:11 +0200 <tomsmeding> yeah
2022-10-14 20:18:20 +0200 <tomsmeding> classical difference lists also have O(n) toList
2022-10-14 20:18:37 +0200 <EvanR> or just push onto a list and reverse it
2022-10-14 20:18:46 +0200 <tomsmeding> but I'm not sure O(n) toList is so bad; after all, you also needed to do n work to build the thing :)
2022-10-14 20:20:05 +0200 <EvanR> so no idea where the OG paper on Bag is? xD
2022-10-14 20:20:14 +0200 <tomsmeding> does there need to be a paper on Bag?
2022-10-14 20:20:18 +0200waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340)
2022-10-14 20:20:22 +0200 <tomsmeding> as I said, I independently reinvented it multiple times :p
2022-10-14 20:21:12 +0200 <EvanR> is it understandable, yes. Does it work, yes. What's the history, etymology, where was it used or first used with this name, other details, it's not obvious just from looking at the paste xD
2022-10-14 20:21:24 +0200 <tomsmeding> right :p
2022-10-14 20:21:45 +0200 <tomsmeding> "where was it first used" is bound to be a question that some people are working on to make easier to answer
2022-10-14 20:22:00 +0200 <tomsmeding> recently I learned of the existence of a conference called "Mining Software Repositories"
2022-10-14 20:22:15 +0200Digit(~user@user/digit) (Ping timeout: 252 seconds)
2022-10-14 20:22:18 +0200 <tomsmeding> if that exists, research to code "etymology" is bound to also exist
2022-10-14 20:22:53 +0200 <EvanR> I guess mainly I thought I might run into the article I may have remembered
2022-10-14 20:23:13 +0200 <EvanR> seems like something you'd see in a functional hacker zine
2022-10-14 20:23:39 +0200 <tomsmeding> it's also something that wouldn't be out of place in a functional pearl about something
2022-10-14 20:23:49 +0200 <tomsmeding> but probably not the main point :p
2022-10-14 20:24:15 +0200 <EvanR> light weight stupid functional tricks
2022-10-14 20:24:35 +0200 <tomsmeding> they're the best though
2022-10-14 20:25:27 +0200AlexNoo_(~AlexNoo@178.34.163.70)
2022-10-14 20:26:55 +0200Digitteknohippie(~user@user/digit)
2022-10-14 20:28:29 +0200Alex_test(~al_test@178.34.161.92) (Ping timeout: 252 seconds)
2022-10-14 20:28:31 +0200AlexNoo(~AlexNoo@178.34.161.92) (Ping timeout: 246 seconds)
2022-10-14 20:28:42 +0200AlexZenon(~alzenon@178.34.161.92) (Ping timeout: 268 seconds)
2022-10-14 20:29:07 +0200kenran(~user@user/kenran)
2022-10-14 20:29:14 +0200 <tomsmeding> difference may be more "elegant" in some sense, but Bag is easier to understand
2022-10-14 20:29:18 +0200 <tomsmeding> *difference lists
2022-10-14 20:30:13 +0200 <tomsmeding> actually I can argue that they're both elegant in their own way
2022-10-14 20:30:18 +0200 <EvanR> DList has more blind faith xD
2022-10-14 20:30:31 +0200 <tomsmeding> difference lists is Cayley-transformation, Bag is mapping into the free monoid
2022-10-14 20:30:40 +0200 <EvanR> Bag has the flaws made obvious
2022-10-14 20:31:24 +0200 <EvanR> what's "the math" for cons onto a list and finally reversing it xD
2022-10-14 20:31:53 +0200 <tomsmeding> you mean wanting to construct a list front-to-back, and instead constructing the reverse back-to-front and then reversing it?
2022-10-14 20:32:09 +0200 <tomsmeding> ¯\_(ツ)_/¯
2022-10-14 20:32:21 +0200 <EvanR> "the math" name to make it sound better xD
2022-10-14 20:32:27 +0200justHauntedffffffradiofree
2022-10-14 20:32:44 +0200elbear(~lucian@188.24.138.239)
2022-10-14 20:32:46 +0200 <tomsmeding> not sure this has a nice algebraic generalisation
2022-10-14 20:32:48 +0200ffffffradiofreejusFffffffradiof
2022-10-14 20:32:58 +0200AlexZenon(~alzenon@178.34.163.70)
2022-10-14 20:33:09 +0200nate1(~nate@98.45.169.16)
2022-10-14 20:33:53 +0200Digitteknohippie(~user@user/digit) (Read error: Connection reset by peer)
2022-10-14 20:33:55 +0200Alex_test(~al_test@178.34.163.70)
2022-10-14 20:34:48 +0200 <EvanR> the problem itself doesn't seem very algebraic at first. Because it involves the technical difficulties of haskell not being able to (easily?) remember the end of an unfinished list and append to it
2022-10-14 20:34:57 +0200`2jt(~jtomas@90.red-88-17-81.dynamicip.rima-tde.net)
2022-10-14 20:35:25 +0200 <tomsmeding> it's not quite that you're not able to _remember_ the end
2022-10-14 20:35:31 +0200 <tomsmeding> you can: you can just keep a reference to it
2022-10-14 20:35:41 +0200 <tomsmeding> but that doesn't help you, because you'd like to mutate it in place
2022-10-14 20:35:49 +0200 <tomsmeding> in a sense
2022-10-14 20:36:14 +0200 <EvanR> which is what the usual evaluation of a list does behind the scenes, and dlist is one way to manage it
2022-10-14 20:36:28 +0200 <tomsmeding> what, the mutation?
2022-10-14 20:36:33 +0200 <tomsmeding> there's no mutation in dlist :p
2022-10-14 20:36:39 +0200 <EvanR> expressing "the end of this list"
2022-10-14 20:36:41 +0200 <tomsmeding> no
2022-10-14 20:36:51 +0200 <tomsmeding> you know that newtype DList a = DList ([a] -> [a]) ?
2022-10-14 20:36:54 +0200 <EvanR> the rest of this list
2022-10-14 20:37:08 +0200 <EvanR> yeah I got that, my words are just messed up
2022-10-14 20:37:15 +0200 <EvanR> which will happen if you mix levels in haskell
2022-10-14 20:37:20 +0200elbear(~lucian@188.24.138.239) (Ping timeout: 268 seconds)
2022-10-14 20:37:27 +0200 <tomsmeding> instead of keeping a _reference_ to the end of the list, you're kind of not having an end at all -- you're producing a function that _takes_ the end and then tucks it in place
2022-10-14 20:37:42 +0200 <EvanR> references to thunks being overwritten with new references to the answer
2022-10-14 20:37:55 +0200 <tomsmeding> oh in that sense
2022-10-14 20:38:05 +0200 <tomsmeding> still, untrue, I think
2022-10-14 20:38:11 +0200nate1(~nate@98.45.169.16) (Ping timeout: 260 seconds)
2022-10-14 20:38:15 +0200 <tomsmeding> it's not that the end is a thunk that's later replaced with the rest
2022-10-14 20:38:15 +0200 <c_wraith> nah, it's true enough
2022-10-14 20:38:33 +0200 <tomsmeding> though I guess everything in haskell can be seen in that light if you squint hard enough :P
2022-10-14 20:38:34 +0200 <EvanR> for the task of appending to the end of a list, whether it mutates like that or explicitly really doens't matter
2022-10-14 20:38:37 +0200 <c_wraith> Once you realize it with toList, anyway, you get a huge pile of thunks
2022-10-14 20:38:45 +0200 <tomsmeding> yeah sure
2022-10-14 20:38:46 +0200 <davean> Its actually the target that is rewritten
2022-10-14 20:39:04 +0200 <EvanR> makes more sense
2022-10-14 20:39:11 +0200 <EvanR> so you don't need to update all the references
2022-10-14 20:39:58 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-10-14 20:40:40 +0200 <davean> Look up "blackholing"
2022-10-14 20:41:20 +0200 <davean> This is critical to understanding how GHC performance and non-strictness behaves
2022-10-14 20:41:28 +0200 <EvanR> another way to get the same effect is unsafePerformIOing each node onto the end of a list, which reads from a Var somewhere, that some thread is writing to xD
2022-10-14 20:41:39 +0200 <c_wraith> Here's the funny thing about DList: I've re-invented it myself, before I even knew it was a common thing. "Huh, if I pass around a function that applies a prefix to a list, I don't need a separate reverse step"
2022-10-14 20:42:12 +0200 <c_wraith> EvanR: if you leave out the unsafePerformIO part, that's essentially what Chan gives you
2022-10-14 20:42:39 +0200 <EvanR> yeah reading from a Char is great
2022-10-14 20:42:46 +0200 <EvanR> Chan
2022-10-14 20:43:03 +0200 <EvanR> though it requires IO
2022-10-14 20:43:04 +0200 <c_wraith> ... also, toList on Chan actually does do the unsafeInterleaveIO stuff
2022-10-14 20:43:15 +0200 <davean> EvanR: It doesn't!
2022-10-14 20:43:25 +0200 <EvanR> :thonk:
2022-10-14 20:43:30 +0200 <davean> You can access it as a lazy list
2022-10-14 20:43:42 +0200 <c_wraith> you still need IO to write to it
2022-10-14 20:43:58 +0200 <davean> To write, not read
2022-10-14 20:44:04 +0200 <EvanR> that's fine. Actually that's a drop in replacement for my stupid idea
2022-10-14 20:44:21 +0200 <c_wraith> that's why I brought it up. :P
2022-10-14 20:44:30 +0200 <c_wraith> let someone else write all that fragile code!
2022-10-14 20:45:17 +0200 <EvanR> now to race that wild scheme with Bag or DList or cons-onto-list-backwards-then-reverse-it
2022-10-14 20:45:24 +0200 <EvanR> for the same purpose
2022-10-14 20:45:42 +0200 <EvanR> (which Bag devolves into)
2022-10-14 20:46:21 +0200freeside(~mengwong@bb115-66-48-84.singnet.com.sg) (Ping timeout: 260 seconds)
2022-10-14 20:48:42 +0200Digit(~user@user/digit)
2022-10-14 20:48:49 +0200beteigeuze(~Thunderbi@2001:8a0:61b5:6101:f0c:e4e3:bfdc:91df) (Ping timeout: 246 seconds)
2022-10-14 20:50:56 +0200kenran(~user@user/kenran) (Remote host closed the connection)
2022-10-14 20:51:14 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-10-14 20:51:19 +0200kenran(~user@user/kenran)
2022-10-14 20:53:09 +0200kenran(~user@user/kenran) (Remote host closed the connection)
2022-10-14 20:53:13 +0200freeside(~mengwong@bb115-66-48-84.singnet.com.sg)
2022-10-14 20:57:26 +0200mikoto-chan(~mikoto-ch@193.185.223.3) (Ping timeout: 260 seconds)
2022-10-14 20:58:15 +0200odnes(~odnes@5-203-243-27.pat.nym.cosmote.net)
2022-10-14 20:58:33 +0200odnes(~odnes@5-203-243-27.pat.nym.cosmote.net) (Remote host closed the connection)
2022-10-14 20:59:58 +0200raym(~aritra@user/raym) (Remote host closed the connection)
2022-10-14 21:04:22 +0200tam-carre(~tam-carre@2a01cb088a83b300a322b3f387318318.ipv6.abo.wanadoo.fr) (Remote host closed the connection)
2022-10-14 21:04:39 +0200tam-carre(~tam-carre@2a01cb088a83b300a322b3f387318318.ipv6.abo.wanadoo.fr)
2022-10-14 21:05:49 +0200raym(~aritra@user/raym)
2022-10-14 21:11:16 +0200chomwitt(~chomwitt@80.106.160.196)
2022-10-14 21:14:21 +0200elbear(~lucian@188.24.138.239)
2022-10-14 21:14:24 +0200wootehfoot(~wootehfoo@user/wootehfoot)
2022-10-14 21:14:52 +0200ccapndave(~ccapndave@xcpe-62-167-164-44.cgn.res.adslplus.ch)
2022-10-14 21:16:45 +0200ccapndave(~ccapndave@xcpe-62-167-164-44.cgn.res.adslplus.ch) (Client Quit)
2022-10-14 21:17:53 +0200jusFffffffradiofjustThumbs
2022-10-14 21:19:07 +0200 <dminuoso> Does quickcheck have some way to express `a === b === c`?
2022-10-14 21:19:48 +0200Guest69(~Guest69@uwyo-129-72-137-144.uwyo.edu)
2022-10-14 21:20:09 +0200justThumbsjustVain
2022-10-14 21:22:08 +0200 <dminuoso> Oh well, I guess I can just conjure this up with `counterexample`
2022-10-14 21:23:21 +0200 <[exa]> surprisingly not many
2022-10-14 21:23:30 +0200 <[exa]> (ways to express that)
2022-10-14 21:23:54 +0200 <dminuoso> Well, `counterexample` seems general enough to let you build most arbitrary things.
2022-10-14 21:24:25 +0200 <dminuoso> (===) is just a convenience wrapper for it
2022-10-14 21:25:22 +0200 <ski> express transitivity ? "all equal" ?
2022-10-14 21:25:30 +0200 <dminuoso> Yes
2022-10-14 21:25:30 +0200Guest69(~Guest69@uwyo-129-72-137-144.uwyo.edu) (Quit: Client closed)
2022-10-14 21:25:35 +0200 <ski> (which ? :)
2022-10-14 21:25:41 +0200 <[exa]> I'm slightly more concerned about the multicomparison, naive `shrink` will be super biased
2022-10-14 21:26:00 +0200 <dminuoso> For my case it wont be, its rather a sort of roundtrip comparison
2022-10-14 21:26:18 +0200 <dminuoso> ski: all equal
2022-10-14 21:26:46 +0200 <ski> assuming transitivity of the equivalence relation, presumably
2022-10-14 21:27:18 +0200 <dminuoso> I consider transitivity to be a requirement for Eq as per Haskell 2010 report.
2022-10-14 21:29:08 +0200raehik1(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 268 seconds)
2022-10-14 21:33:32 +0200coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) ()
2022-10-14 21:34:37 +0200 <ski> @type Test.QuickCheck.conjoin . (zipWith (Test.QuickCheck.===) `ap` tail) -- dminuoso ?
2022-10-14 21:34:39 +0200 <lambdabot> (Eq a, Show a) => [a] -> Test.QuickCheck.Property.Property
2022-10-14 21:35:55 +0200gurkenglas(~gurkengla@p548ac72e.dip0.t-ipconnect.de) (Ping timeout: 268 seconds)
2022-10-14 21:36:00 +0200coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
2022-10-14 21:37:32 +0200wonko(~wjc@2a0e:1c80:2:0:45:15:19:130)
2022-10-14 21:38:06 +0200kenran(~user@user/kenran)
2022-10-14 21:39:53 +0200michalz(~michalz@185.246.207.217)
2022-10-14 21:42:17 +0200tam-carre(~tam-carre@2a01cb088a83b300a322b3f387318318.ipv6.abo.wanadoo.fr) (Remote host closed the connection)
2022-10-14 21:42:27 +0200Digit(~user@user/digit) (Ping timeout: 248 seconds)
2022-10-14 21:42:34 +0200tam-carre(~tam-carre@2a01cb088a83b300a322b3f387318318.ipv6.abo.wanadoo.fr)
2022-10-14 21:43:42 +0200pavonia(~user@user/siracusa)
2022-10-14 21:43:55 +0200Digit(~user@user/digit)
2022-10-14 21:45:59 +0200kenran(~user@user/kenran) (Read error: Connection reset by peer)
2022-10-14 21:49:36 +0200gurkenglas(~gurkengla@p548ac72e.dip0.t-ipconnect.de)
2022-10-14 21:54:45 +0200LukeHoersten(~LukeHoers@user/lukehoersten)
2022-10-14 21:57:31 +0200AlexNoo_AlexNoo
2022-10-14 21:59:47 +0200 <tomsmeding> ski: sneakily throwing in the (->) monad
2022-10-14 22:01:31 +0200fserucas(~fserucas@2001:818:e376:a400:fb92:70c1:dd88:c7d7)
2022-10-14 22:04:59 +0200 <dminuoso> ski: Ah that's neat.
2022-10-14 22:05:12 +0200vorpuni(~pvorp@2001:861:3881:c690:f50d:140:1a73:58b4)
2022-10-14 22:08:01 +0200elbear(~lucian@188.24.138.239) (Ping timeout: 260 seconds)
2022-10-14 22:09:40 +0200TonyStone(~TonyStone@cpe-74-76-51-197.nycap.res.rr.com)
2022-10-14 22:09:52 +0200emmanuelux(~emmanuelu@user/emmanuelux)
2022-10-14 22:14:14 +0200 <ski> (of course, you could also just compare every element to the first one)
2022-10-14 22:14:31 +0200 <ski> tomsmeding : fastest way to derive it, for me :)
2022-10-14 22:15:49 +0200tam-carre(~tam-carre@2a01cb088a83b300a322b3f387318318.ipv6.abo.wanadoo.fr) (Remote host closed the connection)
2022-10-14 22:16:06 +0200tam-carre(~tam-carre@2a01cb088a83b300a322b3f387318318.ipv6.abo.wanadoo.fr)
2022-10-14 22:20:35 +0200ubert(~Thunderbi@178.165.199.63.wireless.dyn.drei.com) (Quit: ubert)
2022-10-14 22:23:25 +0200ss4(~wootehfoo@user/wootehfoot)
2022-10-14 22:26:30 +0200haritz(~hrtz@user/haritz) (Ping timeout: 264 seconds)
2022-10-14 22:26:41 +0200wootehfoot(~wootehfoo@user/wootehfoot) (Ping timeout: 260 seconds)
2022-10-14 22:28:45 +0200wootehfoot(~wootehfoo@user/wootehfoot)
2022-10-14 22:30:33 +0200talismanick(~talismani@2601:200:c100:c9e0::1b0b)
2022-10-14 22:31:26 +0200ss4(~wootehfoo@user/wootehfoot) (Ping timeout: 268 seconds)
2022-10-14 22:35:48 +0200wonko(~wjc@2a0e:1c80:2:0:45:15:19:130) (Ping timeout: 264 seconds)
2022-10-14 22:38:44 +0200kenran(~user@user/kenran)
2022-10-14 22:45:26 +0200nate1(~nate@98.45.169.16)
2022-10-14 22:45:27 +0200haritz(~hrtz@2a02:8010:65b5:0:6009:6384:e3cb:2220)
2022-10-14 22:45:27 +0200haritz(~hrtz@2a02:8010:65b5:0:6009:6384:e3cb:2220) (Changing host)
2022-10-14 22:45:27 +0200haritz(~hrtz@user/haritz)
2022-10-14 22:47:33 +0200kenran(~user@user/kenran) (Remote host closed the connection)
2022-10-14 22:48:24 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:657b:163b:3e09:9614) (Remote host closed the connection)
2022-10-14 22:50:03 +0200hololeap(~quassel@user/hololeap) (Quit: Bye)
2022-10-14 22:50:58 +0200causal(~user@2001:470:ea0f:3:329c:23ff:fe3f:1e0e)
2022-10-14 22:50:59 +0200hololeap(~quassel@user/hololeap)
2022-10-14 22:58:16 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:657b:163b:3e09:9614)
2022-10-14 22:58:27 +0200biberu(~biberu@user/biberu) (Read error: Connection reset by peer)
2022-10-14 22:59:10 +0200wonko(~wjc@2a0e:1c80:2:0:45:15:19:130)
2022-10-14 23:04:01 +0200acidjnk(~acidjnk@p200300d6e7137a40c4feba2158f796a3.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2022-10-14 23:06:32 +0200loras(~loras@c-73-139-125-125.hsd1.fl.comcast.net)
2022-10-14 23:07:08 +0200biberu(~biberu@user/biberu)
2022-10-14 23:09:12 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk)
2022-10-14 23:10:46 +0200jmdaemon(~jmdaemon@user/jmdaemon)
2022-10-14 23:12:06 +0200Taneb(~Taneb@runciman.hacksoc.org) (Ping timeout: 264 seconds)
2022-10-14 23:13:30 +0200Lycurgus(~juan@user/Lycurgus)
2022-10-14 23:18:47 +0200LukeHoersten(~LukeHoers@user/lukehoersten) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-10-14 23:19:48 +0200coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot)
2022-10-14 23:20:05 +0200LukeHoersten(~LukeHoers@user/lukehoersten)
2022-10-14 23:20:48 +0200wonko(~wjc@2a0e:1c80:2:0:45:15:19:130) (Ping timeout: 264 seconds)
2022-10-14 23:22:46 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-10-14 23:25:10 +0200beteigeuze(~Thunderbi@2001:8a0:61b5:6101:f0c:e4e3:bfdc:91df)
2022-10-14 23:26:08 +0200LukeHoersten(~LukeHoers@user/lukehoersten) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-10-14 23:27:42 +0200fserucas(~fserucas@2001:818:e376:a400:fb92:70c1:dd88:c7d7) (Quit: Leaving)
2022-10-14 23:27:48 +0200raehik1(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-10-14 23:29:51 +0200beteigeuze(~Thunderbi@2001:8a0:61b5:6101:f0c:e4e3:bfdc:91df) (Remote host closed the connection)
2022-10-14 23:30:10 +0200beteigeuze(~Thunderbi@2001:8a0:61b5:6101:9233:19e9:6537:6e73)
2022-10-14 23:33:05 +0200zebrag(~chris@user/zebrag) (Ping timeout: 268 seconds)
2022-10-14 23:33:35 +0200zebrag(~chris@user/zebrag)
2022-10-14 23:35:12 +0200tam-carre(~tam-carre@2a01cb088a83b300a322b3f387318318.ipv6.abo.wanadoo.fr) (Remote host closed the connection)
2022-10-14 23:46:37 +0200talismanick(~talismani@2601:200:c100:c9e0::1b0b) (Ping timeout: 246 seconds)
2022-10-14 23:48:41 +0200nate1(~nate@98.45.169.16) (Ping timeout: 252 seconds)
2022-10-14 23:50:05 +0200Lycurgus(~juan@user/Lycurgus) (Quit: Exeunt juan@acm.org)
2022-10-14 23:51:26 +0200michalz(~michalz@185.246.207.217) (Remote host closed the connection)
2022-10-14 23:53:01 +0200takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2022-10-14 23:56:33 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-10-14 23:57:54 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk) (Remote host closed the connection)