2021/06/03

2021-06-03 00:00:47 +0200 <djb2021> is there a function to transcript this conversation?
2021-06-03 00:00:56 +0200 <dminuoso> djb2021: Check the topic
2021-06-03 00:01:00 +0200 <djb2021> i want to read it tomorrow again
2021-06-03 00:01:06 +0200 <dminuoso> We provide full channel logging
2021-06-03 00:01:12 +0200 <dminuoso> /topic
2021-06-03 00:01:37 +0200 <dminuoso> djb2021: in hpc's example, because the type of 'Red is Color (i.e. 'Red :: Color -- note that both left hand and right hand side are types), there exists no values of type 'Red, not even undefined.
2021-06-03 00:01:46 +0200 <dminuoso> (Because again, the type of 'Red is not Type)
2021-06-03 00:01:50 +0200 <nitrix> dminuoso, Most IRC clients let you escape / with another /, so //topic should work, or you can also do /say /topic which I think is in the RFC.
2021-06-03 00:01:57 +0200 <dminuoso> /foo
2021-06-03 00:02:03 +0200 <dminuoso> nitrix: Ah I was always curious about the syntax :)
2021-06-03 00:02:07 +0200 <nitrix> :)
2021-06-03 00:02:26 +0200 <boxscape> djb2021 these are the logs for today https://ircbrowse.tomsmeding.com/day/lchaskell/2021/06/02
2021-06-03 00:02:39 +0200 <hpc> one final detail is unboxing
2021-06-03 00:02:40 +0200 <dminuoso> djb2021: The main usefulness of this DataKinds, is that we can pattern match on these lifted types *similarly* to how we can pattern match on nullary sum types in the value level
2021-06-03 00:02:53 +0200 <dminuoso> So you could write something like
2021-06-03 00:02:57 +0200 <hpc> which essentially is for values that don't have all the thunk wrapping around them
2021-06-03 00:03:03 +0200 <hpc> % :t 5#
2021-06-03 00:03:03 +0200 <yahb> hpc: Int#
2021-06-03 00:03:07 +0200 <hpc> % :k Int#
2021-06-03 00:03:07 +0200 <yahb> hpc: TYPE 'GHC.Exts.IntRep
2021-06-03 00:03:09 +0200 <djb2021> boxscape: thank you very much
2021-06-03 00:03:22 +0200 <hpc> you don't really get into that unless you're doing FFI or really heavy optimization
2021-06-03 00:03:32 +0200 <hpc> but it's useful to know it's there
2021-06-03 00:04:46 +0200 <hpc> the # there is just part of the identifier name, and used by convention to mark unboxed stuff
2021-06-03 00:05:01 +0200 <hpc> so like you don't get Light# automagically or anything
2021-06-03 00:05:17 +0200 <dminuoso> % type family Value n :: Nat where Value 'Red = 10; Value 'Green = 20
2021-06-03 00:05:17 +0200 <yahb> dminuoso:
2021-06-03 00:05:35 +0200 <dminuoso> djb2021: ^- here. This is a type level equivalent of `\f -> case f of Red -> 10; Green -> 20`
2021-06-03 00:05:45 +0200 <dminuoso> (yes, we can have numbers on the type level too!)
2021-06-03 00:05:54 +0200 <hpc> % :k Value
2021-06-03 00:05:54 +0200 <yahb> hpc: Color -> Nat
2021-06-03 00:06:10 +0200amahl(~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) (Ping timeout: 245 seconds)
2021-06-03 00:06:14 +0200ddellacosta(~ddellacos@86.106.121.17)
2021-06-03 00:06:43 +0200 <dminuoso> djb2021: So you see, there's this deep rabbit hole that opens up when you realize this type system lets you pattern match on types, express computations, etc..
2021-06-03 00:06:50 +0200unyu(~pyon@user/pyon) (Ping timeout: 252 seconds)
2021-06-03 00:06:53 +0200 <dminuoso> Next up we have type level lists too..
2021-06-03 00:07:00 +0200dhil(~dhil@195.213.192.85) (Ping timeout: 245 seconds)
2021-06-03 00:07:21 +0200davidnutting(~nuttingd@75.164.99.232) (Quit: WeeChat 3.1)
2021-06-03 00:07:38 +0200davidnutting(~nuttingd@75.164.99.232)
2021-06-03 00:07:42 +0200 <dminuoso> % kind! (Value 'Red)
2021-06-03 00:07:42 +0200 <yahb> dminuoso: ; <interactive>:100:1: error:; * Variable not in scope: kind :: Array i0 e; * Perhaps you meant one of these: `find' (imported from Data.List), `BSL.find' (imported from Data.ByteString.Lazy), `BS.find' (imported from Data.ByteString); <interactive>:100:8: error: Data constructor not in scope: Value :: Name -> i0
2021-06-03 00:07:50 +0200 <dminuoso> % :kind! (Value 'Red)
2021-06-03 00:07:50 +0200 <yahb> dminuoso: Nat; = 10
2021-06-03 00:07:54 +0200 <dminuoso> % :kind! (Value 'Green)
2021-06-03 00:07:54 +0200 <yahb> dminuoso: Nat; = 20
2021-06-03 00:08:21 +0200 <djb2021> wow, currently this blows my mind - but i got a few things the equivalence with match case is clear.
2021-06-03 00:09:38 +0200 <dminuoso> % :set -XPolyKinds
2021-06-03 00:09:38 +0200 <yahb> dminuoso:
2021-06-03 00:09:42 +0200 <dminuoso> % newtype Tagged s b = Tagged b
2021-06-03 00:09:42 +0200 <yahb> dminuoso:
2021-06-03 00:09:59 +0200 <djb2021> the "family" in the definition confuses me a little bit - i never used this before
2021-06-03 00:10:09 +0200 <dminuoso> djb2021: "type family" is just a type level function, nothing more
2021-06-03 00:10:35 +0200 <dminuoso> well, there's some differences, but you can think of them as type level functions
2021-06-03 00:10:38 +0200 <dminuoso> type family is just the name for it
2021-06-03 00:10:42 +0200 <hpc> % class LowerColor (c :: Color) where color :: Color; instance LowerColor Red where color = Red; instanceLowerColor Green where color = Green
2021-06-03 00:10:42 +0200 <yahb> hpc: ; <interactive>:105:53: error: parse error on input `instance'
2021-06-03 00:10:55 +0200Ariakenom(~Ariakenom@2001:9b1:efb:fc00:8504:3672:14f4:b190) (Quit: Leaving)
2021-06-03 00:10:58 +0200 <hpc> % class LowerColor (c :: Color) where color :: Color
2021-06-03 00:10:59 +0200 <yahb> hpc: ; <interactive>:106:37: error:; * Could not deduce (LowerColor c0); from the context: LowerColor c; bound by the type signature for:; color :: forall (c :: Color). LowerColor c => Color; at <interactive>:106:37-50; The type variable `c0' is ambiguous; * In the ambiguity check for `color'; To defer the ambiguity check to use sites, enable AllowAmb
2021-06-03 00:11:20 +0200ddellacosta(~ddellacos@86.106.121.17) (Ping timeout: 272 seconds)
2021-06-03 00:11:21 +0200 <hpc> oh right
2021-06-03 00:12:00 +0200 <hpc> % class LowerColor (c :: Color) where color :: Tagged c Color
2021-06-03 00:12:00 +0200 <yahb> hpc:
2021-06-03 00:12:10 +0200 <hpc> % instance LowerColor Red where color = Tagged Red
2021-06-03 00:12:10 +0200 <yahb> hpc:
2021-06-03 00:12:16 +0200 <hpc> % instance LowerColor Green where color = Tagged Green
2021-06-03 00:12:16 +0200 <yahb> hpc:
2021-06-03 00:12:27 +0200 <hpc> you can do something like that to get your types back to the value level
2021-06-03 00:12:32 +0200 <hpc> and it doesn't have to be so direct
2021-06-03 00:14:29 +0200 <dminuoso> % f :: forall (n :: Nat) (k :: Color) (l :: Color). (KnownNat n, n ~ Value k + Value l) => Tagged k String -> Tagged l String -> (Integer, Int); f (Tagged l) (Tagged r) = (natVal (Proxy @n), length l + length r)
2021-06-03 00:14:29 +0200 <yahb> dminuoso:
2021-06-03 00:15:00 +0200 <dminuoso> % f (Tagged "its red" :: Tagged 'Red String) (Tagged "its green" :: Tagged 'Green String)
2021-06-03 00:15:00 +0200 <yahb> dminuoso: (30,16)
2021-06-03 00:15:37 +0200 <dminuoso> djb2021: Next level now! We can define variables (by using equality constraints), and then we can pull these type level numbers back into the value level
2021-06-03 00:16:21 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-03 00:16:43 +0200 <janus> ok i have made a repo for my project with template haskell that doesn't work with profiling: http://github.com/ysangkok/cabal-profiling-issue
2021-06-03 00:16:45 +0200 <dminuoso> Note in particular
2021-06-03 00:16:56 +0200 <dminuoso> There is a constraint (its left to a =>):
2021-06-03 00:17:00 +0200 <dminuoso> n ~ Value k + Value l
2021-06-03 00:17:13 +0200 <janus> if i remove cabal.project, it compiles, but if it is left there, it doesn't. i don't understand it since i thought profiling shouldn't need source changes
2021-06-03 00:17:29 +0200 <djb2021> wait - i didn't understand your % f :: forall ...
2021-06-03 00:17:40 +0200 <dminuoso> djb2021: ignore the forall bits until the dot.
2021-06-03 00:17:45 +0200 <dminuoso> pretend this reads:
2021-06-03 00:17:48 +0200 <hpc> djb2021: copy it to a text editor and split it into two lines on the ;
2021-06-03 00:17:53 +0200 <dminuoso> (KnownNat n, n ~ Value k + Value l) => Tagged k String -> Tagged l String -> (Integer, Int); f (Tagged l) (Tagged r) = (natVal (Proxy @n), length l + length r)
2021-06-03 00:18:21 +0200 <dminuoso> Think of this as setting the variable `n` to be the type family Value applied to k, plus (this is a type level natural plus) type family Value applied to l
2021-06-03 00:18:25 +0200 <dminuoso> If you recall my above definition
2021-06-03 00:18:31 +0200 <dminuoso> that means `n ~ 30` at the type level
2021-06-03 00:18:34 +0200michalz(~user@185.246.204.60) (Remote host closed the connection)
2021-06-03 00:18:49 +0200 <dminuoso> natVal let's you pull down a type level natural back into the value world (true magic going on!)
2021-06-03 00:19:18 +0200 <hpc> % :t natVal
2021-06-03 00:19:18 +0200 <yahb> hpc: KnownNat n => proxy n -> Integer
2021-06-03 00:19:34 +0200 <hpc> it's like an infinite version of class LowerColor
2021-06-03 00:20:55 +0200 <monochrom> Wait a second, I think I heard that profiling and TH can't mix.
2021-06-03 00:21:46 +0200 <Arsen> can cabal build deps on all cores in cabal install? right now, I'm stuck on a single pandoc build compiling one file at a time, with another 11 cores fully free
2021-06-03 00:22:07 +0200 <dminuoso> djb2021: or maybe a different example
2021-06-03 00:22:09 +0200 <dminuoso> % type family Len s where Len '[] = 0; Len (x ': xs) = 1 + Len xs
2021-06-03 00:22:09 +0200 <yahb> dminuoso:
2021-06-03 00:22:15 +0200 <dminuoso> Here, type level length for type level lists
2021-06-03 00:23:15 +0200ddellacosta(~ddellacos@86.106.121.115)
2021-06-03 00:23:28 +0200 <djb2021> so computations at the type level?
2021-06-03 00:24:05 +0200 <dminuoso> % tyl :: forall (n :: Nat) (s :: [Data.Kind.Type]) a. (KnownNat n, n ~ Len s) => Tagged s a -> Integer; tyl _ = natVal (Proxy @n)
2021-06-03 00:24:05 +0200 <yahb> dminuoso:
2021-06-03 00:24:20 +0200 <janus> monochrom: oh :O but if that is the case, why doesn't ghc immediatly quit once it sees LANGUAGE TemplateHaskell and profiling is on?
2021-06-03 00:24:37 +0200 <dminuoso> % tyl (Tagged "foo" :: Tagged '[Float, Double, Int, 'Red, 'Green] String)
2021-06-03 00:24:37 +0200 <yahb> dminuoso: ; <interactive>:138:29: error:; * Expected a type, but 'Red has kind `Color'; * In the first argument of `Tagged', namely '[Float, Double, Int, 'Red, 'Green]; In an expression type signature: Tagged '[Float, Double, Int, 'Red, 'Green] String; In the first argument of `tyl', namely `(Tagged "foo" :: Tagged '[Float, Double, Int, 'Red, 'Green] String)'
2021-06-03 00:24:44 +0200 <dminuoso> % tyl (Tagged "foo" :: Tagged '[Float, Double, Int] String)
2021-06-03 00:24:44 +0200 <yahb> dminuoso: 3
2021-06-03 00:24:48 +0200 <dminuoso> err bad example
2021-06-03 00:24:56 +0200 <dminuoso> % tyl (Tagged "foo" :: Tagged '[Float, Double, Int, Char, IO ()] String)
2021-06-03 00:24:56 +0200 <yahb> dminuoso: 5
2021-06-03 00:24:59 +0200 <dminuoso> djb2021: Yes!
2021-06-03 00:26:19 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-03 00:26:41 +0200 <dminuoso> djb2021: The beauty of these type level computations, is that the resulting types can be used to type terms with.
2021-06-03 00:26:50 +0200eight(~eight@user/eight) (Quit: Rebooting)
2021-06-03 00:27:23 +0200 <hpc> and that the type-level language closely resembles the value-level language
2021-06-03 00:27:36 +0200 <hpc> if you squint, C++ has been doing type-level programming for ages with templates
2021-06-03 00:27:46 +0200 <dminuoso> servant is a prime example of this. You express an API with a very rich type, and then you use complicated type level computations to turn that rich type into something you can type a function with.
2021-06-03 00:28:15 +0200 <djb2021> that is exactly what i wanted to write but i hesitated because i was not sure if that is blasphemic :)
2021-06-03 00:28:41 +0200 <djb2021> ??
2021-06-03 00:28:42 +0200gehmehgeh(~user@user/gehmehgeh) (Quit: Leaving)
2021-06-03 00:28:43 +0200 <dminuoso> djb2021: https://hackage.haskell.org/package/servant-0.18.2/docs/Servant-API-Generic.html#t:ToServant
2021-06-03 00:28:55 +0200 <djb2021> i have never used the servant library
2021-06-03 00:28:56 +0200ddellacosta(~ddellacos@86.106.121.115) (Ping timeout: 268 seconds)
2021-06-03 00:28:58 +0200 <hpc> djb2021: now you're getting it :D
2021-06-03 00:29:15 +0200eight(~eight@user/eight)
2021-06-03 00:29:24 +0200 <dminuoso> djb2021: imagine we did this:
2021-06-03 00:29:34 +0200 <dminuoso> data (path :: k) :> (a :: *)
2021-06-03 00:29:36 +0200 <dminuoso> % data (path :: k) :> (a :: *)
2021-06-03 00:29:36 +0200 <yahb> dminuoso: ; <interactive>:141:27: error:; Operator applied to too few arguments: *; With NoStarIsType, `*' is treated as a regular type operator. ; Did you mean to use `Type' from Data.Kind instead?
2021-06-03 00:29:40 +0200 <dminuoso> % data (path :: k) :> (a :: Type)
2021-06-03 00:29:40 +0200 <yahb> dminuoso: ; <interactive>:142:27: error:; Ambiguous occurrence `Type'; It could refer to; either `Language.Haskell.TH.Type', imported from `Language.Haskell.TH' (and originally defined in `Language.Haskell.TH.Syntax'); or `Data.Kind.Type', imported from `Data.Kind' (and originally defined in `GHC.Types')
2021-06-03 00:29:43 +0200 <dminuoso> % data (path :: k) :> (a :: Data.Kind.Type)
2021-06-03 00:29:43 +0200 <yahb> dminuoso:
2021-06-03 00:30:09 +0200 <hpc> there's something morbidly hilarious about "Data.Kind.Type"
2021-06-03 00:30:12 +0200 <dminuoso> djb2021: now next up, you have to accept that strings can exist on the type level too (that is "foo" can be a type!)
2021-06-03 00:30:22 +0200 <dminuoso> djb2021: are you with me so far?
2021-06-03 00:30:48 +0200azeem(~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it) (Remote host closed the connection)
2021-06-03 00:30:58 +0200azeem(~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it)
2021-06-03 00:31:35 +0200 <djb2021> i didn't understand the servant stuff - what is the goal of the library
2021-06-03 00:31:41 +0200 <dminuoso> you will in a second! :)
2021-06-03 00:31:59 +0200 <dminuoso> next up we will conjure a data kind using what we learned
2021-06-03 00:32:29 +0200 <dminuoso> % data Method = Post | Get
2021-06-03 00:32:29 +0200 <yahb> dminuoso:
2021-06-03 00:32:37 +0200 <dminuoso> Now we have a type level 'Post and 'Get
2021-06-03 00:32:39 +0200tonyday(~user@202-65-93-249.ip4.superloop.com) (Read error: Connection reset by peer)
2021-06-03 00:32:52 +0200 <dminuoso> The above data type :> exists without needing any lifting
2021-06-03 00:32:54 +0200tonyday(~user@202-65-93-249.ip4.superloop.com)
2021-06-03 00:33:53 +0200 <dminuoso> djb2021: if you keep on doing this, you get to have a purely type thing that looks like this:
2021-06-03 00:34:25 +0200 <dminuoso> % type Endpoint = "users" :> Capture "userId" Int :> Get '[JSON] User
2021-06-03 00:34:25 +0200 <yahb> dminuoso: ; <interactive>:145:28: error: Not in scope: type constructor or class `Capture'; <interactive>:145:58: error: Not in scope: type constructor or class `JSON'; <interactive>:145:64: error: Not in scope: type constructor or class `User'
2021-06-03 00:34:30 +0200 <dminuoso> Which is just a pure type
2021-06-03 00:34:37 +0200 <dminuoso> If we can then use type machinery to say:
2021-06-03 00:35:14 +0200wonko(~wjc@62.115.229.50) (Quit: See You Space Cowboy..)
2021-06-03 00:35:17 +0200 <dminuoso> f :: ServerType Endpoint; f userId = loadUserFromDatabase userId
2021-06-03 00:35:24 +0200ru0mad(~ru0mad@82-64-17-144.subs.proxad.net)
2021-06-03 00:36:01 +0200 <dminuoso> The choice `ServerType` is imaginary, but imagine this was a sophisticated type calculation, that would *return* `Int -> IO User`
2021-06-03 00:36:38 +0200 <dminuoso> This machinery lets us derive a router, server handlers, client handlers - all well typed because the shape is communicated through a type
2021-06-03 00:36:43 +0200ru0mad(~ru0mad@82-64-17-144.subs.proxad.net) (Client Quit)
2021-06-03 00:36:54 +0200favonia(~favonia@user/favonia) (Ping timeout: 264 seconds)
2021-06-03 00:37:25 +0200 <hpc> and then you can run "curl http://localhost/users/5" to get that user's data
2021-06-03 00:38:29 +0200davidnutting(~nuttingd@75.164.99.232) (Quit: WeeChat 3.1)
2021-06-03 00:38:34 +0200favonia(~favonia@user/favonia)
2021-06-03 00:39:01 +0200 <dminuoso> djb2021: Concretely, servant lets you a) generate a client automatically (with automatically inferred types!) for each endpoint, b) with the type checker verify that your request handlers match the request/response types exactly (so you cant forget an argument, or falsey assume that the specified userId is of type String), c) you can automatically generate documentation - all from a single type.
2021-06-03 00:39:12 +0200 <dminuoso> All this is driven by complex type level computation
2021-06-03 00:39:26 +0200davidnutting(~nuttingd@75.164.99.232)
2021-06-03 00:39:41 +0200davidnutting(~nuttingd@75.164.99.232) (Client Quit)
2021-06-03 00:40:02 +0200__monty__(~toonn@user/toonn) (Quit: leaving)
2021-06-03 00:41:18 +0200ddellacosta(~ddellacos@86.106.121.77)
2021-06-03 00:41:31 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection)
2021-06-03 00:43:04 +0200myShoggoth(~myShoggot@97-120-89-117.ptld.qwest.net)
2021-06-03 00:43:07 +0200derelict(~winter@2603-6011-f901-9e5b-0000-0000-0000-08cf.res6.spectrum.com) (Ping timeout: 268 seconds)
2021-06-03 00:43:26 +0200tonyday(~user@202-65-93-249.ip4.superloop.com) (ERC (IRC client for Emacs 28.0.50))
2021-06-03 00:44:09 +0200 <djb2021> let me summarize if i understood correctly: i design an API by defining it as a type? where is the difference to the way that is done with swagger-codegen? with this approach (in java) code is generated for the controller and client code generation is possible there too but i have never used it.
2021-06-03 00:45:07 +0200renzhi(~xp@2607:fa49:6500:bc00::e7b)
2021-06-03 00:45:09 +0200 <djb2021> where exactly is the strength
2021-06-03 00:45:20 +0200 <djb2021> of the servant approach?
2021-06-03 00:45:53 +0200ddellacosta(~ddellacos@86.106.121.77) (Ping timeout: 252 seconds)
2021-06-03 00:46:00 +0200 <dminuoso> djb2021: with swagger there is no guarantee your swagger spec is ever in sync with the code. you can simply forget to re-run your code generator.
2021-06-03 00:46:10 +0200 <hpc> the advantage is remaining in-language, rather than having to resort to writing some kind of yaml/json/xml file
2021-06-03 00:46:13 +0200 <dminuoso> and this applies to every part that uses swagger
2021-06-03 00:46:44 +0200 <dminuoso> djb2021: with servant, if the type ever changes and you forget to update your code, it will produce a type error.
2021-06-03 00:47:41 +0200jolly(~jolly@208.180.97.158) (Ping timeout: 272 seconds)
2021-06-03 00:48:02 +0200 <dminuoso> and servant offers hooks to customize behavior in the server for example, allowing you to attach further arbitrary things onto the API
2021-06-03 00:49:16 +0200 <dminuoso> say a full authentication, which automatically communicates the logged in user into the type system, so that the handlers suddenly receive an additional argument for the user - but not because its buitin but because you can extend it this way
2021-06-03 00:49:18 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-03 00:53:07 +0200 <djb2021> ok, i understand that because the definitions are on the type level any missing implementation detail is found during compile time. This is a clear advantage. But isn't the API first approach (think of several teams, some of them for frontends) a good thing? Is it better to define an API in the language?
2021-06-03 00:53:54 +0200 <dminuoso> to be fair, servant was an experiment originally I think
2021-06-03 00:54:27 +0200myShoggoth(~myShoggot@97-120-89-117.ptld.qwest.net) (Read error: Connection reset by peer)
2021-06-03 00:54:46 +0200myShoggoth(~myShoggot@97-120-89-117.ptld.qwest.net)
2021-06-03 00:54:54 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
2021-06-03 00:55:39 +0200 <dminuoso> servant comes at a steep cost, mistakes result in type errors that can be hard to decipher - especially to someone new to servant. you accumulate a lot of extensions to even express a type, and then you might be confused about what things even mean
2021-06-03 00:56:34 +0200 <dminuoso> Is it good? I think it has good uses, but wouldn't recommend it to everybody. I merely mentioned it to demonstrate what we can do just at the type level, where you might have thought `Int` and `(->)` was the extend of it. :p
2021-06-03 00:56:45 +0200pera(~pera@0541db7e.skybroadband.com)
2021-06-03 00:57:07 +0200peraGuest3714
2021-06-03 00:57:11 +0200 <djb2021> ok, wait, i have been reading a little bit through servant -- with servant i can combine several APIs to a resulting single API, right?
2021-06-03 00:57:25 +0200 <dminuoso> what do you mean?
2021-06-03 00:57:35 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:3547:b6d4:7412:5857) (Remote host closed the connection)
2021-06-03 00:58:04 +0200yaroot(~yaroot@6.3.30.125.dy.iij4u.or.jp) (Quit: The Lounge - https://thelounge.chat)
2021-06-03 00:58:53 +0200 <djb2021> ok, this was the description for a union of two apis, get and post
2021-06-03 00:59:00 +0200yaroot(~yaroot@6.3.30.125.dy.iij4u.or.jp)
2021-06-03 00:59:02 +0200 <djb2021> so this is similar to swagger
2021-06-03 00:59:09 +0200 <dminuoso> yeah, with servant you usually describe a set of endpoints
2021-06-03 00:59:13 +0200ddellacosta(~ddellacos@86.106.121.72)
2021-06-03 00:59:15 +0200Guest3714(~pera@0541db7e.skybroadband.com) (Client Quit)
2021-06-03 01:00:07 +0200 <djb2021> and servant supports export of that API to OpenApI / Swagger?
2021-06-03 01:00:27 +0200 <djb2021> and client code generation for test?
2021-06-03 01:00:41 +0200benin0(~benin@183.82.205.186)
2021-06-03 01:00:44 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:3547:b6d4:7412:5857)
2021-06-03 01:00:45 +0200dmwit(~dmwit@pool-96-255-233-247.washdc.fios.verizon.net)
2021-06-03 01:00:48 +0200lavaman(~lavaman@98.38.249.169)
2021-06-03 01:00:55 +0200 <dminuoso> there is a package servant-swagger and servant-openapi, yes.
2021-06-03 01:01:11 +0200 <dminuoso> Which automatically generate appropriate swagger specs for you
2021-06-03 01:01:21 +0200 <djb2021> great
2021-06-03 01:01:51 +0200 <dminuoso> You just need to deal with schemas for your types, but you can use generics to automatically boiler plate most of it
2021-06-03 01:02:06 +0200raehik1(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 264 seconds)
2021-06-03 01:02:19 +0200boioioing(~boioioing@cpe-76-84-141-127.neb.res.rr.com)
2021-06-03 01:02:38 +0200 <dminuoso> https://gist.github.com/dminuoso/fde24babea76ad23af01eb650ca185e7
2021-06-03 01:02:40 +0200 <dminuoso> Looks like this
2021-06-03 01:03:19 +0200Tuplanolla(~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.)
2021-06-03 01:03:54 +0200ddellacosta(~ddellacos@86.106.121.72) (Ping timeout: 272 seconds)
2021-06-03 01:04:55 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 245 seconds)
2021-06-03 01:05:33 +0200 <djb2021> i am hoping to implement a service with that soon, i wanted to learn that for a long time, but i never got the time to do that. This year it looks good, however. Let's see.
2021-06-03 01:06:31 +0200 <djb2021> Thank you very much!
2021-06-03 01:06:58 +0200 <djb2021> Have a good day / night.
2021-06-03 01:09:55 +0200dunkeln(~dunkeln@94.129.65.28) (Ping timeout: 245 seconds)
2021-06-03 01:11:58 +0200falafel_(~falafel@pool-96-255-70-50.washdc.fios.verizon.net)
2021-06-03 01:12:17 +0200falafel_(~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Remote host closed the connection)
2021-06-03 01:12:51 +0200djb2021(~djb2021@HSI-KBW-091-089-090-070.hsi2.kabelbw.de) (Quit: Client closed)
2021-06-03 01:16:41 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-03 01:17:50 +0200favonia(~favonia@user/favonia) (Ping timeout: 272 seconds)
2021-06-03 01:18:15 +0200favonia(~favonia@user/favonia)
2021-06-03 01:18:46 +0200falafel(~falafel@pool-96-255-70-50.washdc.fios.verizon.net)
2021-06-03 01:20:05 +0200betelgeuse(~john2gb@94-225-47-8.access.telenet.be) (Ping timeout: 265 seconds)
2021-06-03 01:20:56 +0200bfrk1(~Thunderbi@200116b8456bb4003c666de9803185e6.dip.versatel-1u1.de)
2021-06-03 01:21:05 +0200bfrk(~Thunderbi@200116b845fca000f97ff890167a6943.dip.versatel-1u1.de) (Ping timeout: 252 seconds)
2021-06-03 01:21:05 +0200bfrk1bfrk
2021-06-03 01:21:09 +0200betelgeuse0(~john2gb@94-225-47-8.access.telenet.be)
2021-06-03 01:21:38 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 272 seconds)
2021-06-03 01:22:38 +0200dunkeln(~dunkeln@94.129.65.28)
2021-06-03 01:24:19 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-03 01:24:26 +0200nikoo
2021-06-03 01:27:54 +0200dunkeln(~dunkeln@94.129.65.28) (Ping timeout: 264 seconds)
2021-06-03 01:29:33 +0200ubikium(~ubikium@113x43x248x70.ap113.ftth.arteria-hikari.net) (Quit: Quit)
2021-06-03 01:29:42 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
2021-06-03 01:35:00 +0200ddellacosta(~ddellacos@86.106.121.61)
2021-06-03 01:38:31 +0200beka(~beka@104.193.170-254.PUBLIC.monkeybrains.net)
2021-06-03 01:39:51 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 268 seconds)
2021-06-03 01:39:54 +0200ddellacosta(~ddellacos@86.106.121.61) (Ping timeout: 264 seconds)
2021-06-03 01:41:13 +0200waleee(~waleee@h-98-128-228-119.NA.cust.bahnhof.se)
2021-06-03 01:44:51 +0200bfrk(~Thunderbi@200116b8456bb4003c666de9803185e6.dip.versatel-1u1.de) (Quit: bfrk)
2021-06-03 01:45:13 +0200orion(~orion@user/orion) (Read error: Connection reset by peer)
2021-06-03 01:45:25 +0200orion(~orion@user/orion)
2021-06-03 01:49:30 +0200dpl_(~dpl@77-121-78-163.chn.volia.net) (Ping timeout: 264 seconds)
2021-06-03 01:52:30 +0200ddellacosta(~ddellacos@89.46.62.63)
2021-06-03 01:56:33 +0200 <boxscape> Does anyone use AccumT?
2021-06-03 01:56:46 +0200 <boxscape> I just saw it for the first time, but never saw it listed in lists of Monad Transfomers
2021-06-03 01:56:50 +0200ddellacosta(~ddellacos@89.46.62.63) (Ping timeout: 252 seconds)
2021-06-03 01:57:05 +0200 <boxscape> (or lists of Monads, for that matter)
2021-06-03 01:57:24 +0200 <boxscape> https://hackage.haskell.org/package/transformers/docs/Control-Monad-Trans-Accum.html#t:AccumT
2021-06-03 02:01:28 +0200 <boxscape> hm I guess considering mtl doesn't have a class for it it's probably not widely used
2021-06-03 02:02:20 +0200geekosaur(~geekosaur@069-135-003-034.biz.spectrum.com) (Remote host closed the connection)
2021-06-03 02:03:32 +0200lbseale(~lbseale@ip72-194-54-201.sb.sd.cox.net) (Read error: Connection reset by peer)
2021-06-03 02:04:15 +0200geekosaur(~geekosaur@069-135-003-034.biz.spectrum.com)
2021-06-03 02:05:15 +0200 <davean> boxscape: it has a pull request I think for it, see the history
2021-06-03 02:08:50 +0200 <boxscape> davean ah, nice
2021-06-03 02:10:35 +0200peterhil(~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi)
2021-06-03 02:11:06 +0200ddellacosta(~ddellacos@86.106.121.24)
2021-06-03 02:14:29 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2021-06-03 02:15:37 +0200ddellacosta(~ddellacos@86.106.121.24) (Ping timeout: 268 seconds)
2021-06-03 02:16:12 +0200 <hololeap> I like it. it saves the trouble of having to do `flip runState mempty` and `modify (<> nextThing)` when your state happens to be a monoid
2021-06-03 02:16:33 +0200 <boxscape> that does make sense
2021-06-03 02:17:10 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Read error: Connection reset by peer)
2021-06-03 02:19:24 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2021-06-03 02:20:49 +0200boioioing(~boioioing@cpe-76-84-141-127.neb.res.rr.com) (Remote host closed the connection)
2021-06-03 02:21:18 +0200myShoggoth(~myShoggot@97-120-89-117.ptld.qwest.net) (Ping timeout: 264 seconds)
2021-06-03 02:21:52 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 252 seconds)
2021-06-03 02:23:42 +0200waleee(~waleee@h-98-128-228-119.NA.cust.bahnhof.se) (Ping timeout: 272 seconds)
2021-06-03 02:25:16 +0200zeenk(~zeenk@2a02:2f04:a310:b600:b098:bf18:df4d:4c41) (Quit: Konversation terminated!)
2021-06-03 02:25:40 +0200Lycurgus(~juan@cpe-45-46-140-49.buffalo.res.rr.com)
2021-06-03 02:26:52 +0200falafel(~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 272 seconds)
2021-06-03 02:29:20 +0200jaevanko(~jaevanko@2600:1700:1330:2bef:cce3:20c1:e54b:a98e)
2021-06-03 02:30:21 +0200ddellacosta(~ddellacos@89.46.62.79)
2021-06-03 02:30:24 +0200jaevanko(~jaevanko@2600:1700:1330:2bef:cce3:20c1:e54b:a98e) (Client Quit)
2021-06-03 02:34:07 +0200azeem(~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it) (Read error: Connection reset by peer)
2021-06-03 02:35:06 +0200ddellacosta(~ddellacos@89.46.62.79) (Ping timeout: 272 seconds)
2021-06-03 02:37:20 +0200Lycurgus(~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt)
2021-06-03 02:37:59 +0200ikex(~ash@user/ikex)
2021-06-03 02:39:34 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2021-06-03 02:40:24 +0200myShoggoth(~myShoggot@97-120-89-117.ptld.qwest.net)
2021-06-03 02:42:11 +0200ukari(~ukari@user/ukari)
2021-06-03 02:47:20 +0200azeem(~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it)
2021-06-03 02:49:04 +0200ddellacosta(~ddellacos@89.46.62.128)
2021-06-03 02:50:47 +0200shriekingnoise(~shrieking@186.137.144.80)
2021-06-03 02:52:46 +0200li(~li@libera/staff/li)
2021-06-03 02:53:15 +0200ddellacosta(~ddellacos@89.46.62.128) (Ping timeout: 245 seconds)
2021-06-03 02:55:00 +0200learner-monad(~eric@cpe-174-105-47-100.columbus.res.rr.com) (Quit: WeeChat 3.1)
2021-06-03 02:55:16 +0200hmmmas(~chenqisu1@183.217.202.217)
2021-06-03 02:56:15 +0200learner-monad(~eric@cpe-174-105-47-100.columbus.res.rr.com)
2021-06-03 02:56:42 +0200learner-monad(~eric@cpe-174-105-47-100.columbus.res.rr.com) (Client Quit)
2021-06-03 02:57:16 +0200ikex(~ash@user/ikex) (Ping timeout: 244 seconds)
2021-06-03 02:57:21 +0200learner-monad(~eric@cpe-174-105-47-100.columbus.res.rr.com)
2021-06-03 03:02:58 +0200 <guest61> what is Kira?
2021-06-03 03:03:18 +0200 <Axman6> In what context?
2021-06-03 03:03:26 +0200 <guest61> https://twitter.com/arachnocapital2/status/1399890272348033026?s=19
2021-06-03 03:03:46 +0200 <guest61> jira
2021-06-03 03:03:56 +0200 <guest61> sorry typo
2021-06-03 03:04:20 +0200 <boxscape> an issue tracker
2021-06-03 03:04:25 +0200o1lo01ol1o(~o1lo01ol1@c-73-10-81-85.hsd1.nj.comcast.net)
2021-06-03 03:04:26 +0200 <Axman6> Atlassian's issue tracker
2021-06-03 03:04:37 +0200 <Axman6> very popular, but not with devs :)
2021-06-03 03:05:30 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 272 seconds)
2021-06-03 03:06:10 +0200 <tput> I'm working on a practice problem that involves a fibs like sequence, but the combining function is parameterized, so we have a separate sequence for each natural. I'm trying to use the usual bottom up lazy sharing thing, but I can't get the sharing to work. I would appreciate another set of eyes. https://pastebin.com/vndFjWba
2021-06-03 03:07:15 +0200 <guest61> do hsskell has some libraries like Python's requests?
2021-06-03 03:07:21 +0200 <guest61> have
2021-06-03 03:07:45 +0200 <boxscape> @unpl (((+ (10*k)) .) . (-) . (*2))
2021-06-03 03:07:45 +0200 <lambdabot> (\ x x0 -> ((x * 2) - x0) + (10 * k))
2021-06-03 03:07:46 +0200 <Axman6> what is Python's requests?
2021-06-03 03:07:49 +0200 <boxscape> would this really perform worse?
2021-06-03 03:08:36 +0200 <guest61> easy to do restful request
2021-06-03 03:09:20 +0200 <Axman6> Sure, we have several libraries for http requests - wreq, req and my favourite is servant-client, but it's somewhat advanced
2021-06-03 03:10:27 +0200 <tput> boxscape yes, that's equally fast. You can't however say replace it with g a b = (2*a)-b+10*k
2021-06-03 03:10:33 +0200 <boxscape> I see
2021-06-03 03:11:00 +0200 <c_wraith> tput: first question: do you need sharing across separate calls to f with the same argument, or just within a single call?
2021-06-03 03:11:11 +0200 <tput> hard coded values for k get the sharing right and are O(n)
2021-06-03 03:11:36 +0200 <tput> sharing just in a single (recursive) call, and with just a single value for k
2021-06-03 03:12:14 +0200 <c_wraith> tput: ok, the problem is that you're calling f again. I think you've mixed up the usual idiom
2021-06-03 03:12:45 +0200 <tput> how do I avoid recalling f k in the parameterized version?
2021-06-03 03:12:50 +0200 <c_wraith> tput: usually you'd write something like f k = let xs = 42 : 11 * k + 77 : zipWith stuff in xs
2021-06-03 03:13:17 +0200 <c_wraith> notably, the zipWith should refer to xs
2021-06-03 03:13:29 +0200 <tput> ahh, yes. that makes sense. I'll go try that out
2021-06-03 03:13:45 +0200 <guest61> wreq seems nice
2021-06-03 03:16:23 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-06-03 03:16:30 +0200 <tput> c_wraith: that's linear time now! interestingly I'm hitting a stack overflow in GHCI, but when compiled with -O2 it's linear time and no stack overflows.
2021-06-03 03:17:04 +0200 <c_wraith> sounds like strictness then - are you measuring without evaluating each value in the list?
2021-06-03 03:17:39 +0200 <tput> my naive measurement is just to index (!!) far out into the list.
2021-06-03 03:17:43 +0200 <tput> and then print
2021-06-03 03:17:59 +0200 <c_wraith> yeah, that will build up thunks unless the strictness analyzer catches it
2021-06-03 03:18:03 +0200satai(~satai@static-84-42-172-253.net.upcbroadband.cz) (Quit: satai)
2021-06-03 03:18:12 +0200 <c_wraith> which it does with -O2 , apparently
2021-06-03 03:18:16 +0200 <c_wraith> but not in ghci
2021-06-03 03:18:41 +0200 <tput> yeah, not sure how to annotate this to get ghci to pick up on it, but compiled code is what matters, so I won
2021-06-03 03:18:45 +0200 <tput> 't complain
2021-06-03 03:19:36 +0200 <tput> thanks c_wraith and boxscape for your help here
2021-06-03 03:19:48 +0200learner-monad(~eric@cpe-174-105-47-100.columbus.res.rr.com) (Quit: WeeChat 3.1)
2021-06-03 03:19:49 +0200 <boxscape> I guess using (\!x! y -> ((x * 2) - y) + (10 * k)) would do it?
2021-06-03 03:20:11 +0200 <c_wraith> no, actually
2021-06-03 03:20:20 +0200 <c_wraith> you can't fix it with zipWith
2021-06-03 03:20:27 +0200 <boxscape> ah
2021-06-03 03:20:39 +0200 <boxscape> you need a strict zipWith, eh
2021-06-03 03:20:52 +0200 <c_wraith> You need to link evaluation of the (:) constructors with evaluation of their first arguments.
2021-06-03 03:21:05 +0200 <boxscape> oh that's what you meant, okay
2021-06-03 03:21:18 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 264 seconds)
2021-06-03 03:21:39 +0200 <tput> is there a clever spot to insert a seq that could do that?
2021-06-03 03:21:54 +0200 <c_wraith> nope. Best you can do is a post-processing step
2021-06-03 03:22:12 +0200troydm(~troydm@host-176-37-124-197.b025.la.net.ua)
2021-06-03 03:22:58 +0200 <c_wraith> like... headStrict :: [a] -> [a] ; headStrict [] = [] ; headStrict (x:xs) = x `seq` (x : headStrict xs)
2021-06-03 03:23:21 +0200 <c_wraith> then change the definition to ...... in headStrict xs
2021-06-03 03:25:07 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 252 seconds)
2021-06-03 03:25:14 +0200ddellacosta(~ddellacos@86.106.121.18)
2021-06-03 03:25:17 +0200 <tput> so that forces the elements to be strict (forced once their part of the spine is forced), but the spine is still lazy. yes? neat
2021-06-03 03:25:26 +0200 <c_wraith> exactly
2021-06-03 03:25:39 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-03 03:25:48 +0200 <tput> thanks again, learning more than I asked for!
2021-06-03 03:26:00 +0200Deide(~Deide@user/deide) (Quit: Seeee yaaaa)
2021-06-03 03:26:06 +0200 <c_wraith> you're welcome
2021-06-03 03:26:29 +0200derelict(~winter@2603-6011-f901-9e5b-aed0-a4c6-fbb9-1828.res6.spectrum.com)
2021-06-03 03:26:29 +0200 <tput> tbc, learning more than I asked for is a good thing
2021-06-03 03:26:40 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-06-03 03:26:53 +0200 <c_wraith> I hadn't even considered you might have meant something else. Glad you didn't. :)
2021-06-03 03:27:47 +0200boxscape(~boxscape@user/boxscape) (Quit: Connection closed)
2021-06-03 03:28:19 +0200ddellaco_(~ddellacos@86.106.143.92)
2021-06-03 03:30:12 +0200ddellacosta(~ddellacos@86.106.121.18) (Ping timeout: 272 seconds)
2021-06-03 03:31:02 +0200o1lo01ol1o(~o1lo01ol1@c-73-10-81-85.hsd1.nj.comcast.net) (Remote host closed the connection)
2021-06-03 03:32:24 +0200xff0x(~xff0x@2001:1a81:5307:4e00:7012:84d9:dce9:1f3f) (Ping timeout: 244 seconds)
2021-06-03 03:33:25 +0200 <c_wraith> honestly, there probably should be a variant of zipWith that applies that strictness pattern without needing a separate helper, but endless strictness variations in base can be a tedious sell.
2021-06-03 03:34:24 +0200xff0x(~xff0x@2001:1a81:5341:dc00:75a7:46f8:7ce3:4f61)
2021-06-03 03:34:35 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2021-06-03 03:36:01 +0200 <tput> especially given that the strictness analyzer typically covers my butt even when I don't know what I'm forcing and when
2021-06-03 03:38:29 +0200falafel(~falafel@pool-96-255-70-50.washdc.fios.verizon.net)
2021-06-03 03:41:36 +0200azeem(~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it) (Read error: Connection reset by peer)
2021-06-03 03:41:41 +0200ddellacosta(~ddellacos@86.106.121.89)
2021-06-03 03:43:27 +0200o1lo01ol1o(~o1lo01ol1@c-73-10-81-85.hsd1.nj.comcast.net)
2021-06-03 03:46:03 +0200azeem(~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it)
2021-06-03 03:46:40 +0200ddellacosta(~ddellacos@86.106.121.89) (Ping timeout: 272 seconds)
2021-06-03 03:46:57 +0200Topsi2(~Tobias@dyndsl-095-033-027-146.ewe-ip-backbone.de) (Read error: Connection reset by peer)
2021-06-03 03:47:06 +0200pbrisbin(~patrick@pool-72-92-38-164.phlapa.fios.verizon.net) (Ping timeout: 264 seconds)
2021-06-03 03:48:07 +0200o1lo01ol1o(~o1lo01ol1@c-73-10-81-85.hsd1.nj.comcast.net) (Ping timeout: 268 seconds)
2021-06-03 03:49:14 +0200 <sm[m]> https://github.com/simonmichael/hledger/pull/1543#issuecomment-853497253 <- in which I quibble over the format of detailed --version output. Do you happen to know a tool that represents best practice, with nicely readable detailed version output ?
2021-06-03 03:52:22 +0200falafel(~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 272 seconds)
2021-06-03 03:52:36 +0200magmag(~magmag@2607:fea8:3f1f:ba20::4492)
2021-06-03 03:52:43 +0200o1lo01ol1o(~o1lo01ol1@c-73-10-81-85.hsd1.nj.comcast.net)
2021-06-03 03:54:06 +0200dutchgriffon(~laurens@2604:3d08:4383:6200:1c6:2d20:b4b0:b2cf) (Ping timeout: 244 seconds)
2021-06-03 03:54:48 +0200libertyprime(~libertypr@125-236-224-40.adsl.xtra.co.nz)
2021-06-03 03:56:16 +0200libertyprime(~libertypr@125-236-224-40.adsl.xtra.co.nz) (Client Quit)
2021-06-03 03:56:31 +0200ddellaco_(~ddellacos@86.106.143.92) (Remote host closed the connection)
2021-06-03 03:56:48 +0200geekosaur(~geekosaur@069-135-003-034.biz.spectrum.com) (Ping timeout: 272 seconds)
2021-06-03 03:59:19 +0200ddellacosta(~ddellacos@86.106.121.60)
2021-06-03 03:59:30 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds)
2021-06-03 04:03:43 +0200magmag(~magmag@2607:fea8:3f1f:ba20::4492) (Quit: Konversation terminated!)
2021-06-03 04:04:24 +0200ddellacosta(~ddellacos@86.106.121.60) (Ping timeout: 272 seconds)
2021-06-03 04:06:56 +0200myShoggoth(~myShoggot@97-120-89-117.ptld.qwest.net) (Read error: Connection reset by peer)
2021-06-03 04:07:16 +0200myShoggoth(~myShoggot@97-120-89-117.ptld.qwest.net)
2021-06-03 04:07:44 +0200ddellacosta(~ddellacos@89.45.224.235)
2021-06-03 04:08:12 +0200libertyprime(~libertypr@125-236-224-40.adsl.xtra.co.nz)
2021-06-03 04:08:50 +0200 <libertyprime> hey guys. i'm trying to run ghcide from stack and its proving to be quite troublesome to do so.
2021-06-03 04:09:36 +0200 <libertyprime> stack install copies binaries from ~/.stack/snapshots to ~/.local/bin
2021-06-03 04:09:59 +0200 <libertyprime> the issue with this is that when i run stack exec -- ghcide, it will look for the binaries in ~/.local/bin
2021-06-03 04:10:44 +0200 <libertyprime> but if im trying to run "stack exec -- ghcide" whilst in a specific stack project, that project may used a different versino of ghc
2021-06-03 04:10:55 +0200finn_elija(~finn_elij@user/finn-elija/x-0085643)
2021-06-03 04:10:55 +0200FinnElijaGuest8388
2021-06-03 04:10:55 +0200Guest8388(~finn_elij@user/finn-elija/x-0085643) (Killed (mercury.libera.chat (Nickname regained by services)))
2021-06-03 04:10:55 +0200finn_elijaFinnElija
2021-06-03 04:11:24 +0200 <libertyprime> so how would i run the built version of ghcide that i want. "stack exec -- ghcide" can't find ghcide unless i install it
2021-06-03 04:11:45 +0200 <libertyprime> id like stack to be able to find the appropriate binary from the build artifacts in ~/.stack/snapshots
2021-06-03 04:11:55 +0200 <libertyprime> or am i going about this the wrong way?
2021-06-03 04:14:55 +0200 <libertyprime> i can do this:
2021-06-03 04:14:59 +0200 <libertyprime> exec "$(find ~/.stack/snapshots -type f -path "*/$(stack ghc -- --version | rev | awk '{print $1}' | rev)/bin/ghcide" | head -n 1)"
2021-06-03 04:17:35 +0200ddellaco_(~ddellacos@89.46.62.86)
2021-06-03 04:17:43 +0200o1lo01ol1o(~o1lo01ol1@c-73-10-81-85.hsd1.nj.comcast.net) (Remote host closed the connection)
2021-06-03 04:20:27 +0200o1lo01ol1o(~o1lo01ol1@c-73-10-81-85.hsd1.nj.comcast.net)
2021-06-03 04:22:25 +0200juhp(~juhp@128.106.188.199) (Quit: juhp)
2021-06-03 04:22:40 +0200juhp(~juhp@128.106.188.199)
2021-06-03 04:22:46 +0200ddellaco_(~ddellacos@89.46.62.86) (Ping timeout: 272 seconds)
2021-06-03 04:23:18 +0200falafel(~falafel@pool-96-255-70-50.washdc.fios.verizon.net)
2021-06-03 04:24:02 +0200derelict(~winter@2603-6011-f901-9e5b-aed0-a4c6-fbb9-1828.res6.spectrum.com) (Ping timeout: 272 seconds)
2021-06-03 04:25:45 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 245 seconds)
2021-06-03 04:27:07 +0200libertyprime(~libertypr@125-236-224-40.adsl.xtra.co.nz) (Quit: leaving)
2021-06-03 04:30:40 +0200td_(~td@muedsl-82-207-238-043.citykom.de) (Ping timeout: 268 seconds)
2021-06-03 04:31:12 +0200o1lo01ol1o(~o1lo01ol1@c-73-10-81-85.hsd1.nj.comcast.net) (Remote host closed the connection)
2021-06-03 04:31:53 +0200td_(~td@muedsl-82-207-238-081.citykom.de)
2021-06-03 04:31:56 +0200o1lo01ol1o(~o1lo01ol1@c-73-10-81-85.hsd1.nj.comcast.net)
2021-06-03 04:32:51 +0200unyu(~pyon@user/pyon)
2021-06-03 04:33:04 +0200peterhil(~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) (Quit: Must not waste too much time here...)
2021-06-03 04:34:42 +0200ddellaco_(~ddellacos@89.46.62.46)
2021-06-03 04:35:31 +0200exarkun(~exarkun@user/exarkun) (Remote host closed the connection)
2021-06-03 04:35:36 +0200exarkun1(~exarkun@user/exarkun)
2021-06-03 04:39:17 +0200ddellaco_(~ddellacos@89.46.62.46) (Ping timeout: 272 seconds)
2021-06-03 04:40:43 +0200exarkun1(~exarkun@user/exarkun) (Remote host closed the connection)
2021-06-03 04:41:16 +0200exarkun1(~exarkun@user/exarkun)
2021-06-03 04:44:40 +0200o1lo01ol1o(~o1lo01ol1@c-73-10-81-85.hsd1.nj.comcast.net) (Remote host closed the connection)
2021-06-03 04:46:43 +0200peterhil(~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi)
2021-06-03 04:48:05 +0200o1lo01ol1o(~o1lo01ol1@c-73-10-81-85.hsd1.nj.comcast.net)
2021-06-03 04:50:58 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-06-03 04:51:54 +0200ku(~ku@2601:280:c780:7ea0:3536:1caf:f72e:47bc) (Ping timeout: 272 seconds)
2021-06-03 04:53:11 +0200ddellaco_(~ddellacos@86.106.121.47)
2021-06-03 04:53:21 +0200ddellacosta(~ddellacos@89.45.224.235) (Remote host closed the connection)
2021-06-03 04:55:21 +0200gorignak(~gorignak@047-037-033-079.res.spectrum.com) (Quit: leaving)
2021-06-03 04:56:11 +0200alx741(~alx741@186.178.108.19) (Quit: alx741)
2021-06-03 04:57:21 +0200sheepduck(~sheepduck@2607:fea8:2a60:b700::8a94)
2021-06-03 04:57:25 +0200ddellaco_(~ddellacos@86.106.121.47) (Ping timeout: 245 seconds)
2021-06-03 05:02:03 +0200lavaman(~lavaman@98.38.249.169)
2021-06-03 05:05:50 +0200o1lo01ol1o(~o1lo01ol1@c-73-10-81-85.hsd1.nj.comcast.net) (Ping timeout: 272 seconds)
2021-06-03 05:06:10 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 245 seconds)
2021-06-03 05:08:40 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 245 seconds)
2021-06-03 05:09:40 +0200zebrag(~chris@user/zebrag) (Remote host closed the connection)
2021-06-03 05:10:36 +0200ddellacosta(~ddellacos@89.46.62.129)
2021-06-03 05:11:34 +0200o1lo01ol1o(~o1lo01ol1@mobile-107-107-58-12.mycingular.net)
2021-06-03 05:14:55 +0200ddellacosta(~ddellacos@89.46.62.129) (Ping timeout: 245 seconds)
2021-06-03 05:16:34 +0200jlamothe(~jlamothe@198.251.57.81) (Quit: leaving)
2021-06-03 05:18:18 +0200dyeplexer(~dyeplexer@user/dyeplexer)
2021-06-03 05:19:47 +0200y04nn(~y04nn@193.32.127.220) (Ping timeout: 252 seconds)
2021-06-03 05:22:22 +0200Guest3231(~Guest32@185.57.82.30)
2021-06-03 05:23:53 +0200AgentM(~agentm@pool-162-83-130-212.nycmny.fios.verizon.net)
2021-06-03 05:24:43 +0200Lord_of_Life_(~Lord@user/lord-of-life/x-2819915)
2021-06-03 05:26:11 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 245 seconds)
2021-06-03 05:26:11 +0200Lord_of_Life_Lord_of_Life
2021-06-03 05:26:49 +0200leeb(~leeb@KD111239154171.au-net.ne.jp)
2021-06-03 05:26:50 +0200dibblego(~dibblego@122-199-1-30.ip4.superloop.com) (Quit: λ)
2021-06-03 05:27:48 +0200kSletStg(~kSletStg@14.207.162.206)
2021-06-03 05:27:49 +0200 <kSletStg> Andrdew Lee liAkes hoyt asian cocVks!!!
2021-06-03 05:27:49 +0200kSletStg(~kSletStg@14.207.162.206) ()
2021-06-03 05:27:51 +0200kSletStg(~kSletStg@14.207.162.206)
2021-06-03 05:27:51 +0200 <kSletStg> AgndrYew Lee likesw bhot VasRian cochksq!d!!
2021-06-03 05:27:51 +0200kSletStg(~kSletStg@14.207.162.206) ()
2021-06-03 05:32:25 +0200machinedgod(~machinedg@135-23-192-217.cpe.pppoe.ca) (Ping timeout: 245 seconds)
2021-06-03 05:32:32 +0200dibblego(~dibblego@122-199-1-30.ip4.superloop.com)
2021-06-03 05:33:26 +0200 <ukari> @hoggle (Monad m, Applicative f) => f (m a) -> m (f a))
2021-06-03 05:33:26 +0200 <lambdabot> package base
2021-06-03 05:33:26 +0200 <lambdabot> package bytestring
2021-06-03 05:33:26 +0200 <lambdabot> package containers
2021-06-03 05:34:43 +0200 <ukari> @hoggle (Monad m, Applicative f) => f (m a) -> m (f a)
2021-06-03 05:34:44 +0200 <lambdabot> Prelude sequence :: (Traversable t, Monad m) => t (m a) -> m (t a)
2021-06-03 05:34:44 +0200 <lambdabot> Control.Monad sequence :: (Traversable t, Monad m) => t (m a) -> m (t a)
2021-06-03 05:34:44 +0200 <lambdabot> Data.Traversable sequence :: (Traversable t, Monad m) => t (m a) -> m (t a)
2021-06-03 05:34:57 +0200y04nn(~y04nn@193.32.127.220)
2021-06-03 05:37:08 +0200lavaman(~lavaman@98.38.249.169)
2021-06-03 05:37:10 +0200o1lo01ol1o(~o1lo01ol1@mobile-107-107-58-12.mycingular.net) (Remote host closed the connection)
2021-06-03 05:40:42 +0200otto_s_(~user@p5de2f2d9.dip0.t-ipconnect.de)
2021-06-03 05:41:38 +0200 <ukari> hoogle.haskell.org returns 502 http error code now
2021-06-03 05:43:37 +0200a6a45081-2b83(~aditya@106.212.70.132)
2021-06-03 05:43:38 +0200jlamothe(~jlamothe@198.251.57.81)
2021-06-03 05:43:40 +0200otto_s(~user@p4ff27438.dip0.t-ipconnect.de) (Ping timeout: 245 seconds)
2021-06-03 05:43:41 +0200smitop(uid328768@user/smitop) (Quit: Connection closed for inactivity)
2021-06-03 05:44:30 +0200justsomeguy(~justsomeg@user/justsomeguy)
2021-06-03 05:45:20 +0200Erutuon(~Erutuon@user/erutuon) (Ping timeout: 245 seconds)
2021-06-03 05:47:20 +0200ddellacosta(~ddellacos@89.46.62.73)
2021-06-03 05:52:00 +0200ddellacosta(~ddellacos@89.46.62.73) (Ping timeout: 245 seconds)
2021-06-03 05:53:15 +0200guest63(~user@49.5.6.87)
2021-06-03 05:53:16 +0200lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-06-03 05:55:31 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-03 05:58:37 +0200nkpart(uid3844@id-3844.highgate.irccloud.com)
2021-06-03 05:58:49 +0200ChanServ+o dmwit
2021-06-03 06:00:02 +0200dmwit+b *!*@14.207.162.206
2021-06-03 06:00:09 +0200dmwit-o dmwit
2021-06-03 06:02:04 +0200lavaman(~lavaman@98.38.249.169)
2021-06-03 06:03:16 +0200wei2912(~wei2912@112.199.250.21)
2021-06-03 06:05:39 +0200ddellacosta(~ddellacos@89.46.62.60)
2021-06-03 06:07:39 +0200leif(uid501722@id-501722.stonehaven.irccloud.com) (Quit: Connection closed for inactivity)
2021-06-03 06:08:25 +0200ddellacosta(~ddellacos@89.46.62.60) (Read error: Connection reset by peer)
2021-06-03 06:17:25 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 245 seconds)
2021-06-03 06:17:35 +0200guest63`(~user@124.64.19.240)
2021-06-03 06:20:34 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2021-06-03 06:20:37 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-06-03 06:20:52 +0200 <beaky> hello what is the best libray for matrices in haskell i guess its hmatrix https://github.com/Magalame/fastest-matrices
2021-06-03 06:21:54 +0200guest63(~user@49.5.6.87) (Ping timeout: 264 seconds)
2021-06-03 06:22:03 +0200rk04(~rk04@user/rajk)
2021-06-03 06:24:22 +0200falafel(~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 272 seconds)
2021-06-03 06:26:15 +0200Feuermagier(~Feuermagi@user/feuermagier) (Quit: Leaving)
2021-06-03 06:26:25 +0200Feuermagier(~Feuermagi@user/feuermagier)
2021-06-03 06:28:16 +0200tacegory(~tacegory@2a03:7380:300c:ca5e:cda3:597d:39bb:89ab)
2021-06-03 06:28:19 +0200 <tacegory> ⁄!\ TⲎIS CዘANⲚEᏞ HAЅ ΜОⅤEᎠ ΤⲞ IRⅭ.ᒪІBЕᖇА.ᏟዘΑT #HΑMᎡADIⲞ /﹗\
2021-06-03 06:28:23 +0200 <tacegory> ⁄ⵑ﹨ ТHE ЈΕᎳЅ HΑVE TАKΕN OVΕR FRᎬЕⲚODEᛧ СHATS ᎻAVЕ MΟVEᎠ TΟ IᖇC.LIBEᎡA.CⲎΑᎢ /!\
2021-06-03 06:28:27 +0200 <tacegory> ∕︕\ ЈОΙⲚ #HAMRAⅮΙO TOᗪΑⲨ. ΤHΙЅ CHAⲚNΕL НАᏚ MⲞⅤЕD TΟ ІᎡC.ᏞІВᎬᎡΑ.CHAT #ዘАΜRΑᎠІO ∕!\
2021-06-03 06:28:30 +0200 <tacegory> ΤHIЅ ОᖴᖴІCΙAᏞLΥ EΝⅮOᎡSЕᎠ МESᏚAGE WAS ᗷᎡОUGᕼΤ TⲞ ΥОU ΒY LΙBΕRA.ᏟHAT STΑFᖴ
2021-06-03 06:28:38 +0200tacegory(~tacegory@2a03:7380:300c:ca5e:cda3:597d:39bb:89ab) (Remote host closed the connection)
2021-06-03 06:29:42 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
2021-06-03 06:29:42 +0200Feuermagier(~Feuermagi@user/feuermagier) (Client Quit)
2021-06-03 06:29:53 +0200Feuermagier(~Feuermagi@2a02:2488:4211:3400:5def:8486:9e4:b49a)
2021-06-03 06:30:15 +0200Feuermagier(~Feuermagi@2a02:2488:4211:3400:5def:8486:9e4:b49a) (Remote host closed the connection)
2021-06-03 06:30:18 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 268 seconds)
2021-06-03 06:30:26 +0200Feuermagier(~Feuermagi@2a02:2488:4211:3400:5def:8486:9e4:b49a)
2021-06-03 06:30:28 +0200a6a45081-2b83(~aditya@106.212.70.132) (Quit: Konversation terminated!)
2021-06-03 06:30:59 +0200Feuermagier(~Feuermagi@2a02:2488:4211:3400:5def:8486:9e4:b49a) (Changing host)
2021-06-03 06:30:59 +0200Feuermagier(~Feuermagi@user/feuermagier)
2021-06-03 06:33:40 +0200z0ltan(~z0ltan@103.5.134.18)
2021-06-03 06:33:57 +0200z0ltan(~z0ltan@103.5.134.18) (Client Quit)
2021-06-03 06:34:52 +0200Feuermagier(~Feuermagi@user/feuermagier) (Client Quit)
2021-06-03 06:34:59 +0200reumeth(~reumeth@user/reumeth)
2021-06-03 06:35:02 +0200Feuermagier(~Feuermagi@user/feuermagier)
2021-06-03 06:35:54 +0200Feuermagier(~Feuermagi@user/feuermagier) (Client Quit)
2021-06-03 06:36:05 +0200Feuermagier(~Feuermagi@user/feuermagier)
2021-06-03 06:36:29 +0200AgentM(~agentm@pool-162-83-130-212.nycmny.fios.verizon.net) (Quit: Leaving.)
2021-06-03 06:36:47 +0200kaliumxyz(~kaliumxyz@61.7.144.106)
2021-06-03 06:37:34 +0200kaliumxyz(~kaliumxyz@61.7.144.106) (Remote host closed the connection)
2021-06-03 06:38:39 +0200ddellacosta(~ddellacos@89.46.62.118)
2021-06-03 06:41:10 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-06-03 06:41:16 +0200pfurla_pfurla
2021-06-03 06:42:44 +0200reumeth(~reumeth@user/reumeth) (Ping timeout: 272 seconds)
2021-06-03 06:44:06 +0200ddellacosta(~ddellacos@89.46.62.118) (Ping timeout: 264 seconds)
2021-06-03 06:46:30 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 264 seconds)
2021-06-03 06:48:32 +0200 <manicennui> What is the point of that nonsense?
2021-06-03 06:49:04 +0200a6a45081-2b83(~aditya@106.212.70.132)
2021-06-03 06:49:10 +0200 <int-e> just stirring up drama
2021-06-03 06:49:26 +0200renzhi(~xp@2607:fa49:6500:bc00::e7b) (Ping timeout: 252 seconds)
2021-06-03 06:51:16 +0200ub(~Thunderbi@p200300ecdf259dec656b91086baf35ac.dip0.t-ipconnect.de) (Ping timeout: 268 seconds)
2021-06-03 06:52:48 +0200berberman(~berberman@user/berberman)
2021-06-03 06:53:23 +0200berberman_(~berberman@user/berberman) (Ping timeout: 244 seconds)
2021-06-03 06:54:16 +0200rk04(~rk04@user/rajk) (Quit: Client closed)
2021-06-03 06:56:08 +0200ddellacosta(~ddellacos@86.106.121.109)
2021-06-03 06:59:35 +0200 <guest63`> import Control.Applicative hiding (many, <|>) why this is parse error?
2021-06-03 06:59:42 +0200 <guest63`> what's the proper way?
2021-06-03 06:59:57 +0200 <Axman6> stick <|> in parens
2021-06-03 07:00:08 +0200 <Axman6> import Control.Applicative hiding (many, (<|>))
2021-06-03 07:01:06 +0200ddellacosta(~ddellacos@86.106.121.109) (Ping timeout: 272 seconds)
2021-06-03 07:01:08 +0200stardustfp(~sd@195.181.166.68)
2021-06-03 07:02:53 +0200doublex__doublex
2021-06-03 07:03:03 +0200 <guest63`> Axman6: why there're so many <|> in different modules, could Text.ParserCombinators.Parsec.<|> work on something that is for Control.Applicative.<|>
2021-06-03 07:03:26 +0200 <guest63`> hiding and qualified too many
2021-06-03 07:03:35 +0200 <Axman6> Are you sure they aren't already exactly the same thing? is one just a reexport?
2021-06-03 07:04:07 +0200killsushi(~killsushi@2607:fea8:3d40:767:40a2:b161:77f9:99d8)
2021-06-03 07:04:08 +0200killsushi(~killsushi@2607:fea8:3d40:767:40a2:b161:77f9:99d8) (Changing host)
2021-06-03 07:04:08 +0200killsushi(~killsushi@user/killsushi)
2021-06-03 07:04:10 +0200 <stardustfp> Now that I'm in the right place...what's the recommended first step to learning haskell? Is there a recommended book/course? I typically learn the fastest via video courses or just straight up code examples with simple explanations.
2021-06-03 07:04:14 +0200 <Axman6> I would be surprised if most of them aren't just Control.Applicative ((<|>)) reexported
2021-06-03 07:04:28 +0200 <c_wraith> the one in parser-combinators is definitely just a re-export
2021-06-03 07:04:35 +0200 <Axman6> Welcome stardustfp
2021-06-03 07:04:43 +0200 <c_wraith> clearly labeled as such: https://hackage.haskell.org/package/parser-combinators-1.3.0/docs/Control-Applicative-Combinators.…
2021-06-03 07:06:13 +0200lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-06-03 07:10:45 +0200charles(~charles@user/ergo) (Quit: WeeChat 3.0.1)
2021-06-03 07:11:25 +0200ddellacosta(~ddellacos@86.106.143.131)
2021-06-03 07:11:42 +0200Erutuon(~Erutuon@user/erutuon)
2021-06-03 07:12:26 +0200 <Axman6> stardustfp: I'm not sure what the current recommendations are, I haven't seen any comprehensive video tutorials - learning Haskell, depending on your background, often learns unlearning habits from other languages which don't make sense here, so most books and tutorials will start from the very fundamentals, because even those will be foreign
2021-06-03 07:13:05 +0200myShoggoth(~myShoggot@97-120-89-117.ptld.qwest.net) (Ping timeout: 252 seconds)
2021-06-03 07:14:07 +0200haskman(~haskman@223.190.19.8)
2021-06-03 07:15:03 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2021-06-03 07:15:14 +0200ddellaco_(~ddellacos@89.46.62.84)
2021-06-03 07:16:10 +0200ddellacosta(~ddellacos@86.106.143.131) (Ping timeout: 245 seconds)
2021-06-03 07:16:50 +0200jhillsa
2021-06-03 07:18:18 +0200y04nn(~y04nn@193.32.127.220) (Ping timeout: 264 seconds)
2021-06-03 07:19:16 +0200sa(sid1055@id-1055.tinside.irccloud.com) ()
2021-06-03 07:19:53 +0200sa(sid1055@id-1055.tinside.irccloud.com)
2021-06-03 07:20:06 +0200ddellaco_(~ddellacos@89.46.62.84) (Ping timeout: 272 seconds)
2021-06-03 07:21:01 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2021-06-03 07:23:57 +0200slowButPresent(~slowButPr@user/slowbutpresent) (Quit: leaving)
2021-06-03 07:24:11 +0200a6a45081-2b83(~aditya@106.212.70.132) (Remote host closed the connection)
2021-06-03 07:24:41 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2021-06-03 07:29:17 +0200v01d4lph4(~v01d4lph4@user/v01d4lph4)
2021-06-03 07:29:44 +0200Pixi_Pixi
2021-06-03 07:30:08 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-03 07:30:52 +0200 <novasenco> https://gitlab.haskell.org 502 Error fyi
2021-06-03 07:33:49 +0200xff0x(~xff0x@2001:1a81:5341:dc00:75a7:46f8:7ce3:4f61) (Ping timeout: 268 seconds)
2021-06-03 07:34:06 +0200 <Axman6> tput: Did you get an answer to your generalised fibonacci thing? I think all you need to do is: f k = let fk = (42 : 11*k+77 : zipWith (((+ (10*k)) .) . (-) . (*2)) (tail fk) fk) in fk
2021-06-03 07:34:17 +0200chomwitt(~Pitsikoko@2a02:587:dc02:b00:b16c:5166:feb8:97d5)
2021-06-03 07:34:17 +0200ddellacosta(~ddellacos@86.106.121.26)
2021-06-03 07:34:36 +0200xff0x(~xff0x@2001:1a81:5341:dc00:f337:c4a9:2546:3790)
2021-06-03 07:35:42 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 264 seconds)
2021-06-03 07:36:57 +0200lavaman(~lavaman@98.38.249.169)
2021-06-03 07:37:12 +0200wallymathieu(~wallymath@81-234-151-21-no94.tbcn.telia.com)
2021-06-03 07:38:19 +0200oniko
2021-06-03 07:38:26 +0200 <tput> Axman6: yes. that's exactly what I needed to avoid re-evaluating f k. c_wraith helped out
2021-06-03 07:38:40 +0200ddellacosta(~ddellacos@86.106.121.26) (Ping timeout: 245 seconds)
2021-06-03 07:39:55 +0200 <tput> in the end, the next step of my solution to the exercise I was working on (determining if a number is semiprime) is just not quite fast enough.
2021-06-03 07:40:19 +0200 <tput> this is the exercise: https://open.kattis.com/problems/blobsofdoom
2021-06-03 07:41:05 +0200 <tput> I think there's likely a cleverer solution that I'm not seeing
2021-06-03 07:41:38 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 272 seconds)
2021-06-03 07:41:54 +0200guest63``(~user@49.5.6.87)
2021-06-03 07:41:55 +0200guest63`(~user@124.64.19.240) (Read error: Connection reset by peer)
2021-06-03 07:49:12 +0200ddellacosta(~ddellacos@86.106.143.66)
2021-06-03 07:50:51 +0200ru0mad(~ru0mad@82-64-17-144.subs.proxad.net)
2021-06-03 07:53:40 +0200ddellacosta(~ddellacos@86.106.143.66) (Ping timeout: 245 seconds)
2021-06-03 07:55:42 +0200sondre(~sondrelun@cm-84.212.100.140.getinternet.no)
2021-06-03 08:00:57 +0200ru0mad(~ru0mad@82-64-17-144.subs.proxad.net) (Ping timeout: 268 seconds)
2021-06-03 08:04:14 +0200xff0x(~xff0x@2001:1a81:5341:dc00:f337:c4a9:2546:3790) (Ping timeout: 252 seconds)
2021-06-03 08:04:44 +0200koishi_(~koishi_@185.209.85.134)
2021-06-03 08:04:48 +0200xff0x(~xff0x@port-92-193-206-214.dynamic.as20676.net)
2021-06-03 08:05:21 +0200Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2021-06-03 08:06:30 +0200haskman(~haskman@223.190.19.8) (Quit: Going to sleep. ZZZzzz…)
2021-06-03 08:07:43 +0200_ht(~quassel@82-169-194-8.biz.kpn.net)
2021-06-03 08:07:49 +0200ddellacosta(~ddellacos@86.106.121.86)
2021-06-03 08:10:00 +0200Bartosz(~textual@24.35.90.211)
2021-06-03 08:11:43 +0200killsushi_(~killsushi@2607:fea8:3d40:767:40a2:b161:77f9:99d8)
2021-06-03 08:11:43 +0200killsushi_(~killsushi@2607:fea8:3d40:767:40a2:b161:77f9:99d8) (Changing host)
2021-06-03 08:11:43 +0200killsushi_(~killsushi@user/killsushi/x-5912268)
2021-06-03 08:12:00 +0200ddellacosta(~ddellacos@86.106.121.86) (Ping timeout: 245 seconds)
2021-06-03 08:14:31 +0200ru0mad(~ru0mad@82-64-17-144.subs.proxad.net)
2021-06-03 08:15:18 +0200killsushi(~killsushi@user/killsushi) (Ping timeout: 264 seconds)
2021-06-03 08:17:33 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-03 08:17:58 +0200ru0mad(~ru0mad@82-64-17-144.subs.proxad.net) (Client Quit)
2021-06-03 08:19:00 +0200Pixi(~Pixi@user/pixi) (Ping timeout: 272 seconds)
2021-06-03 08:20:02 +0200ru0mad(~ru0mad@82-64-17-144.subs.proxad.net)
2021-06-03 08:22:42 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-03 08:23:30 +0200ddellacosta(~ddellacos@89.45.224.235)
2021-06-03 08:24:33 +0200 <dmwit> ?where tutorials -- stardustfp
2021-06-03 08:24:33 +0200 <lambdabot> http://haskell.org/haskellwiki/Tutorials
2021-06-03 08:25:28 +0200a6a45081-2b83(~aditya@106.212.70.132)
2021-06-03 08:26:26 +0200ddellaco_(~ddellacos@89.46.62.62)
2021-06-03 08:27:00 +0200 <dmwit> guest63``: Yeah, parsec2 defined its own (<|>) before (<|>) was a thing and it's kept it for back-compatibility ever since. But it does the same thing as C.A.<|>, so you can safely hide it.
2021-06-03 08:27:53 +0200 <dmwit> guest63``: Also consider switching to parsec3 -- in many cases, this is as easy as just switching from `Text.ParserCombinators.Parsec[.Foo]` to `Text.Parsec[.Foo]` in all your imports.
2021-06-03 08:27:56 +0200ddellacosta(~ddellacos@89.45.224.235) (Ping timeout: 244 seconds)
2021-06-03 08:28:33 +0200 <dmwit> ...oh, scratch that, parsec3 exports a custom <|> as well. How obnoxious.
2021-06-03 08:28:34 +0200ru0mad(~ru0mad@82-64-17-144.subs.proxad.net) (Quit: leaving)
2021-06-03 08:28:52 +0200ru0mad(~ru0mad@82-64-17-144.subs.proxad.net)
2021-06-03 08:29:30 +0200sondre(~sondrelun@cm-84.212.100.140.getinternet.no) (Ping timeout: 245 seconds)
2021-06-03 08:30:39 +0200ru0mad(~ru0mad@82-64-17-144.subs.proxad.net) (Client Quit)
2021-06-03 08:31:02 +0200ddellaco_(~ddellacos@89.46.62.62) (Ping timeout: 244 seconds)
2021-06-03 08:31:13 +0200leeb_(~leeb@KD111239152092.au-net.ne.jp)
2021-06-03 08:31:46 +0200ru0mad(~ru0mad@82-64-17-144.subs.proxad.net)
2021-06-03 08:31:51 +0200ub(~Thunderbi@p200300ecdf259dec656b91086baf35ac.dip0.t-ipconnect.de)
2021-06-03 08:33:00 +0200ru0mad(~ru0mad@82-64-17-144.subs.proxad.net) (Client Quit)
2021-06-03 08:33:47 +0200ru0mad(~ru0mad@82-64-17-144.subs.proxad.net)
2021-06-03 08:34:05 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds)
2021-06-03 08:34:38 +0200ru0mad(~ru0mad@82-64-17-144.subs.proxad.net) (Client Quit)
2021-06-03 08:34:50 +0200leeb(~leeb@KD111239154171.au-net.ne.jp) (Ping timeout: 272 seconds)
2021-06-03 08:36:35 +0200ru0mad(~ru0mad@82-64-17-144.subs.proxad.net)
2021-06-03 08:36:42 +0200Bartosz(~textual@24.35.90.211) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-06-03 08:37:53 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:c560:d782:d610:e2ed)
2021-06-03 08:41:07 +0200v01d4lph4(~v01d4lph4@user/v01d4lph4) (Remote host closed the connection)
2021-06-03 08:41:42 +0200Pixi(~Pixi@user/pixi)
2021-06-03 08:44:08 +0200haskman(~haskman@223.190.19.8)
2021-06-03 08:45:12 +0200ddellacosta(~ddellacos@89.46.62.82)
2021-06-03 08:45:52 +0200v01d4lph4(~v01d4lph4@182.68.65.134)
2021-06-03 08:45:52 +0200v01d4lph4(~v01d4lph4@182.68.65.134) (Changing host)
2021-06-03 08:45:52 +0200v01d4lph4(~v01d4lph4@user/v01d4lph4)
2021-06-03 08:50:17 +0200ddellacosta(~ddellacos@89.46.62.82) (Ping timeout: 268 seconds)
2021-06-03 08:50:18 +0200v01d4lph4(~v01d4lph4@user/v01d4lph4) (Read error: Connection reset by peer)
2021-06-03 08:51:33 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-03 08:57:39 +0200ddellacosta(~ddellacos@89.45.224.27)
2021-06-03 09:00:04 +0200ub(~Thunderbi@p200300ecdf259dec656b91086baf35ac.dip0.t-ipconnect.de) (Remote host closed the connection)
2021-06-03 09:00:29 +0200favonia(~favonia@user/favonia) (Ping timeout: 244 seconds)
2021-06-03 09:00:53 +0200favonia(~favonia@user/favonia)
2021-06-03 09:02:00 +0200ddellacosta(~ddellacos@89.45.224.27) (Ping timeout: 245 seconds)
2021-06-03 09:02:57 +0200ddellacosta(~ddellacos@86.106.121.100)
2021-06-03 09:06:46 +0200phma(phma@2001:5b0:210b:c908:3c3e:633c:a47d:5a17) (Read error: Connection reset by peer)
2021-06-03 09:06:48 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-03 09:07:25 +0200ddellacosta(~ddellacos@86.106.121.100) (Ping timeout: 245 seconds)
2021-06-03 09:07:40 +0200phma(phma@2001:5b0:215d:d508:98fc:87:ee60:b793)
2021-06-03 09:10:10 +0200gehmehgeh(~user@user/gehmehgeh)
2021-06-03 09:12:00 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds)
2021-06-03 09:13:27 +0200node-sh(~node-sh@2401:4900:3b2a:6503:2967:665b:47ee:e0de)
2021-06-03 09:13:53 +0200haskman(~haskman@223.190.19.8) (Quit: Going to sleep. ZZZzzz…)
2021-06-03 09:15:31 +0200dhouthoo(~dhouthoo@178-117-36-167.access.telenet.be)
2021-06-03 09:17:34 +0200dunkeln(~dunkeln@94.129.65.28)
2021-06-03 09:18:18 +0200haskman(~haskman@223.190.19.8)
2021-06-03 09:18:40 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 245 seconds)
2021-06-03 09:19:10 +0200chele(~chele@user/chele)
2021-06-03 09:19:37 +0200ddellacosta(~ddellacos@86.106.121.108)
2021-06-03 09:21:17 +0200haltux_(~haltux@a89-154-181-47.cpe.netcabo.pt)
2021-06-03 09:22:51 +0200listofoptions_(~haha@047-005-156-009.res.spectrum.com)
2021-06-03 09:24:14 +0200ddellacosta(~ddellacos@86.106.121.108) (Ping timeout: 272 seconds)
2021-06-03 09:24:17 +0200mc47(~yecinem@89.246.239.190)
2021-06-03 09:24:46 +0200haltux_(~haltux@a89-154-181-47.cpe.netcabo.pt) (Client Quit)
2021-06-03 09:25:38 +0200listofoptions(~haha@047-005-156-009.res.spectrum.com) (Ping timeout: 252 seconds)
2021-06-03 09:27:04 +0200manicennui(uid349235@id-349235.tinside.irccloud.com) ()
2021-06-03 09:27:32 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:3547:b6d4:7412:5857) (Remote host closed the connection)
2021-06-03 09:28:37 +0200kluk(~kluk@cpe-69-203-82-73.nyc.res.rr.com) (Quit: Textual IRC Client: www.textualapp.com)
2021-06-03 09:29:19 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 09:30:18 +0200chaosite(~chaosite@user/chaosite)
2021-06-03 09:32:42 +0200node-sh(~node-sh@2401:4900:3b2a:6503:2967:665b:47ee:e0de) (Ping timeout: 264 seconds)
2021-06-03 09:35:29 +0200node-sh(~node-sh@2401:4900:3b2a:6503:2967:665b:47ee:e0de)
2021-06-03 09:35:41 +0200chaosite(~chaosite@user/chaosite) (Ping timeout: 272 seconds)
2021-06-03 09:36:19 +0200ddellacosta(~ddellacos@89.45.224.254)
2021-06-03 09:36:55 +0200gehmehgeh(~user@user/gehmehgeh) (Ping timeout: 252 seconds)
2021-06-03 09:37:20 +0200ddellaco_(~ddellacos@89.46.62.82)
2021-06-03 09:37:35 +0200Boomerang(~Boomerang@xd520f68c.cust.hiper.dk) (Remote host closed the connection)
2021-06-03 09:38:10 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 09:38:49 +0200GOD(~mad@user/god)
2021-06-03 09:38:58 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 09:39:45 +0200gehmehgeh(~user@user/gehmehgeh)
2021-06-03 09:40:20 +0200ddellacosta(~ddellacos@89.45.224.254) (Ping timeout: 245 seconds)
2021-06-03 09:40:32 +0200Boomerang(~Boomerang@xd520f68c.cust.hiper.dk)
2021-06-03 09:42:01 +0200ddellaco_(~ddellacos@89.46.62.82) (Ping timeout: 272 seconds)
2021-06-03 09:44:09 +0200Boomerang(~Boomerang@xd520f68c.cust.hiper.dk) (Remote host closed the connection)
2021-06-03 09:45:09 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-03 09:46:45 +0200Boomerang(~Boomerang@xd520f68c.cust.hiper.dk)
2021-06-03 09:47:16 +0200pavonia(~user@user/siracusa) (Quit: Bye!)
2021-06-03 09:48:14 +0200Boomerang(~Boomerang@xd520f68c.cust.hiper.dk) (Client Quit)
2021-06-03 09:51:17 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 09:52:06 +0200Guest3231(~Guest32@185.57.82.30) (Quit: Client closed)
2021-06-03 09:53:15 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 09:53:52 +0200ddellacosta(~ddellacos@86.106.121.56)
2021-06-03 09:54:42 +0200fendor(~fendor@178.115.57.160.wireless.dyn.drei.com)
2021-06-03 09:58:00 +0200haskman(~haskman@223.190.19.8) (Quit: Going to sleep. ZZZzzz…)
2021-06-03 09:58:00 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 09:58:26 +0200ddellacosta(~ddellacos@86.106.121.56) (Ping timeout: 272 seconds)
2021-06-03 09:58:52 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 10:00:58 +0200notzmv(~zmv@user/notzmv) (Ping timeout: 272 seconds)
2021-06-03 10:01:36 +0200 <sshine> https://github.com/graninas/The-Voids-Of-Haskell#Clean-Functional-Code <- the first book on the imaginary list is a book that's literally on my wish list.
2021-06-03 10:04:44 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 10:06:33 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 10:08:42 +0200 <tdammers> I could probably write a few of the books on that list
2021-06-03 10:09:10 +0200hendursa1(~weechat@user/hendursaga)
2021-06-03 10:09:55 +0200hendursaga(~weechat@user/hendursaga) (Ping timeout: 252 seconds)
2021-06-03 10:10:52 +0200hendursa1(~weechat@user/hendursaga) (Remote host closed the connection)
2021-06-03 10:11:15 +0200hendursa1(~weechat@user/hendursaga)
2021-06-03 10:11:17 +0200earthy(~arthurvl@deban2.xs4all.space)
2021-06-03 10:12:54 +0200ddellacosta(~ddellacos@89.46.62.48)
2021-06-03 10:15:22 +0200bigLama(~user@static-176-165-167-17.ftth.abo.bbox.fr)
2021-06-03 10:15:22 +0200ddellacosta(~ddellacos@89.46.62.48) (Read error: Connection reset by peer)
2021-06-03 10:15:41 +0200bigLama(~user@static-176-165-167-17.ftth.abo.bbox.fr) ()
2021-06-03 10:16:36 +0200ddellacosta(~ddellacos@89.46.62.248)
2021-06-03 10:18:13 +0200hnOsmium0001(uid453710@id-453710.stonehaven.irccloud.com) (Quit: Connection closed for inactivity)
2021-06-03 10:19:54 +0200peterhil(~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) (Quit: Must not waste too much time here...)
2021-06-03 10:19:58 +0200wonko(~wjc@62.115.229.50)
2021-06-03 10:21:03 +0200peterhil(~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi)
2021-06-03 10:21:14 +0200ddellacosta(~ddellacos@89.46.62.248) (Ping timeout: 272 seconds)
2021-06-03 10:21:35 +0200beka(~beka@104.193.170-254.PUBLIC.monkeybrains.net) (Ping timeout: 245 seconds)
2021-06-03 10:22:57 +0200dpl(~dpl@77-121-78-163.chn.volia.net)
2021-06-03 10:24:07 +0200jonathanx(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Remote host closed the connection)
2021-06-03 10:24:23 +0200fendor_(~fendor@178.115.129.101.wireless.dyn.drei.com)
2021-06-03 10:24:30 +0200azeem(~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it) (Ping timeout: 245 seconds)
2021-06-03 10:25:01 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 10:25:07 +0200cfricke(~cfricke@user/cfricke)
2021-06-03 10:25:42 +0200jonathanx(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se)
2021-06-03 10:25:57 +0200dragestil(~quassel@user/dragestil) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
2021-06-03 10:26:00 +0200a6a45081-2b83(~aditya@106.212.70.132) (Remote host closed the connection)
2021-06-03 10:27:12 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 10:27:34 +0200fendor(~fendor@178.115.57.160.wireless.dyn.drei.com) (Ping timeout: 272 seconds)
2021-06-03 10:27:55 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:3547:b6d4:7412:5857)
2021-06-03 10:28:30 +0200exarkun1(~exarkun@user/exarkun) (Remote host closed the connection)
2021-06-03 10:29:03 +0200exarkun1(~exarkun@user/exarkun)
2021-06-03 10:30:07 +0200dragestil(~quassel@180-150-39-25.b49627.bne.nbn.aussiebb.net)
2021-06-03 10:30:35 +0200ddellacosta(~ddellacos@89.46.62.116)
2021-06-03 10:31:34 +0200dragestil(~quassel@180-150-39-25.b49627.bne.nbn.aussiebb.net) (Changing host)
2021-06-03 10:31:34 +0200dragestil(~quassel@user/dragestil)
2021-06-03 10:31:46 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 10:32:27 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:3547:b6d4:7412:5857) (Ping timeout: 244 seconds)
2021-06-03 10:33:15 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 10:33:21 +0200tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz)
2021-06-03 10:33:25 +0200bfrk(~Thunderbi@200116b8456bb4003c666de9803185e6.dip.versatel-1u1.de)
2021-06-03 10:35:10 +0200ddellacosta(~ddellacos@89.46.62.116) (Ping timeout: 272 seconds)
2021-06-03 10:36:44 +0200rk04(~rk04@user/rajk)
2021-06-03 10:39:14 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-03 10:40:27 +0200satai(~satai@static-84-42-172-253.net.upcbroadband.cz)
2021-06-03 10:42:19 +0200node-sh_(~node-sh@2401:4900:3b2a:6503:2967:665b:47ee:e0de)
2021-06-03 10:42:55 +0200node-sh(~node-sh@2401:4900:3b2a:6503:2967:665b:47ee:e0de) (Remote host closed the connection)
2021-06-03 10:46:42 +0200node-sh_(~node-sh@2401:4900:3b2a:6503:2967:665b:47ee:e0de) (Remote host closed the connection)
2021-06-03 10:47:02 +0200node-sh_(~node-sh@2401:4900:3b2a:6503:2967:665b:47ee:e0de)
2021-06-03 10:47:31 +0200Lycurgus(~juan@cpe-45-46-140-49.buffalo.res.rr.com)
2021-06-03 10:48:46 +0200ddellacosta(~ddellacos@86.106.121.47)
2021-06-03 10:50:53 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Quit: leaving)
2021-06-03 10:52:05 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 10:52:54 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-03 10:53:05 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 10:53:42 +0200ddellacosta(~ddellacos@86.106.121.47) (Ping timeout: 264 seconds)
2021-06-03 10:56:05 +0200node-sh_(~node-sh@2401:4900:3b2a:6503:2967:665b:47ee:e0de) (Ping timeout: 268 seconds)
2021-06-03 10:57:38 +0200ddellacosta(~ddellacos@89.45.224.196)
2021-06-03 10:58:01 +0200dhil(~dhil@195.213.192.47)
2021-06-03 10:58:19 +0200benin03(~benin@183.82.205.186)
2021-06-03 10:58:30 +0200benin0(~benin@183.82.205.186) (Ping timeout: 264 seconds)
2021-06-03 10:58:30 +0200benin03benin0
2021-06-03 10:58:36 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 10:59:31 +0200dunkeln(~dunkeln@94.129.65.28) (Ping timeout: 245 seconds)
2021-06-03 10:59:49 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 11:01:08 +0200node-sh_(~node-sh@2401:4900:3b2a:6503:2967:665b:47ee:e0de)
2021-06-03 11:01:16 +0200v01d4lph4(~v01d4lph4@user/v01d4lph4)
2021-06-03 11:01:17 +0200v01d4lph4(~v01d4lph4@user/v01d4lph4) (Remote host closed the connection)
2021-06-03 11:01:30 +0200v01d4lph4(~v01d4lph4@user/v01d4lph4)
2021-06-03 11:02:26 +0200ddellacosta(~ddellacos@89.45.224.196) (Ping timeout: 245 seconds)
2021-06-03 11:05:29 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 11:05:49 +0200 <bartavelle> "There are so many themes that the community is just neglecting for some reason" pretty sure the reason is that it is a huge amount of work that will not get you rich :)
2021-06-03 11:06:55 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 11:07:34 +0200ddellacosta(~ddellacos@107.182.237.15)
2021-06-03 11:09:57 +0200wei2912(~wei2912@112.199.250.21) (Quit: Lost terminal)
2021-06-03 11:10:41 +0200node-sh_(~node-sh@2401:4900:3b2a:6503:2967:665b:47ee:e0de) (Ping timeout: 272 seconds)
2021-06-03 11:11:00 +0200phma(phma@2001:5b0:215d:d508:98fc:87:ee60:b793) (Read error: Connection reset by peer)
2021-06-03 11:11:54 +0200phma(phma@2001:5b0:2172:da08:98fc:87:ee60:b793)
2021-06-03 11:12:02 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 11:12:36 +0200ddellacosta(~ddellacos@107.182.237.15) (Ping timeout: 272 seconds)
2021-06-03 11:12:44 +0200shryke(~shryke@91.103.43.254)
2021-06-03 11:12:52 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 11:15:05 +0200favonia(~favonia@user/favonia) (Ping timeout: 252 seconds)
2021-06-03 11:16:03 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-03 11:17:06 +0200favonia(~favonia@user/favonia)
2021-06-03 11:17:08 +0200sondre(~sondrelun@cm-84.212.100.140.getinternet.no)
2021-06-03 11:17:40 +0200aplainze1akind(~johndoe@captainludd.powered.by.lunarbnc.net)
2021-06-03 11:18:46 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 11:19:32 +0200Guest15(~Guest15@103.122.67.164)
2021-06-03 11:19:37 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 11:19:46 +0200ubert1(~Thunderbi@p200300ecdf259dece6b318fffe838f33.dip0.t-ipconnect.de)
2021-06-03 11:20:08 +0200ubert(~Thunderbi@p200300ecdf259dece6b318fffe838f33.dip0.t-ipconnect.de) (Ping timeout: 268 seconds)
2021-06-03 11:20:09 +0200ubert1ubert
2021-06-03 11:20:13 +0200FragByte_(~christian@user/fragbyte)
2021-06-03 11:20:20 +0200 <maerwald> ask HF for funding
2021-06-03 11:20:30 +0200Soft(~soft-matr@2001:470:69fc:105::c75) (Ping timeout: 244 seconds)
2021-06-03 11:20:30 +0200maerwald[m](~maerwaldm@2001:470:69fc:105::1ee) (Ping timeout: 244 seconds)
2021-06-03 11:20:30 +0200ac(~aloiscoch@2001:470:69fc:105::65) (Ping timeout: 244 seconds)
2021-06-03 11:20:30 +0200psydroid(~psydroidm@user/psydroid) (Ping timeout: 244 seconds)
2021-06-03 11:20:30 +0200MatrixTravelerbo(~voyagert2@2001:470:69fc:105::22) (Ping timeout: 244 seconds)
2021-06-03 11:20:30 +0200FragByte(~christian@user/fragbyte) (Ping timeout: 244 seconds)
2021-06-03 11:20:30 +0200node-sh(~node-sh@2401:4900:3b2a:6503:2967:665b:47ee:e0de)
2021-06-03 11:20:35 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 252 seconds)
2021-06-03 11:20:39 +0200FragByte_FragByte
2021-06-03 11:20:45 +0200kosmikus[m](~andresloe@2001:470:69fc:105::95d) (Ping timeout: 268 seconds)
2021-06-03 11:20:45 +0200fgaz(~fgazmatri@2001:470:69fc:105::842) (Ping timeout: 268 seconds)
2021-06-03 11:20:49 +0200peddie(~peddie@2001:470:69fc:105::25d) (Ping timeout: 272 seconds)
2021-06-03 11:21:01 +0200adziahel[m](~adziahelm@2001:470:69fc:105::b4d) (Ping timeout: 272 seconds)
2021-06-03 11:21:01 +0200ru0mad[m](~ru0madmat@2001:470:69fc:105::9b2) (Ping timeout: 272 seconds)
2021-06-03 11:21:01 +0200zwro[m](~zwromatri@2001:470:69fc:105::1d4) (Ping timeout: 244 seconds)
2021-06-03 11:21:01 +0200jaror[m](~jaror@2001:470:69fc:105::265) (Ping timeout: 244 seconds)
2021-06-03 11:21:01 +0200tomferon[m](~tomferon@2001:470:69fc:105::268) (Ping timeout: 244 seconds)
2021-06-03 11:21:01 +0200Morrow[m](~morrowmma@2001:470:69fc:105::1d0) (Ping timeout: 244 seconds)
2021-06-03 11:21:01 +0200cdsmith(~cdsmithma@2001:470:69fc:105::284) (Ping timeout: 244 seconds)
2021-06-03 11:21:24 +0200aplainzetakind(~johndoe@captainludd.powered.by.lunarbnc.net) (Ping timeout: 268 seconds)
2021-06-03 11:21:24 +0200Artem[m](~artemtype@2001:470:69fc:105::75b) (Ping timeout: 268 seconds)
2021-06-03 11:21:24 +0200amesgen[m](~amesgenam@2001:470:69fc:105::82b) (Ping timeout: 268 seconds)
2021-06-03 11:21:24 +0200Drezil(~drezilkif@2001:470:69fc:105::7f8) (Ping timeout: 268 seconds)
2021-06-03 11:21:24 +0200Las[m](~lasmatrix@2001:470:69fc:105::74e) (Ping timeout: 268 seconds)
2021-06-03 11:21:24 +0200srid[m](~sridmatri@2001:470:69fc:105::1c2) (Ping timeout: 268 seconds)
2021-06-03 11:21:24 +0200hjulle[m](~hjullemat@2001:470:69fc:105::1dd) (Ping timeout: 268 seconds)
2021-06-03 11:21:24 +0200cdepillabout[m](~cdepillab@2001:470:69fc:105::3d3) (Ping timeout: 268 seconds)
2021-06-03 11:21:39 +0200eddiemundo(~eddiemund@2001:470:69fc:105::a9c) (Ping timeout: 272 seconds)
2021-06-03 11:22:31 +0200econo(uid147250@user/econo) (Quit: Connection closed for inactivity)
2021-06-03 11:24:02 +0200ddellacosta(~ddellacos@89.46.62.66)
2021-06-03 11:24:15 +0200hololeap(hololeap@user/hololeap) (Ping timeout: 265 seconds)
2021-06-03 11:24:39 +0200Lycurgus(~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt)
2021-06-03 11:25:21 +0200dyeplexer(~dyeplexer@user/dyeplexer) (Remote host closed the connection)
2021-06-03 11:25:23 +0200raehik1(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-06-03 11:25:32 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 11:25:48 +0200dunkeln(~dunkeln@94.129.65.28)
2021-06-03 11:27:01 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 11:28:16 +0200ddellacosta(~ddellacos@89.46.62.66) (Ping timeout: 245 seconds)
2021-06-03 11:28:37 +0200koishi_(~koishi_@185.209.85.134) (Quit: /ragequit)
2021-06-03 11:28:59 +0200Guest7513(~user@2001:19f0:5001:2f3b:5400:3ff:fe53:2d96) (Quit: Guest7513)
2021-06-03 11:29:14 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:3547:b6d4:7412:5857)
2021-06-03 11:29:55 +0200bmsk(~user@2001:19f0:5001:2f3b:5400:3ff:fe53:2d96)
2021-06-03 11:29:56 +0200satai(~satai@static-84-42-172-253.net.upcbroadband.cz) (Ping timeout: 245 seconds)
2021-06-03 11:30:32 +0200hexo(~hexo@user/hexo) (Ping timeout: 265 seconds)
2021-06-03 11:30:57 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-03 11:32:19 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 11:33:07 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 11:33:28 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:3547:b6d4:7412:5857) (Ping timeout: 244 seconds)
2021-06-03 11:34:21 +0200Guest15(~Guest15@103.122.67.164) (Quit: Connection closed)
2021-06-03 11:34:49 +0200dutchgriffon(~laurens@2604:3d08:4383:6200:e869:64ae:1b8e:29e)
2021-06-03 11:35:04 +0200dutchgriffon(~laurens@2604:3d08:4383:6200:e869:64ae:1b8e:29e) (Client Quit)
2021-06-03 11:35:08 +0200a6a45081-2b83(~aditya@106.212.70.132)
2021-06-03 11:35:11 +0200p3n(~p3n@2a00:19a0:3:7c:0:d9c6:7cf6:1)
2021-06-03 11:36:39 +0200ddellacosta(~ddellacos@89.45.224.209)
2021-06-03 11:38:55 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 11:39:05 +0200dunkeln(~dunkeln@94.129.65.28) (Ping timeout: 245 seconds)
2021-06-03 11:39:06 +0200Erutuon(~Erutuon@user/erutuon) (Ping timeout: 244 seconds)
2021-06-03 11:40:31 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 11:40:54 +0200ixlun(~matthew@109.249.184.235)
2021-06-03 11:41:03 +0200shryke_(~shryke@91.103.43.254)
2021-06-03 11:41:32 +0200ddellaco_(~ddellacos@86.106.121.23)
2021-06-03 11:41:43 +0200ddellacosta(~ddellacos@89.45.224.209) (Ping timeout: 268 seconds)
2021-06-03 11:41:57 +0200 <tdammers> there's also the "scratch an itch" thing
2021-06-03 11:42:52 +0200 <tdammers> those are all books that "the community" could use, but right now, the majority of working haskellers are quite experienced, and fairly capable of figuring those things out themselves, based on experiences in other languages and general exposure to programming in the trenches
2021-06-03 11:44:21 +0200shryke(~shryke@91.103.43.254) (Ping timeout: 272 seconds)
2021-06-03 11:48:51 +0200jess(~jess@libera/staff/jess) (Remote host closed the connection)
2021-06-03 11:48:51 +0200ddellaco_(~ddellacos@86.106.121.23) (Ping timeout: 268 seconds)
2021-06-03 11:48:52 +0200chexum(~chexum@2a02:a03f:62f9:3f00:6b71:476f:e71b:80b) (Remote host closed the connection)
2021-06-03 11:48:52 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-03 11:48:52 +0200node-sh_(~node-sh@2401:4900:3b32:43a1:8c96:2e93:ccfe:1ffe)
2021-06-03 11:48:54 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 11:50:46 +0200hexo(~hexo@2a02-ab04-2843-9500-b89d-68e0-efec-efc5.dynamic.v6.chello.sk)
2021-06-03 11:50:46 +0200hexo(~hexo@2a02-ab04-2843-9500-b89d-68e0-efec-efc5.dynamic.v6.chello.sk) (Changing host)
2021-06-03 11:50:46 +0200hexo(~hexo@user/hexo)
2021-06-03 11:50:47 +0200node-sh(~node-sh@2401:4900:3b2a:6503:2967:665b:47ee:e0de) (Ping timeout: 272 seconds)
2021-06-03 11:50:54 +0200chaosite(~chaosite@user/chaosite)
2021-06-03 11:50:56 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 11:52:27 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 11:53:02 +0200favonia(~favonia@user/favonia) (Ping timeout: 252 seconds)
2021-06-03 11:53:46 +0200favonia(~favonia@user/favonia)
2021-06-03 11:54:14 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 11:56:17 +0200lambdap4(~lambdap@static.167.190.119.168.clients.your-server.de)
2021-06-03 11:56:17 +0200cjay-(cjay@nerdbox.nerd2nerd.org)
2021-06-03 11:56:19 +0200chomwitt(~Pitsikoko@2a02:587:dc02:b00:b16c:5166:feb8:97d5) (Ping timeout: 272 seconds)
2021-06-03 11:56:20 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-03 11:56:36 +0200 <a6a45081-2b83> how can i find a function that takes Screen Id, i.e ∃a s.t. f:: ScreenId -> a
2021-06-03 11:56:54 +0200pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2021-06-03 11:57:23 +0200notzmv(~zmv@user/notzmv)
2021-06-03 11:57:31 +0200maerwald[m](~maerwaldm@2001:470:69fc:105::1ee)
2021-06-03 11:57:57 +0200 <a6a45081-2b83> "@h ScreenId -> a" hoogle queries are ∀ a f :: ScreenId -> a
2021-06-03 11:58:09 +0200mc47(~yecinem@89.246.239.190) (Remote host closed the connection)
2021-06-03 11:59:00 +0200nshepperd29(~nshepperd@li364-218.members.linode.com)
2021-06-03 11:59:06 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 11:59:09 +0200ddellacosta(~ddellacos@86.106.121.24)
2021-06-03 11:59:30 +0200nshepperd2(~nshepperd@li364-218.members.linode.com) (Killed (NickServ (GHOST command used by nshepperd29)))
2021-06-03 11:59:31 +0200nshepperd29nshepperd2
2021-06-03 12:00:50 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 12:01:19 +0200Pent(sid313808@id-313808.tooting.irccloud.com) (*.net *.split)
2021-06-03 12:01:19 +0200fabfianda[m](~fabfianda@2001:470:69fc:105::6db) (*.net *.split)
2021-06-03 12:01:19 +0200Megant(megant@user/megant) (*.net *.split)
2021-06-03 12:01:19 +0200liskin(~liskin@ackle.nomi.cz) (*.net *.split)
2021-06-03 12:01:19 +0200bsima(~bsima@simatime.com) (*.net *.split)
2021-06-03 12:01:19 +0200pie_bnc(~pie_bnc@user/pie/x-2818909) (*.net *.split)
2021-06-03 12:01:19 +0200sm2n(~sm2n@user/sm2n) (*.net *.split)
2021-06-03 12:01:19 +0200ham(~ham4@user/ham) (*.net *.split)
2021-06-03 12:01:19 +0200ivan(~ivan@user/ivan) (*.net *.split)
2021-06-03 12:01:19 +0200edwardk(sid47016@haskell/developer/edwardk) (*.net *.split)
2021-06-03 12:01:19 +0200NemesisD(sid24071@2001:67c:2f08:4::5e07) (*.net *.split)
2021-06-03 12:01:19 +0200iphy(sid67735@2001:67c:2f08:4::1:897) (*.net *.split)
2021-06-03 12:01:19 +0200jiribenes(~jiribenes@rosa.jiribenes.com) (*.net *.split)
2021-06-03 12:01:20 +0200thonkpod(~thonkpod@2001:19f0:ac01:b46:5400:1ff:fec7:d73d) (*.net *.split)
2021-06-03 12:01:20 +0200amir(sid22336@user/amir) (*.net *.split)
2021-06-03 12:01:20 +0200agander_m(sid407952@id-407952.tinside.irccloud.com) (*.net *.split)
2021-06-03 12:01:20 +0200Aighearach(~paris@c-71-63-160-210.hsd1.or.comcast.net) (*.net *.split)
2021-06-03 12:01:20 +0200samebchase(~samebchas@51.15.68.182) (*.net *.split)
2021-06-03 12:01:20 +0200keltono(~kelton@x-160-94-179-178.acm.umn.edu) (*.net *.split)
2021-06-03 12:01:20 +0200alp(~alp@user/alp) (*.net *.split)
2021-06-03 12:01:20 +0200mstruebing(~maex@2001:41d0:8:93c7::1) (*.net *.split)
2021-06-03 12:01:20 +0200dexterfoo(dexter@2a01:7e00::f03c:91ff:fe86:59ec) (*.net *.split)
2021-06-03 12:01:20 +0200ajb(~ajb@cupid.whatbox.ca) (*.net *.split)
2021-06-03 12:01:20 +0200mthvedt(uid501949@id-501949.stonehaven.irccloud.com) (*.net *.split)
2021-06-03 12:01:20 +0200teehemkay(sid14792@id-14792.tooting.irccloud.com) (*.net *.split)
2021-06-03 12:01:20 +0200bcoppens(~bartcopp@vpn2.bartcoppens.be) (*.net *.split)
2021-06-03 12:01:20 +0200dixie(~dixie@real.wilbury.sk) (*.net *.split)
2021-06-03 12:01:20 +0200motherfsck(~motherfsc@user/motherfsck) (*.net *.split)
2021-06-03 12:01:20 +0200guest61(~xxx@47.245.54.240) (*.net *.split)
2021-06-03 12:01:20 +0200tomboy64(~tomboy64@user/tomboy64) (*.net *.split)
2021-06-03 12:01:20 +0200enzotib(~enzotib@user/enzotib) (*.net *.split)
2021-06-03 12:01:20 +0200dwt_(~dwt_@c-98-200-58-177.hsd1.tx.comcast.net) (*.net *.split)
2021-06-03 12:01:20 +0200nf(~n@monade.li) (*.net *.split)
2021-06-03 12:01:20 +0200sm[m](~sm@plaintextaccounting/sm) (*.net *.split)
2021-06-03 12:01:20 +0200dcoutts(~duncan@94.186.125.91.dyn.plus.net) (*.net *.split)
2021-06-03 12:01:20 +0200bwe(~bwe@2a01:4f8:1c1c:4878::2) (*.net *.split)
2021-06-03 12:01:20 +0200incertia(~incertia@d4-50-26-103.nap.wideopenwest.com) (*.net *.split)
2021-06-03 12:01:20 +0200vgtw(~vgtw@c-9164205c.07-348-756d651.bbcust.telenor.se) (*.net *.split)
2021-06-03 12:01:20 +0200platz(~platz@user/platz) (*.net *.split)
2021-06-03 12:01:20 +0200Zemyla(~ec2-user@ec2-54-196-11-2.compute-1.amazonaws.com) (*.net *.split)
2021-06-03 12:01:20 +0200lisq(~quassel@lis.moe) (*.net *.split)
2021-06-03 12:01:20 +0200T_S_(sid501726@id-501726.highgate.irccloud.com) (*.net *.split)
2021-06-03 12:01:20 +0200Reyu[M](~reyureyuz@matrix.reyuzenfold.com) (*.net *.split)
2021-06-03 12:01:20 +0200bbhoss(sid18216@id-18216.tinside.irccloud.com) (*.net *.split)
2021-06-03 12:01:20 +0200esclear(~esclear@phobos.esclear.de) (*.net *.split)
2021-06-03 12:01:20 +0200cjay(cjay@nerdbox.nerd2nerd.org) (*.net *.split)
2021-06-03 12:01:20 +0200anoe(~anoe@delanoe.org) (*.net *.split)
2021-06-03 12:01:20 +0200statusfailed(~statusfai@statusfailed.com) (*.net *.split)
2021-06-03 12:01:20 +0200integral(sid296274@user/integral) (*.net *.split)
2021-06-03 12:01:20 +0200tomsmeding(~tomsmedin@2a03:b0c0:0:1010::767:3001) (*.net *.split)
2021-06-03 12:01:20 +0200acid(~acid@user/acid) (*.net *.split)
2021-06-03 12:01:20 +0200SethTisue__(sid14912@charlton.irccloud.com) (*.net *.split)
2021-06-03 12:01:20 +0200joeyh(~joeyh@kitenet.net) (*.net *.split)
2021-06-03 12:01:21 +0200adamse(sid72084@user/adamse) (*.net *.split)
2021-06-03 12:01:21 +0200absence(torgeihe@hildring.pvv.ntnu.no) (*.net *.split)
2021-06-03 12:01:21 +0200kritzefitz(~kritzefit@picard.host.weltraumschlangen.de) (*.net *.split)
2021-06-03 12:01:21 +0200remexre(~nathan@user/remexre) (*.net *.split)
2021-06-03 12:01:21 +0200ski(~ski@ed-3358-10.studat.chalmers.se) (*.net *.split)
2021-06-03 12:01:21 +0200kaychaks_(sid236345@id-236345.brockwell.irccloud.com) (*.net *.split)
2021-06-03 12:01:21 +0200tnks(sid412124@id-412124.brockwell.irccloud.com) (*.net *.split)
2021-06-03 12:01:21 +0200Patternmaster(~georg@li1192-118.members.linode.com) (*.net *.split)
2021-06-03 12:01:21 +0200tureba(tureba@tureba.org) (*.net *.split)
2021-06-03 12:01:21 +0200koz(~koz@121.99.240.58) (*.net *.split)
2021-06-03 12:01:21 +0200lambdap(~lambdap@static.167.190.119.168.clients.your-server.de) (*.net *.split)
2021-06-03 12:01:21 +0200Aleksejs(~Aleksejs@haskell.lv) (*.net *.split)
2021-06-03 12:01:22 +0200lambdap4lambdap
2021-06-03 12:03:16 +0200ddellacosta(~ddellacos@86.106.121.24) (Ping timeout: 245 seconds)
2021-06-03 12:04:30 +0200y04nn(~y04nn@193.32.127.220)
2021-06-03 12:06:15 +0200zeenk(~zeenk@2a02:2f04:a310:b600:b098:bf18:df4d:4c41)
2021-06-03 12:07:52 +0200GODBAD
2021-06-03 12:08:11 +0200ddellacosta(~ddellacos@86.106.143.27)
2021-06-03 12:08:25 +0200koishi_(~koishi_@185.209.85.134)
2021-06-03 12:09:20 +0200nerdypepper(znc@user/nerdypepper) (Read error: Connection reset by peer)
2021-06-03 12:09:40 +0200 <maerwald> are there any examples of native windows GUIs written in haskell?
2021-06-03 12:11:21 +0200Pent(sid313808@id-313808.tooting.irccloud.com)
2021-06-03 12:11:21 +0200fabfianda[m](~fabfianda@2001:470:69fc:105::6db)
2021-06-03 12:11:21 +0200Megant(megant@user/megant)
2021-06-03 12:11:21 +0200liskin(~liskin@ackle.nomi.cz)
2021-06-03 12:11:21 +0200ham(~ham4@user/ham)
2021-06-03 12:11:21 +0200bsima(~bsima@simatime.com)
2021-06-03 12:11:21 +0200pie_bnc(~pie_bnc@user/pie/x-2818909)
2021-06-03 12:11:21 +0200sm2n(~sm2n@user/sm2n)
2021-06-03 12:11:21 +0200ivan(~ivan@user/ivan)
2021-06-03 12:11:21 +0200edwardk(sid47016@haskell/developer/edwardk)
2021-06-03 12:11:21 +0200NemesisD(sid24071@2001:67c:2f08:4::5e07)
2021-06-03 12:11:21 +0200iphy(sid67735@2001:67c:2f08:4::1:897)
2021-06-03 12:11:21 +0200jiribenes(~jiribenes@rosa.jiribenes.com)
2021-06-03 12:11:21 +0200thonkpod(~thonkpod@2001:19f0:ac01:b46:5400:1ff:fec7:d73d)
2021-06-03 12:11:21 +0200agander_m(sid407952@id-407952.tinside.irccloud.com)
2021-06-03 12:11:21 +0200amir(sid22336@user/amir)
2021-06-03 12:11:21 +0200Aighearach(~paris@c-71-63-160-210.hsd1.or.comcast.net)
2021-06-03 12:11:21 +0200samebchase(~samebchas@51.15.68.182)
2021-06-03 12:11:21 +0200mstruebing(~maex@2001:41d0:8:93c7::1)
2021-06-03 12:11:21 +0200alp(~alp@user/alp)
2021-06-03 12:11:21 +0200keltono(~kelton@x-160-94-179-178.acm.umn.edu)
2021-06-03 12:11:21 +0200teehemkay(sid14792@id-14792.tooting.irccloud.com)
2021-06-03 12:11:21 +0200mthvedt(uid501949@id-501949.stonehaven.irccloud.com)
2021-06-03 12:11:21 +0200ajb(~ajb@cupid.whatbox.ca)
2021-06-03 12:11:21 +0200dexterfoo(dexter@2a01:7e00::f03c:91ff:fe86:59ec)
2021-06-03 12:11:21 +0200dixie(~dixie@real.wilbury.sk)
2021-06-03 12:11:21 +0200bcoppens(~bartcopp@vpn2.bartcoppens.be)
2021-06-03 12:11:21 +0200motherfsck(~motherfsc@user/motherfsck)
2021-06-03 12:11:21 +0200guest61(~xxx@47.245.54.240)
2021-06-03 12:11:21 +0200tomboy64(~tomboy64@user/tomboy64)
2021-06-03 12:11:21 +0200enzotib(~enzotib@user/enzotib)
2021-06-03 12:11:21 +0200dwt_(~dwt_@c-98-200-58-177.hsd1.tx.comcast.net)
2021-06-03 12:11:21 +0200nf(~n@monade.li)
2021-06-03 12:11:21 +0200esclear(~esclear@phobos.esclear.de)
2021-06-03 12:11:21 +0200sm[m](~sm@plaintextaccounting/sm)
2021-06-03 12:11:21 +0200dcoutts(~duncan@94.186.125.91.dyn.plus.net)
2021-06-03 12:11:21 +0200vgtw(~vgtw@c-9164205c.07-348-756d651.bbcust.telenor.se)
2021-06-03 12:11:21 +0200bwe(~bwe@2a01:4f8:1c1c:4878::2)
2021-06-03 12:11:21 +0200incertia(~incertia@d4-50-26-103.nap.wideopenwest.com)
2021-06-03 12:11:21 +0200platz(~platz@user/platz)
2021-06-03 12:11:21 +0200Zemyla(~ec2-user@ec2-54-196-11-2.compute-1.amazonaws.com)
2021-06-03 12:11:21 +0200lisq(~quassel@lis.moe)
2021-06-03 12:11:21 +0200T_S_(sid501726@id-501726.highgate.irccloud.com)
2021-06-03 12:11:21 +0200Reyu[M](~reyureyuz@matrix.reyuzenfold.com)
2021-06-03 12:11:21 +0200bbhoss(sid18216@id-18216.tinside.irccloud.com)
2021-06-03 12:11:21 +0200acid(~acid@user/acid)
2021-06-03 12:11:21 +0200statusfailed(~statusfai@statusfailed.com)
2021-06-03 12:11:21 +0200anoe(~anoe@delanoe.org)
2021-06-03 12:11:21 +0200integral(sid296274@user/integral)
2021-06-03 12:11:21 +0200tomsmeding(~tomsmedin@2a03:b0c0:0:1010::767:3001)
2021-06-03 12:11:21 +0200SethTisue__(sid14912@charlton.irccloud.com)
2021-06-03 12:11:21 +0200joeyh(~joeyh@kitenet.net)
2021-06-03 12:11:21 +0200adamse(sid72084@user/adamse)
2021-06-03 12:11:21 +0200absence(torgeihe@hildring.pvv.ntnu.no)
2021-06-03 12:11:21 +0200kritzefitz(~kritzefit@picard.host.weltraumschlangen.de)
2021-06-03 12:11:21 +0200remexre(~nathan@user/remexre)
2021-06-03 12:11:21 +0200ski(~ski@ed-3358-10.studat.chalmers.se)
2021-06-03 12:11:21 +0200kaychaks_(sid236345@id-236345.brockwell.irccloud.com)
2021-06-03 12:11:21 +0200tnks(sid412124@id-412124.brockwell.irccloud.com)
2021-06-03 12:11:21 +0200Patternmaster(~georg@li1192-118.members.linode.com)
2021-06-03 12:11:21 +0200tureba(tureba@tureba.org)
2021-06-03 12:11:21 +0200koz(~koz@121.99.240.58)
2021-06-03 12:11:21 +0200Aleksejs(~Aleksejs@haskell.lv)
2021-06-03 12:12:01 +0200nerdypepper(znc@152.67.162.71)
2021-06-03 12:12:34 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 12:12:51 +0200ddellacosta(~ddellacos@86.106.143.27) (Ping timeout: 245 seconds)
2021-06-03 12:13:18 +0200node-sh_(~node-sh@2401:4900:3b32:43a1:8c96:2e93:ccfe:1ffe) (Remote host closed the connection)
2021-06-03 12:13:25 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 12:13:32 +0200node-sh_(~node-sh@2401:4900:3b32:43a1:8c96:2e93:ccfe:1ffe)
2021-06-03 12:14:03 +0200sm2n_(~sm2n@user/sm2n)
2021-06-03 12:15:02 +0200favonia(~favonia@user/favonia) (Ping timeout: 268 seconds)
2021-06-03 12:15:59 +0200SethTisue__(sid14912@charlton.irccloud.com) (Ping timeout: 265 seconds)
2021-06-03 12:16:05 +0200favonia(~favonia@user/favonia)
2021-06-03 12:16:19 +0200ddellacosta(~ddellacos@86.106.121.82)
2021-06-03 12:16:29 +0200anoe(~anoe@delanoe.org) (Ping timeout: 265 seconds)
2021-06-03 12:16:34 +0200samebchase2(~samebchas@51.15.68.182)
2021-06-03 12:16:40 +0200anoe(~anoe@delanoe.org)
2021-06-03 12:16:57 +0200sm2n(~sm2n@user/sm2n) (Ping timeout: 265 seconds)
2021-06-03 12:17:26 +0200alp(~alp@user/alp) (Ping timeout: 265 seconds)
2021-06-03 12:17:26 +0200Zemyla(~ec2-user@ec2-54-196-11-2.compute-1.amazonaws.com) (Ping timeout: 265 seconds)
2021-06-03 12:18:22 +0200SethTisue__(sid14912@id-14912.charlton.irccloud.com)
2021-06-03 12:19:09 +0200samebchase(~samebchas@51.15.68.182) (Ping timeout: 265 seconds)
2021-06-03 12:19:26 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 12:20:19 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 12:20:35 +0200kuribas(~user@ip-188-118-57-242.reverse.destiny.be)
2021-06-03 12:20:46 +0200ddellacosta(~ddellacos@86.106.121.82) (Ping timeout: 245 seconds)
2021-06-03 12:22:08 +0200alp(~alp@163.172.83.213)
2021-06-03 12:22:41 +0200Zemyla(~ec2-user@ec2-54-196-11-2.compute-1.amazonaws.com)
2021-06-03 12:24:14 +0200BAD(~mad@user/god) ()
2021-06-03 12:26:06 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 12:26:11 +0200y04nn(~y04nn@193.32.127.220) (Ping timeout: 245 seconds)
2021-06-03 12:27:43 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 12:30:54 +0200oo_miguel(~pi@89-72-187-203.dynamic.chello.pl)
2021-06-03 12:31:12 +0200dyeplexer(~dyeplexer@user/dyeplexer)
2021-06-03 12:31:22 +0200ikex(~ash@user/ikex)
2021-06-03 12:32:56 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 12:34:20 +0200__monty__(~toonn@user/toonn)
2021-06-03 12:34:22 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 12:34:35 +0200p3n(~p3n@2a00:19a0:3:7c:0:d9c6:7cf6:1) (Quit: ZNC 1.8.2 - https://znc.in)
2021-06-03 12:34:51 +0200ddellacosta(~ddellacos@86.106.121.82)
2021-06-03 12:34:59 +0200p3n(~p3n@217.198.124.246)
2021-06-03 12:35:56 +0200jess(~jess@libera/staff/jess)
2021-06-03 12:39:47 +0200ddellacosta(~ddellacos@86.106.121.82) (Ping timeout: 245 seconds)
2021-06-03 12:39:48 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 12:40:21 +0200node-sh_(~node-sh@2401:4900:3b32:43a1:8c96:2e93:ccfe:1ffe) (Ping timeout: 268 seconds)
2021-06-03 12:40:22 +0200hololeap(hololeap@user/hololeap)
2021-06-03 12:40:28 +0200alp(~alp@163.172.83.213) (Changing host)
2021-06-03 12:40:28 +0200alp(~alp@user/alp)
2021-06-03 12:40:28 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 12:41:02 +0200dunkeln(~dunkeln@94.129.65.28)
2021-06-03 12:41:21 +0200jess(~jess@libera/staff/jess) ()
2021-06-03 12:41:48 +0200jess(~jess@libera/staff/jess)
2021-06-03 12:41:59 +0200 <hololeap> I ran into an issue in development with HLS where it was eating up all my RAM. I narrowed down the issue to this, which causes GHC to loop endlessly: http://sprunge.us/6MV7vZ
2021-06-03 12:42:01 +0200node-sh(~node-sh@2401:4900:3b32:43a1:8c96:2e93:ccfe:1ffe)
2021-06-03 12:43:05 +0200 <hololeap> UndecidableSuperClasses seems to be key to the issue
2021-06-03 12:43:47 +0200haltux(~haltux@a89-154-181-47.cpe.netcabo.pt)
2021-06-03 12:45:40 +0200vicfred(~vicfred@user/vicfred) (Quit: Leaving)
2021-06-03 12:46:16 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 12:48:51 +0200raehik1(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Quit: WeeChat 3.1)
2021-06-03 12:49:24 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-06-03 12:50:24 +0200 <Cale> hololeap: HasMultiFormTree ('Node '(r,o,'[]) '[]) -> HasMultiForm r o -> HasMultiFormTree (FieldTypes r o) -> HasMultiFormTree ('Node '(r,o,'[]) '[])
2021-06-03 12:51:37 +0200 <guest63``> Haskell's Set, Python's Tuple, Kotlin's Pair, Scheme's Improper List, are they same thing?
2021-06-03 12:51:47 +0200 <Cale> no
2021-06-03 12:52:04 +0200 <Cale> Haskell's Set is a very different data structure
2021-06-03 12:52:04 +0200 <guest63``> dirrence?
2021-06-03 12:52:44 +0200ddellacosta(~ddellacos@89.46.62.86)
2021-06-03 12:53:11 +0200 <river> haskells pair (,)
2021-06-03 12:53:28 +0200 <Cale> Haskell's Set requires an ordering on the type of elements being stored, they must all be the same type, and there are no duplicates, i.e. it's a representation for finite setst of elements of the given type
2021-06-03 12:53:38 +0200 <Cale> sets*
2021-06-03 12:54:43 +0200 <bartavelle> guest63``: Haskell's Set is more like like Python's set(), what you are referring to seems more like Haskell's tuples?
2021-06-03 12:54:52 +0200 <Cale> Haskell's tuples are close to the tuples in other languages, though if you want to get technical, there's a bit of a difference because of laziness.
2021-06-03 12:55:46 +0200node-sh(~node-sh@2401:4900:3b32:43a1:8c96:2e93:ccfe:1ffe) (Ping timeout: 272 seconds)
2021-06-03 12:56:24 +0200dunkeln(~dunkeln@94.129.65.28) (Ping timeout: 272 seconds)
2021-06-03 12:57:40 +0200ddellacosta(~ddellacos@89.46.62.86) (Ping timeout: 272 seconds)
2021-06-03 12:57:40 +0200 <guest63``> I don't know haskell has pair set and tuple...
2021-06-03 12:57:47 +0200 <Cale> If I have some x of type (Integer, String) for example, evaluation of x might not terminate (might be an infinite loop of some sort, or it might die with an exception), or it might evaluate as far as needed to match a pattern like (y,z), and then the evaluation of each of y and z additionally has the possibility to not terminate.
2021-06-03 12:58:27 +0200haskman(~haskman@223.190.2.235)
2021-06-03 12:58:30 +0200 <Cale> The components of a Haskell tuple are represented at runtime as pointers to code
2021-06-03 12:58:35 +0200haskman(~haskman@223.190.2.235) (Client Quit)
2021-06-03 12:58:39 +0200 <Cale> (thunks)
2021-06-03 12:59:20 +0200 <Cale> The first time that code runs, if computes the value, and then it overwrites the pointer to point at a shorter piece of code that immediately returns the already-computed value.
2021-06-03 12:59:35 +0200 <Cale> (That's how lazy evaluation works)
2021-06-03 12:59:49 +0200 <Cale> (Or at least, it's part of it)
2021-06-03 13:05:59 +0200 <hololeap> Cale: Although I don't completely understand, what you wrote pointed out a loop I was already looking at, and it seems this compiles: http://sprunge.us/Kz2uTk
2021-06-03 13:06:21 +0200shryke_(~shryke@91.103.43.254) (WeeChat 3.1)
2021-06-03 13:07:18 +0200larkfisherman(~larkfishe@217.75.204.126)
2021-06-03 13:07:27 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 244 seconds)
2021-06-03 13:07:39 +0200 <hololeap> the key seems to be to make sure the top level 'r' and 'o' are not caught in HasMultiForm{Tree,Forest}
2021-06-03 13:08:47 +0200 <hololeap> it makes sense, although I thought that GHC would be able to figure out that (C x => C x) ~ C x
2021-06-03 13:09:12 +0200dunkeln(~dunkeln@94.129.65.28)
2021-06-03 13:09:12 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
2021-06-03 13:09:17 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-03 13:09:49 +0200ddellacosta(~ddellacos@86.106.121.71)
2021-06-03 13:11:16 +0200node-sh(~node-sh@2401:4900:3b32:43a1:8c96:2e93:ccfe:1ffe)
2021-06-03 13:14:02 +0200ddellaco_(~ddellacos@89.45.224.66)
2021-06-03 13:14:50 +0200ddellacosta(~ddellacos@86.106.121.71) (Ping timeout: 268 seconds)
2021-06-03 13:14:50 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-06-03 13:15:05 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-03 13:16:31 +0200bontaq(~user@ool-18e47f8d.dyn.optonline.net)
2021-06-03 13:17:21 +0200ozzymcduff(~mathieu@81-234-151-21-no94.tbcn.telia.com) (Ping timeout: 272 seconds)
2021-06-03 13:17:25 +0200wallymathieu(~wallymath@81-234-151-21-no94.tbcn.telia.com) (Ping timeout: 245 seconds)
2021-06-03 13:18:15 +0200ddellaco_(~ddellacos@89.45.224.66) (Ping timeout: 245 seconds)
2021-06-03 13:19:32 +0200killsushi_(~killsushi@user/killsushi/x-5912268) (Quit: Leaving)
2021-06-03 13:20:13 +0200a6a45081-2b83(~aditya@106.212.70.132) (Remote host closed the connection)
2021-06-03 13:20:22 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 244 seconds)
2021-06-03 13:21:04 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-03 13:23:27 +0200oxide(~lambda@user/oxide) (Read error: Connection reset by peer)
2021-06-03 13:24:00 +0200ozzymcduff(~mathieu@81-234-151-21-no94.tbcn.telia.com)
2021-06-03 13:24:23 +0200ozzymcduffGuest7893
2021-06-03 13:25:25 +0200oxide(~lambda@user/oxide)
2021-06-03 13:26:10 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds)
2021-06-03 13:26:41 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-03 13:27:05 +0200leeb_(~leeb@KD111239152092.au-net.ne.jp) (Quit: WeeChat 3.1)
2021-06-03 13:28:30 +0200ddellacosta(~ddellacos@89.46.62.47)
2021-06-03 13:29:59 +0200mc47(~yecinem@89.246.239.190)
2021-06-03 13:30:53 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:3547:b6d4:7412:5857)
2021-06-03 13:32:43 +0200favonia(~favonia@user/favonia) (Ping timeout: 268 seconds)
2021-06-03 13:33:08 +0200favonia(~favonia@user/favonia)
2021-06-03 13:33:20 +0200ddellacosta(~ddellacos@89.46.62.47) (Ping timeout: 268 seconds)
2021-06-03 13:35:48 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:3547:b6d4:7412:5857) (Ping timeout: 268 seconds)
2021-06-03 13:36:47 +0200carbolymer_carbolymer
2021-06-03 13:41:33 +0200favonia(~favonia@user/favonia) (Ping timeout: 244 seconds)
2021-06-03 13:41:57 +0200favonia(~favonia@user/favonia)
2021-06-03 13:43:41 +0200dyeplexer(~dyeplexer@user/dyeplexer) (Remote host closed the connection)
2021-06-03 13:45:52 +0200rk04(~rk04@user/rajk) (Ping timeout: 250 seconds)
2021-06-03 13:46:26 +0200machinedgod(~machinedg@135-23-192-217.cpe.pppoe.ca)
2021-06-03 13:46:30 +0200ddellacosta(~ddellacos@89.46.62.37)
2021-06-03 13:46:50 +0200rk04(~rk04@user/rajk)
2021-06-03 13:47:00 +0200haskman(~haskman@223.190.2.235)
2021-06-03 13:48:45 +0200ddellaco_(~ddellacos@89.46.62.170)
2021-06-03 13:49:59 +0200zebrag(~chris@user/zebrag)
2021-06-03 13:51:13 +0200ddellacosta(~ddellacos@89.46.62.37) (Ping timeout: 268 seconds)
2021-06-03 13:51:49 +0200oxide(~lambda@user/oxide) (Read error: Connection reset by peer)
2021-06-03 13:51:56 +0200img(~img@2405:6580:b1c0:2500:2508:a86c:693c:5a39) (Quit: ZNC 1.8.1 - https://znc.in)
2021-06-03 13:53:03 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-03 13:53:24 +0200ddellaco_(~ddellacos@89.46.62.170) (Ping timeout: 272 seconds)
2021-06-03 13:53:34 +0200img(~img@2405:6580:b1c0:2500:67f2:d741:c73f:49d3)
2021-06-03 14:01:05 +0200dunkeln(~dunkeln@94.129.65.28) (Ping timeout: 268 seconds)
2021-06-03 14:02:27 +0200hmmmas(~chenqisu1@183.217.202.217) (Quit: Leaving.)
2021-06-03 14:03:05 +0200Deide(~Deide@wire.desu.ga)
2021-06-03 14:03:05 +0200Deide(~Deide@wire.desu.ga) (Changing host)
2021-06-03 14:03:05 +0200Deide(~Deide@user/deide)
2021-06-03 14:04:07 +0200tomsmedingdidn't follow the discussion but thinks that that type equality, (C x => C x) ~ C x, doesn't actually hold in GHC
2021-06-03 14:04:11 +0200lavaman(~lavaman@98.38.249.169)
2021-06-03 14:04:33 +0200 <tomsmeding> seeing as contexts become dictionaries and that => turns into an actual -> in Core
2021-06-03 14:04:38 +0200shailangsa(~shailangs@host86-186-136-74.range86-186.btcentralplus.com) (Remote host closed the connection)
2021-06-03 14:04:47 +0200ddellacosta(~ddellacos@89.46.62.125)
2021-06-03 14:09:52 +0200ddellacosta(~ddellacos@89.46.62.125) (Ping timeout: 272 seconds)
2021-06-03 14:10:03 +0200jacks2(~bc817c21@217.29.117.252)
2021-06-03 14:10:19 +0200aguapesada(~aguapesad@2804:14c:8793:8e2f:930e:9446:3a9d:bc55)
2021-06-03 14:11:34 +0200wonko(~wjc@62.115.229.50) (Quit: See You Space Cowboy..)
2021-06-03 14:14:30 +0200wonko(~wjc@62.115.229.50)
2021-06-03 14:14:30 +0200fabfianda(~fabfianda@net-93-148-125-174.cust.dsl.teletu.it) (Ping timeout: 245 seconds)
2021-06-03 14:16:47 +0200AgentM(~agentm@pool-162-83-130-212.nycmny.fios.verizon.net)
2021-06-03 14:19:41 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
2021-06-03 14:19:45 +0200smitop(uid328768@user/smitop)
2021-06-03 14:20:31 +0200Feuermagier(~Feuermagi@user/feuermagier) (Remote host closed the connection)
2021-06-03 14:20:49 +0200alex3(~Chel@BSN-77-82-41.static.siol.net) (Ping timeout: 268 seconds)
2021-06-03 14:21:01 +0200ixlun(~matthew@109.249.184.235) (Read error: Connection reset by peer)
2021-06-03 14:21:10 +0200MatrixTravelerbo(~voyagert2@2001:470:69fc:105::22)
2021-06-03 14:21:27 +0200fabfianda(~fabfianda@37.183.233.166)
2021-06-03 14:22:23 +0200ddellacosta(~ddellacos@89.46.62.86)
2021-06-03 14:22:43 +0200v01d4lph4(~v01d4lph4@user/v01d4lph4) (Remote host closed the connection)
2021-06-03 14:23:16 +0200v01d4lph4(~v01d4lph4@user/v01d4lph4)
2021-06-03 14:23:22 +0200ddellaco_(~ddellacos@89.45.224.254)
2021-06-03 14:24:20 +0200oxide(~lambda@user/oxide)
2021-06-03 14:24:55 +0200dario(~dario@2a02:8108:1100:16d8:e0ee:dd2d:d9e4:1cf)
2021-06-03 14:25:14 +0200ac(~aloiscoch@2001:470:69fc:105::65)
2021-06-03 14:25:23 +0200adziahel[m](~adziahelm@2001:470:69fc:105::b4d)
2021-06-03 14:25:47 +0200exarkun1(~exarkun@user/exarkun) (Read error: Connection reset by peer)
2021-06-03 14:26:03 +0200exarkun2(~exarkun@user/exarkun)
2021-06-03 14:26:57 +0200ddellacosta(~ddellacos@89.46.62.86) (Ping timeout: 265 seconds)
2021-06-03 14:26:57 +0200dario1(~dario@8.44.0.53)
2021-06-03 14:27:02 +0200pbrisbin(~patrick@pool-72-92-38-164.phlapa.fios.verizon.net)
2021-06-03 14:27:03 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-03 14:27:50 +0200ddellaco_(~ddellacos@89.45.224.254) (Ping timeout: 245 seconds)
2021-06-03 14:28:06 +0200boxscape(~boxscape@user/boxscape)
2021-06-03 14:28:14 +0200v01d4lph4(~v01d4lph4@user/v01d4lph4) (Ping timeout: 272 seconds)
2021-06-03 14:30:20 +0200dario(~dario@2a02:8108:1100:16d8:e0ee:dd2d:d9e4:1cf) (Ping timeout: 265 seconds)
2021-06-03 14:31:21 +0200 <boxscape> tomsmeding there's quite a bit of weirdness when it comes to equalities like that, I submitted an issue about it a while back https://gitlab.haskell.org/ghc/ghc/-/issues/17372
2021-06-03 14:31:28 +0200peddie(~peddie@2001:470:69fc:105::25d)
2021-06-03 14:31:33 +0200 <boxscape> i.e. using type synonyms changes whether things are equal or not
2021-06-03 14:31:37 +0200dunkeln(~dunkeln@94.129.65.28)
2021-06-03 14:32:03 +0200dario2(~dario@8.43.122.4)
2021-06-03 14:32:09 +0200 <boxscape> (though I think you're right that that particular equality never holds)
2021-06-03 14:32:27 +0200fgaz(~fgaz@2001:470:69fc:105::842)
2021-06-03 14:33:59 +0200benin0(~benin@183.82.205.186) (Ping timeout: 272 seconds)
2021-06-03 14:34:06 +0200kosmikus[m](~andresloe@2001:470:69fc:105::95d)
2021-06-03 14:34:12 +0200dario1(~dario@8.44.0.53) (Ping timeout: 265 seconds)
2021-06-03 14:34:23 +0200favonia(~favonia@user/favonia) (Ping timeout: 268 seconds)
2021-06-03 14:34:58 +0200ru0mad[m](~ru0madmat@2001:470:69fc:105::9b2)
2021-06-03 14:36:01 +0200 <jacks2> guest63``, python has similar syntax for creating tuples as python, ie: (1, "foo")
2021-06-03 14:36:18 +0200peterhil(~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) (Ping timeout: 264 seconds)
2021-06-03 14:36:24 +0200 <tomsmeding> boxscape: ewwww
2021-06-03 14:37:31 +0200favonia(~favonia@user/favonia)
2021-06-03 14:39:34 +0200jacks2(~bc817c21@217.29.117.252) (Quit: http://www.okay.uz/)
2021-06-03 14:40:28 +0200jacks2(~bc817c21@217.29.117.252)
2021-06-03 14:42:46 +0200shryke(~shryke@91.103.43.254)
2021-06-03 14:42:57 +0200rk0478(~rk04@user/rajk)
2021-06-03 14:43:01 +0200fabfianda(~fabfianda@37.183.233.166) (Ping timeout: 268 seconds)
2021-06-03 14:43:07 +0200rk0478(~rk04@user/rajk) (Client Quit)
2021-06-03 14:44:06 +0200 <stefan-_> :t ($ 32)
2021-06-03 14:44:07 +0200 <lambdabot> Num a => (a -> b) -> b
2021-06-03 14:45:14 +0200rk04(~rk04@user/rajk) (Ping timeout: 250 seconds)
2021-06-03 14:46:55 +0200comerijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-03 14:47:05 +0200geekosaur(~geekosaur@069-135-003-034.biz.spectrum.com)
2021-06-03 14:47:06 +0200alex3(~Chel@BSN-77-82-41.static.siol.net)
2021-06-03 14:47:52 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds)
2021-06-03 14:48:33 +0200nerdypepper(znc@152.67.162.71) (Changing host)
2021-06-03 14:48:33 +0200nerdypepper(znc@user/nerdypepper)
2021-06-03 14:51:57 +0200haskman(~haskman@223.190.2.235) (Quit: QUIT)
2021-06-03 14:52:07 +0200fabfianda(~fabfianda@net-93-148-121-206.cust.dsl.teletu.it)
2021-06-03 14:53:21 +0200 <carbolymer> is there a real difference between `MonadBaseControl IO m` and `MonadUnliftIO m`? at first glance both seem to accomplish the same
2021-06-03 14:53:24 +0200reumeth(~reumeth@user/reumeth)
2021-06-03 14:53:32 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 265 seconds)
2021-06-03 14:54:03 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
2021-06-03 14:55:24 +0200Las[m](~lasmatrix@2001:470:69fc:105::74e)
2021-06-03 14:55:37 +0200jolly(~jolly@208.180.97.158)
2021-06-03 14:56:19 +0200hjulle[m](~hjullemat@2001:470:69fc:105::1dd)
2021-06-03 14:56:31 +0200 <carbolymer> oh nvm, I'm reading blogpost which has this near the end https://lexi-lambda.github.io/blog/2019/09/07/demystifying-monadbasecontrol/
2021-06-03 14:58:02 +0200__monty__(~toonn@user/toonn) (Quit: leaving)
2021-06-03 14:59:01 +0200aguapesada(~aguapesad@2804:14c:8793:8e2f:930e:9446:3a9d:bc55) (Quit: aguapesada)
2021-06-03 14:59:08 +0200ddellacosta(~ddellacos@86.106.121.73)
2021-06-03 15:00:32 +0200peterhil(~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi)
2021-06-03 15:00:35 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-03 15:01:15 +0200alx741(~alx741@186.178.108.19)
2021-06-03 15:01:46 +0200chomwitt(~Pitsikoko@athedsl-20549.home.otenet.gr)
2021-06-03 15:01:50 +0200aguapesada(~aguapesad@191.177.175.57)
2021-06-03 15:01:57 +0200ddellaco_(~ddellacos@86.106.143.248)
2021-06-03 15:03:42 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 272 seconds)
2021-06-03 15:05:13 +0200carbolymerconsiders yeeting away unliftio from the project and replacing it with MonadBaseControl lifting
2021-06-03 15:05:49 +0200 <comerijn> carbolymer: That's the wrong way around
2021-06-03 15:05:56 +0200 <comerijn> MonadBaseControl is nightmare fuel
2021-06-03 15:06:10 +0200 <carbolymer> pls explain
2021-06-03 15:06:19 +0200 <carbolymer> from what I see, I can achieve the same effect
2021-06-03 15:06:28 +0200 <comerijn> After over a decade of Haskell I don't think I (or really, anyone else) can safely use MonadBaseControl
2021-06-03 15:06:41 +0200 <comerijn> carbolymer: No, there are lots of things that can't be made MonadUnliftIO
2021-06-03 15:06:48 +0200node-sh(~node-sh@2401:4900:3b32:43a1:8c96:2e93:ccfe:1ffe) (Ping timeout: 244 seconds)
2021-06-03 15:06:52 +0200ddellaco_(~ddellacos@86.106.143.248) (Ping timeout: 272 seconds)
2021-06-03 15:06:59 +0200 <comerijn> For good reason, because their MonadBaseControl instance are insanity inducing
2021-06-03 15:08:13 +0200 <comerijn> For example, you cannot make StateT MonadUnliftIO, because the semantics of things like "catch" are *wildly* confusing
2021-06-03 15:09:35 +0200 <sclv> I fundamentally disagree
2021-06-03 15:09:49 +0200 <sclv> MonadUnliftIO is essentially useless to me
2021-06-03 15:10:03 +0200 <carbolymer> comerijn: I mean, yeah, right, I meant MonadBaseControl is more general, and one can do more with it
2021-06-03 15:10:06 +0200 <sclv> because iirc it only unlifts things iso to reader
2021-06-03 15:10:33 +0200node-sh(~node-sh@2401:4900:3b32:43a1:8c96:2e93:ccfe:1ffe)
2021-06-03 15:10:51 +0200 <sclv> all my monad stacks are more interesting than what it lets me do
2021-06-03 15:11:08 +0200 <boxscape> well it's designed to work with the ReaderT pattern so that makes sense
2021-06-03 15:11:33 +0200 <sclv> The problem imho is that for a very long time people didn't realize that there's (basically for mathematical reasons) no way to do any sort of unlift for ContT type monads -- this is a hard barrier
2021-06-03 15:11:58 +0200 <sclv> so we had things that attempted to be more general than actually possible
2021-06-03 15:12:37 +0200favonia(~favonia@user/favonia) (Ping timeout: 272 seconds)
2021-06-03 15:12:43 +0200 <sclv> the right middle ground for my cases has always been unlifting for things that can be presented algebrically, since there's good tools for reasoning about those, and its formally sound
2021-06-03 15:13:37 +0200 <sclv> if you understand those reasoning tools, then i've found the semantics for things like catch not too confusing at all
2021-06-03 15:13:39 +0200cross(~cross@spitfire.i.gajendra.net)
2021-06-03 15:13:41 +0200favonia(~favonia@user/favonia)
2021-06-03 15:13:55 +0200cross(~cross@spitfire.i.gajendra.net) (Client Quit)
2021-06-03 15:15:09 +0200chomwitt(~Pitsikoko@athedsl-20549.home.otenet.gr) (Ping timeout: 272 seconds)
2021-06-03 15:16:22 +0200cross(~cross@spitfire.i.gajendra.net)
2021-06-03 15:16:35 +0200cross(~cross@spitfire.i.gajendra.net) (Client Quit)
2021-06-03 15:17:28 +0200cross(~cross@spitfire.i.gajendra.net)
2021-06-03 15:18:04 +0200chomwitt(~Pitsikoko@2a02:587:dc02:b00:b16c:5166:feb8:97d5)
2021-06-03 15:19:04 +0200keutoi(~keutoi@157.48.154.6)
2021-06-03 15:22:42 +0200favonia(~favonia@user/favonia) (Ping timeout: 272 seconds)
2021-06-03 15:23:06 +0200favonia(~favonia@user/favonia)
2021-06-03 15:23:23 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection)
2021-06-03 15:23:33 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-03 15:24:49 +0200marinelli[m](~marinelli@2001:470:69fc:105::2d8) (Quit: node-irc says goodbye)
2021-06-03 15:24:49 +0200sm[m](~sm@plaintextaccounting/sm) (Quit: node-irc says goodbye)
2021-06-03 15:24:49 +0200bb010g(~bb010gmat@2001:470:69fc:105::9a5) (Quit: node-irc says goodbye)
2021-06-03 15:24:49 +0200siraben(~siraben@user/siraben) (Quit: node-irc says goodbye)
2021-06-03 15:24:50 +0200the-coot[m](~the-cootm@2001:470:69fc:105::95f) (Quit: node-irc says goodbye)
2021-06-03 15:24:50 +0200fabfianda[m](~fabfianda@2001:470:69fc:105::6db) (Quit: node-irc says goodbye)
2021-06-03 15:24:50 +0200maralorn(~maralorn@2001:470:69fc:105::251) (Quit: node-irc says goodbye)
2021-06-03 15:24:50 +0200maerwald[m](~maerwaldm@2001:470:69fc:105::1ee) (Quit: node-irc says goodbye)
2021-06-03 15:24:50 +0200MatrixTravelerbo(~voyagert2@2001:470:69fc:105::22) (Quit: node-irc says goodbye)
2021-06-03 15:24:50 +0200adziahel[m](~adziahelm@2001:470:69fc:105::b4d) (Quit: node-irc says goodbye)
2021-06-03 15:24:50 +0200Las[m](~lasmatrix@2001:470:69fc:105::74e) (Quit: node-irc says goodbye)
2021-06-03 15:24:50 +0200ru0mad[m](~ru0madmat@2001:470:69fc:105::9b2) (Quit: node-irc says goodbye)
2021-06-03 15:24:50 +0200hjulle[m](~hjullemat@2001:470:69fc:105::1dd) (Quit: node-irc says goodbye)
2021-06-03 15:24:50 +0200ac(~aloiscoch@2001:470:69fc:105::65) (Quit: node-irc says goodbye)
2021-06-03 15:24:50 +0200peddie(~peddie@2001:470:69fc:105::25d) (Quit: node-irc says goodbye)
2021-06-03 15:24:50 +0200fgaz(~fgaz@2001:470:69fc:105::842) (Quit: node-irc says goodbye)
2021-06-03 15:24:50 +0200kosmikus[m](~andresloe@2001:470:69fc:105::95d) (Quit: node-irc says goodbye)
2021-06-03 15:25:45 +0200maerwald[m](~maerwaldm@2001:470:69fc:105::1ee)
2021-06-03 15:28:13 +0200siraben(~siraben@user/siraben)
2021-06-03 15:28:13 +0200ac(~aloiscoch@2001:470:69fc:105::65)
2021-06-03 15:28:13 +0200psydroid(~psydroidm@2001:470:69fc:105::165)
2021-06-03 15:28:13 +0200sm[m](~sm@plaintextaccounting/sm)
2021-06-03 15:28:13 +0200MatrixTravelerbo(~voyagert2@2001:470:69fc:105::22)
2021-06-03 15:28:13 +0200srid[m](~sridmatri@2001:470:69fc:105::1c2)
2021-06-03 15:28:13 +0200fgaz(~fgaz@2001:470:69fc:105::842)
2021-06-03 15:28:13 +0200maralorn(~maralorn@2001:470:69fc:105::251)
2021-06-03 15:28:14 +0200peddie(~peddie@2001:470:69fc:105::25d)
2021-06-03 15:28:14 +0200fabfianda[m](~fabfianda@2001:470:69fc:105::6db)
2021-06-03 15:28:15 +0200the-coot[m](~the-cootm@2001:470:69fc:105::95f)
2021-06-03 15:28:25 +0200hjulle[m](~hjullemat@2001:470:69fc:105::1dd)
2021-06-03 15:28:25 +0200Morrow[m](~morrowmma@2001:470:69fc:105::1d0)
2021-06-03 15:28:26 +0200Drezil(~drezilkif@2001:470:69fc:105::7f8)
2021-06-03 15:28:26 +0200cdepillabout[m](~cdepillab@2001:470:69fc:105::3d3)
2021-06-03 15:28:26 +0200tomferon[m](~tomferon@2001:470:69fc:105::268)
2021-06-03 15:28:26 +0200marinelli[m](~marinelli@2001:470:69fc:105::2d8)
2021-06-03 15:28:26 +0200bb010g(~bb010gmat@2001:470:69fc:105::9a5)
2021-06-03 15:28:26 +0200Las[m](~lasmatrix@2001:470:69fc:105::74e)
2021-06-03 15:28:26 +0200Artem[m](~artemtype@2001:470:69fc:105::75b)
2021-06-03 15:28:26 +0200zwro[m](~zwromatri@2001:470:69fc:105::1d4)
2021-06-03 15:28:27 +0200jaror[m](~jaror@2001:470:69fc:105::265)
2021-06-03 15:28:27 +0200kosmikus[m](~andresloe@2001:470:69fc:105::95d)
2021-06-03 15:28:27 +0200adziahel[m](~adziahelm@2001:470:69fc:105::b4d)
2021-06-03 15:28:27 +0200amesgen[m](~amesgenam@2001:470:69fc:105::82b)
2021-06-03 15:28:27 +0200eddiemundo(~eddiemund@2001:470:69fc:105::a9c)
2021-06-03 15:28:27 +0200Soft(~soft-matr@2001:470:69fc:105::c75)
2021-06-03 15:28:28 +0200ru0mad[m](~ru0madmat@2001:470:69fc:105::9b2)
2021-06-03 15:28:28 +0200cdsmith(~cdsmithma@2001:470:69fc:105::284)
2021-06-03 15:30:02 +0200larkfisherman(~larkfishe@217.75.204.126) (Quit: Leaving)
2021-06-03 15:30:13 +0200 <absence> i have an ffi call which calls back to haskell. is there any reason why calling throwTo from this callback wouldn't do anything?
2021-06-03 15:30:31 +0200 <comerijn> absence: What would it do?
2021-06-03 15:30:37 +0200nkpart(uid3844@id-3844.highgate.irccloud.com) (Quit: Connection closed for inactivity)
2021-06-03 15:31:05 +0200realtime(~realtime@177.18.185.16)
2021-06-03 15:31:24 +0200 <absence> comerijn: raise an async exception in the thread specified by the thread id i pass it
2021-06-03 15:31:36 +0200 <comerijn> Ah, wait, throwTo...hmm
2021-06-03 15:31:43 +0200 <comerijn> Good question
2021-06-03 15:31:58 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-03 15:32:01 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
2021-06-03 15:32:22 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:3547:b6d4:7412:5857)
2021-06-03 15:32:25 +0200hendursa1(~weechat@user/hendursaga) (Quit: hendursa1)
2021-06-03 15:32:38 +0200dario2(~dario@8.43.122.4) (Quit: #emacs)
2021-06-03 15:32:51 +0200hendursaga(~weechat@user/hendursaga)
2021-06-03 15:34:45 +0200hyiltiz(~quassel@31.220.5.250) (Quit: hyiltiz)
2021-06-03 15:36:03 +0200chomwitt(~Pitsikoko@2a02:587:dc02:b00:b16c:5166:feb8:97d5) (Ping timeout: 268 seconds)
2021-06-03 15:36:31 +0200comerijn(~merijn@83-160-49-249.ip.xs4all.nl) (Quit: Reconnecting)
2021-06-03 15:36:38 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-03 15:37:16 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:3547:b6d4:7412:5857) (Ping timeout: 272 seconds)
2021-06-03 15:37:39 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-06-03 15:38:07 +0200mikoto-chan(~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be)
2021-06-03 15:38:58 +0200larkfisherman(~larkfishe@217.75.204.126)
2021-06-03 15:41:53 +0200shryke(~shryke@91.103.43.254) (WeeChat 3.1)
2021-06-03 15:42:30 +0200ddellaco_(~ddellacos@86.106.121.183)
2021-06-03 15:45:20 +0200dunkeln(~dunkeln@94.129.65.28) (Ping timeout: 245 seconds)
2021-06-03 15:45:29 +0200ku(~ku@2601:280:c780:7ea0:cdcf:a821:1b13:9eb8)
2021-06-03 15:47:06 +0200ddellaco_(~ddellacos@86.106.121.183) (Ping timeout: 244 seconds)
2021-06-03 15:47:45 +0200egoist(~egoist@186.235.82.52)
2021-06-03 15:48:30 +0200exarkun2(~exarkun@user/exarkun) (Read error: Connection reset by peer)
2021-06-03 15:48:39 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 244 seconds)
2021-06-03 15:48:43 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-03 15:49:34 +0200exarkun2(~exarkun@user/exarkun)
2021-06-03 15:49:41 +0200ku(~ku@2601:280:c780:7ea0:cdcf:a821:1b13:9eb8) (Ping timeout: 244 seconds)
2021-06-03 15:50:54 +0200waleee(~waleee@h-98-128-228-119.NA.cust.bahnhof.se)
2021-06-03 15:54:44 +0200bramhaag(~bramhaag@endeavour.servers.alpaca.engineer)
2021-06-03 15:57:39 +0200 <kuribas> carbolymer: you throw all out, and write manual adapters :)
2021-06-03 15:57:48 +0200mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Quit: ZNC 1.8.2 - https://znc.in)
2021-06-03 15:58:03 +0200mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net)
2021-06-03 15:58:19 +0200 <carbolymer> kuribas: manual writing considered harmful
2021-06-03 15:58:21 +0200 <kuribas> MonadBaseControl is pure evil, MonadUnliftIO is mostly air...
2021-06-03 15:58:38 +0200 <kuribas> carbolymer: MonadUnliftIO doesn't give you much.
2021-06-03 15:58:51 +0200 <merijn> carbolymer: Manual writing is evil, but unpredictable and confusing code is eviller
2021-06-03 15:59:22 +0200 <kuribas> merijn: why is that evil.
2021-06-03 15:59:31 +0200 <kuribas> I don't mind some small amount of boilerplate code.
2021-06-03 15:59:33 +0200 <merijn> kuribas: Duplication, I meant
2021-06-03 15:59:39 +0200 <kuribas> right
2021-06-03 16:01:20 +0200notzmv(~zmv@user/notzmv) (Ping timeout: 268 seconds)
2021-06-03 16:01:35 +0200jose_zap(~textual@188-182-241-27-dynamic.dk.customer.tdc.net)
2021-06-03 16:03:46 +0200o1lo01ol1o(~o1lo01ol1@c-73-10-81-85.hsd1.nj.comcast.net)
2021-06-03 16:04:17 +0200slack1256(~slack1256@181.203.17.159)
2021-06-03 16:08:05 +0200justsomeguy(~justsomeg@user/justsomeguy) (Quit: WeeChat 3.0.1)
2021-06-03 16:11:29 +0200pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.2-dev)
2021-06-03 16:11:29 +0200o1lo01ol1o(~o1lo01ol1@c-73-10-81-85.hsd1.nj.comcast.net) (Read error: Connection reset by peer)
2021-06-03 16:11:34 +0200dunkeln(~dunkeln@94.129.65.28)
2021-06-03 16:11:39 +0200o1lo01ol1o(~o1lo01ol1@c-73-10-81-85.hsd1.nj.comcast.net)
2021-06-03 16:12:41 +0200listofoptions_listofoptions
2021-06-03 16:12:50 +0200notzmv(~zmv@user/notzmv)
2021-06-03 16:16:11 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 265 seconds)
2021-06-03 16:17:42 +0200keutoi(~keutoi@157.48.154.6) (Ping timeout: 264 seconds)
2021-06-03 16:17:57 +0200ddellaco_(~ddellacos@89.46.62.196)
2021-06-03 16:22:10 +0200igghibu(~igghibu@91.193.5.46)
2021-06-03 16:22:32 +0200ddellaco_(~ddellacos@89.46.62.196) (Ping timeout: 252 seconds)
2021-06-03 16:22:41 +0200wallymathieu(~wallymath@81-234-151-21-no94.tbcn.telia.com)
2021-06-03 16:24:14 +0200keutoi(~keutoi@106.208.55.80)
2021-06-03 16:25:30 +0200exarkun2(~exarkun@user/exarkun) (Remote host closed the connection)
2021-06-03 16:25:35 +0200Guest7893(~mathieu@81-234-151-21-no94.tbcn.telia.com) (Remote host closed the connection)
2021-06-03 16:25:44 +0200hyiltiz(~quassel@31.220.5.250)
2021-06-03 16:26:03 +0200exarkun2(~exarkun@user/exarkun)
2021-06-03 16:26:27 +0200psydroid(~psydroidm@2001:470:69fc:105::165) (Changing host)
2021-06-03 16:26:27 +0200psydroid(~psydroidm@user/psydroid)
2021-06-03 16:28:24 +0200slowButPresent(~slowButPr@user/slowbutpresent)
2021-06-03 16:30:18 +0200geekosaur(~geekosaur@069-135-003-034.biz.spectrum.com) (Ping timeout: 264 seconds)
2021-06-03 16:31:06 +0200hyiltiz(~quassel@31.220.5.250) (Ping timeout: 272 seconds)
2021-06-03 16:32:06 +0200geekosaur(~geekosaur@069-135-003-034.biz.spectrum.com)
2021-06-03 16:32:10 +0200chaosite(~chaosite@user/chaosite) (Ping timeout: 268 seconds)
2021-06-03 16:32:29 +0200ixlun(~matthew@109.249.184.235)
2021-06-03 16:33:35 +0200ozzymcduff(~mathieu@81-234-151-21-no94.tbcn.telia.com)
2021-06-03 16:33:41 +0200exarkun2(~exarkun@user/exarkun) (Quit: WeeChat 2.4)
2021-06-03 16:35:10 +0200hyiltiz(~quassel@31.220.5.250)
2021-06-03 16:35:48 +0200Sgeo(~Sgeo@user/sgeo)
2021-06-03 16:36:28 +0200learner-monad(~eric@cpe-174-105-47-100.columbus.res.rr.com)
2021-06-03 16:36:47 +0200keutoi_(~keutoi@106.208.13.22)
2021-06-03 16:38:04 +0200keutoi(~keutoi@106.208.55.80) (Ping timeout: 272 seconds)
2021-06-03 16:38:28 +0200ddellacosta(~ddellacos@86.106.121.73) (Remote host closed the connection)
2021-06-03 16:38:47 +0200ukari(~ukari@user/ukari) (Remote host closed the connection)
2021-06-03 16:38:56 +0200slac13085(~slack1256@181.203.3.95)
2021-06-03 16:38:57 +0200ddellacosta(~ddellacos@86.106.121.73)
2021-06-03 16:38:58 +0200ddellacosta(~ddellacos@86.106.121.73) (Remote host closed the connection)
2021-06-03 16:39:17 +0200ukari(~ukari@user/ukari)
2021-06-03 16:39:28 +0200ddellacosta(~ddellacos@86.106.121.73)
2021-06-03 16:40:05 +0200chaosite(~chaosite@user/chaosite)
2021-06-03 16:41:07 +0200ddellaco_(~ddellacos@89.46.62.114)
2021-06-03 16:41:19 +0200slack1256(~slack1256@181.203.17.159) (Ping timeout: 265 seconds)
2021-06-03 16:41:36 +0200myShoggoth(~myShoggot@97-120-89-117.ptld.qwest.net)
2021-06-03 16:44:13 +0200ddellacosta(~ddellacos@86.106.121.73) (Ping timeout: 265 seconds)
2021-06-03 16:47:03 +0200jalonso(~user@90.71.136.33)
2021-06-03 16:48:12 +0200chaosite(~chaosite@user/chaosite) (Ping timeout: 272 seconds)
2021-06-03 16:48:29 +0200tboerstad(~tboerstad@91.90.104.201) (Quit: Connection closed)
2021-06-03 16:49:44 +0200ddellacosta(~ddellacos@86.106.121.209)
2021-06-03 16:50:46 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-03 16:52:55 +0200koishi_(~koishi_@185.209.85.134) (Quit: /ragequit)
2021-06-03 16:53:41 +0200keutoi_(~keutoi@106.208.13.22) (Quit: leaving)
2021-06-03 16:54:32 +0200ddellacosta(~ddellacos@86.106.121.209) (Ping timeout: 272 seconds)
2021-06-03 16:58:51 +0200chaosite(~chaosite@user/chaosite)
2021-06-03 16:59:12 +0200oxide(~lambda@user/oxide) (Ping timeout: 265 seconds)
2021-06-03 17:00:43 +0200oxide(~lambda@user/oxide)
2021-06-03 17:00:54 +0200lavaman(~lavaman@98.38.249.169)
2021-06-03 17:01:05 +0200feetwind(~mike@2406:d500:6:1:216:3cff:fe36:651)
2021-06-03 17:01:10 +0200amahl(~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi)
2021-06-03 17:02:38 +0200GIANTWORLDKEEPER(~pjetcetal@2.95.204.25) (Read error: Connection reset by peer)
2021-06-03 17:03:47 +0200chaosite(~chaosite@user/chaosite) (Ping timeout: 252 seconds)
2021-06-03 17:04:05 +0200jalonso(~user@90.71.136.33) (Quit: ERC (IRC client for Emacs 26.3))
2021-06-03 17:05:34 +0200GIANTWORLDKEEPER(~pjetcetal@2.95.204.25)
2021-06-03 17:05:42 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 264 seconds)
2021-06-03 17:05:58 +0200jalonso(~user@90.71.136.33)
2021-06-03 17:07:30 +0200favonia(~favonia@user/favonia) (Ping timeout: 264 seconds)
2021-06-03 17:07:55 +0200favonia(~favonia@user/favonia)
2021-06-03 17:09:45 +0200koishi_(~koishi_@185.209.85.134)
2021-06-03 17:10:34 +0200jalonso(~user@90.71.136.33) (Client Quit)
2021-06-03 17:11:01 +0200bontaq(~user@ool-18e47f8d.dyn.optonline.net) (Ping timeout: 268 seconds)
2021-06-03 17:11:10 +0200jalonso(~user@90.71.136.33)
2021-06-03 17:12:13 +0200UNIXCHAD_(~UNIXCHAD_@41.45.242.27)
2021-06-03 17:15:17 +0200igghibu(~igghibu@91.193.5.46) (Quit: Textual IRC Client: www.textualapp.com)
2021-06-03 17:18:10 +0200hnOsmium0001(uid453710@id-453710.stonehaven.irccloud.com)
2021-06-03 17:18:19 +0200jalonso(~user@90.71.136.33) (ERC (IRC client for Emacs 26.3))
2021-06-03 17:18:38 +0200azeem(~azeem@176.200.202.86)
2021-06-03 17:20:28 +0200julm(~julm@user/julm) (Quit: leaving)
2021-06-03 17:22:19 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-03 17:24:59 +0200tjwds(~tjwds@194.44.236.50)
2021-06-03 17:24:59 +0200 <tjwds> /!\ ТНIЅ CHANⲚEⅬ HΑЅ MОVΕD ΤO IRⅭ.ᏞІBERΑ.CᎻᎪT ﹟ΗAMᎡAᗪІΟ ⁄!\
2021-06-03 17:24:59 +0200tjwds(~tjwds@194.44.236.50) (K-Lined)
2021-06-03 17:27:09 +0200epolanski(uid312403@id-312403.brockwell.irccloud.com)
2021-06-03 17:28:16 +0200tako(~user@net-2-45-30-17.cust.vodafonedsl.it)
2021-06-03 17:31:33 +0200jose_zap(~textual@188-182-241-27-dynamic.dk.customer.tdc.net) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-06-03 17:31:50 +0200 <zfnmxt> Is it possible to use (*) as a type operator with TypeOperators?
2021-06-03 17:32:06 +0200Sose(~username@mobile-access-6df04b-135.dhcp.inet.fi)
2021-06-03 17:32:15 +0200 <geekosaur> with -XNoStarIsType, yes
2021-06-03 17:32:26 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-03 17:32:27 +0200 <zfnmxt> Ah, I did that but just realized I forgot to rebuild =/
2021-06-03 17:32:30 +0200 <zfnmxt> Thanks :P
2021-06-03 17:32:35 +0200aguapesada(~aguapesad@191.177.175.57) (Ping timeout: 272 seconds)
2021-06-03 17:33:11 +0200derelict(~winter@2603-6011-f901-9e5b-0000-0000-0000-08cf.res6.spectrum.com)
2021-06-03 17:33:38 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:3547:b6d4:7412:5857)
2021-06-03 17:33:50 +0200ikex(~ash@user/ikex) (Ping timeout: 268 seconds)
2021-06-03 17:34:22 +0200feetwind(~mike@2406:d500:6:1:216:3cff:fe36:651) (Changing host)
2021-06-03 17:34:22 +0200feetwind(~mike@user/feetwind)
2021-06-03 17:35:17 +0200sszark(~sszark@h-85-24-213-180.A392.priv.bahnhof.se)
2021-06-03 17:36:11 +0200swistak-swistak
2021-06-03 17:37:36 +0200dunkeln(~dunkeln@94.129.65.28) (Ping timeout: 272 seconds)
2021-06-03 17:37:53 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:3547:b6d4:7412:5857) (Ping timeout: 252 seconds)
2021-06-03 17:38:47 +0200chomwitt(~Pitsikoko@2a02:587:dc02:b00:b16c:5166:feb8:97d5)
2021-06-03 17:43:58 +0200Ariakenom(~Ariakenom@2001:9b1:efb:fc00:40eb:897:c28a:3711)
2021-06-03 17:47:03 +0200chomwitt(~Pitsikoko@2a02:587:dc02:b00:b16c:5166:feb8:97d5) (Ping timeout: 265 seconds)
2021-06-03 17:47:12 +0200larkfisherman(~larkfishe@217.75.204.126) (Remote host closed the connection)
2021-06-03 17:47:42 +0200dpl(~dpl@77-121-78-163.chn.volia.net) (Ping timeout: 264 seconds)
2021-06-03 17:52:38 +0200dunkeln(~dunkeln@94.129.65.28)
2021-06-03 17:55:11 +0200ddellacosta(~ddellacos@86.106.143.131)
2021-06-03 17:56:42 +0200azeem(~azeem@176.200.202.86) (Ping timeout: 264 seconds)
2021-06-03 17:57:09 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:3547:b6d4:7412:5857)
2021-06-03 17:57:40 +0200dunkeln(~dunkeln@94.129.65.28) (Read error: Connection reset by peer)
2021-06-03 17:58:15 +0200dunkeln(~dunkeln@94.129.65.28)
2021-06-03 17:58:30 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:c560:d782:d610:e2ed) (Ping timeout: 268 seconds)
2021-06-03 17:59:42 +0200ddellacosta(~ddellacos@86.106.143.131) (Ping timeout: 264 seconds)
2021-06-03 17:59:47 +0200Tuplanolla(~Tuplanoll@91-159-68-239.elisa-laajakaista.fi)
2021-06-03 18:00:09 +0200chomwitt(~Pitsikoko@2a02:587:dc02:b00:b16c:5166:feb8:97d5)
2021-06-03 18:01:27 +0200Scotty_Trees(~Scotty_Tr@162-234-179-169.lightspeed.brhmal.sbcglobal.net) (Quit: Leaving)
2021-06-03 18:03:01 +0200lavaman(~lavaman@98.38.249.169)
2021-06-03 18:03:01 +0200kuribas(~user@ip-188-118-57-242.reverse.destiny.be) (Remote host closed the connection)
2021-06-03 18:08:28 +0200tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net)
2021-06-03 18:11:10 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 272 seconds)
2021-06-03 18:11:42 +0200fradet(~fradet@216.252.75.247)
2021-06-03 18:15:45 +0200 <janus> i am looking to convert a Rational to a Scientific, with a reasonable amount of precision
2021-06-03 18:16:03 +0200 <janus> i could convert to integer and then from that to Scentific, but that loses more precision than i'd like
2021-06-03 18:16:37 +0200azeem(~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it)
2021-06-03 18:16:40 +0200 <janus> i was thinking i'd multiply with the desired after-decimal precision, convert to integer, convert to scientific, then divide, but it seems clumsy
2021-06-03 18:16:59 +0200 <janus> tried hoogling for Fractional a => a -> Scientific but it gives me nothing useful
2021-06-03 18:17:06 +0200 <Taneb> janus: you can use `fromRational`, which is in Prelude (in the Fractional class)
2021-06-03 18:17:12 +0200chaosite(~chaosite@user/chaosite)
2021-06-03 18:17:33 +0200 <janus> oooh nice, thanks Taneb
2021-06-03 18:18:52 +0200thonkpod(~thonkpod@2001:19f0:ac01:b46:5400:1ff:fec7:d73d) (Quit: thonkpod)
2021-06-03 18:18:54 +0200dunkeln(~dunkeln@94.129.65.28) (Ping timeout: 264 seconds)
2021-06-03 18:19:11 +0200thonkpod(~thonkpod@user/thonkpod)
2021-06-03 18:22:26 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-03 18:23:12 +0200Guest4258(~anonymoos@r202-10.mmcs.rsu.ru)
2021-06-03 18:23:46 +0200Guest4258(~anonymoos@r202-10.mmcs.rsu.ru) ()
2021-06-03 18:24:06 +0200egoist1(~egoist@186.235.82.52)
2021-06-03 18:27:07 +0200 <Ariakenom> :t fromRational . toRational -- viaRational
2021-06-03 18:27:08 +0200 <lambdabot> (Fractional c, Real a) => a -> c
2021-06-03 18:27:23 +0200egoist(~egoist@186.235.82.52) (Ping timeout: 252 seconds)
2021-06-03 18:28:41 +0200sm2n_sm2n
2021-06-03 18:29:11 +0200chele(~chele@user/chele) (Remote host closed the connection)
2021-06-03 18:29:43 +0200 <Taneb> :t realToFrac
2021-06-03 18:29:43 +0200o1lo01ol1o(~o1lo01ol1@c-73-10-81-85.hsd1.nj.comcast.net) (Read error: Connection reset by peer)
2021-06-03 18:29:44 +0200 <lambdabot> (Real a, Fractional b) => a -> b
2021-06-03 18:29:51 +0200 <Taneb> Ariakenom: :)
2021-06-03 18:30:04 +0200o1lo01ol1o(~o1lo01ol1@c-73-10-81-85.hsd1.nj.comcast.net)
2021-06-03 18:30:10 +0200node-sh(~node-sh@2401:4900:3b32:43a1:8c96:2e93:ccfe:1ffe) (Ping timeout: 272 seconds)
2021-06-03 18:30:43 +0200 <Ariakenom> oh that was the one that existed. but not the Integer one iirc
2021-06-03 18:31:35 +0200node-sh(~node-sh@2401:4900:3b32:43a1:8c96:2e93:ccfe:1ffe)
2021-06-03 18:31:43 +0200 <Taneb> :t fromIntegral
2021-06-03 18:31:44 +0200 <lambdabot> (Integral a, Num b) => a -> b
2021-06-03 18:31:47 +0200 <Taneb> That's the Integer one
2021-06-03 18:31:54 +0200 <Taneb> They both exist
2021-06-03 18:32:56 +0200shailangsa(~shailangs@host86-186-177-181.range86-186.btcentralplus.com)
2021-06-03 18:33:11 +0200 <Ariakenom> huh must've misremembered. thanks
2021-06-03 18:34:08 +0200ddellacosta(~ddellacos@86.106.143.222)
2021-06-03 18:34:30 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 245 seconds)
2021-06-03 18:39:02 +0200ddellacosta(~ddellacos@86.106.143.222) (Ping timeout: 272 seconds)
2021-06-03 18:44:50 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 244 seconds)
2021-06-03 18:45:13 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-03 18:46:19 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-03 18:46:38 +0200fradet(~fradet@216.252.75.247) (Ping timeout: 272 seconds)
2021-06-03 18:47:15 +0200dpl(~dpl@77-121-78-163.chn.volia.net)
2021-06-03 18:50:35 +0200haltux(~haltux@a89-154-181-47.cpe.netcabo.pt) (Remote host closed the connection)
2021-06-03 18:50:45 +0200danso(~danso@23-233-111-52.cpe.pppoe.ca)
2021-06-03 18:51:33 +0200bfrk(~Thunderbi@200116b8456bb4003c666de9803185e6.dip.versatel-1u1.de) (Ping timeout: 244 seconds)
2021-06-03 18:51:35 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
2021-06-03 18:51:49 +0200econo(uid147250@user/econo)
2021-06-03 18:52:05 +0200hgolden(~hgolden2@cpe-172-114-84-61.socal.res.rr.com)
2021-06-03 18:52:08 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-03 18:54:14 +0200notzmv(~zmv@user/notzmv) (Ping timeout: 272 seconds)
2021-06-03 18:54:21 +0200Erutuon(~Erutuon@user/erutuon)
2021-06-03 18:55:11 +0200o1lo01ol_(~o1lo01ol1@c-73-10-81-85.hsd1.nj.comcast.net)
2021-06-03 18:55:41 +0200boxscape(~boxscape@user/boxscape) (Ping timeout: 265 seconds)
2021-06-03 18:56:00 +0200koishi_(~koishi_@185.209.85.134) (Quit: /ragequit)
2021-06-03 18:56:19 +0200ChaiTRex(~ChaiTRex@user/chaitrex) (Quit: ChaiTRex)
2021-06-03 18:57:10 +0200ChaiTRex(~ChaiTRex@user/chaitrex)
2021-06-03 18:57:45 +0200favonia(~favonia@user/favonia) (Ping timeout: 244 seconds)
2021-06-03 18:58:02 +0200o1lo01ol1o(~o1lo01ol1@c-73-10-81-85.hsd1.nj.comcast.net) (Ping timeout: 272 seconds)
2021-06-03 18:58:05 +0200chomwitt(~Pitsikoko@2a02:587:dc02:b00:b16c:5166:feb8:97d5) (Ping timeout: 272 seconds)
2021-06-03 18:58:43 +0200ChaiTRex(~ChaiTRex@user/chaitrex) (Client Quit)
2021-06-03 18:58:56 +0200ChaiTRex(~ChaiTRex@user/chaitrex)
2021-06-03 18:59:13 +0200favonia(~favonia@user/favonia)
2021-06-03 18:59:52 +0200ChaiTRex(~ChaiTRex@user/chaitrex) (Client Quit)
2021-06-03 18:59:59 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds)
2021-06-03 19:00:07 +0200ChaiTRex(~ChaiTRex@user/chaitrex)
2021-06-03 19:04:28 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 244 seconds)
2021-06-03 19:05:10 +0200 <maerwald> can you force your hspecs to run with --job=1?
2021-06-03 19:05:31 +0200 <maerwald> regardless of what's specified at command line
2021-06-03 19:05:53 +0200ddellacosta(~ddellacos@86.106.121.183)
2021-06-03 19:05:59 +0200 <maerwald> I tried to set parallel = id, but there seems to be more than that
2021-06-03 19:06:32 +0200Guest83(~Guest83@adsl-72-50-4-187.prtc.net)
2021-06-03 19:06:57 +0200favonia(~favonia@user/favonia) (Ping timeout: 272 seconds)
2021-06-03 19:07:22 +0200favonia(~favonia@user/favonia)
2021-06-03 19:07:26 +0200jco(~jco@c83-248-173-38.bredband.tele2.se)
2021-06-03 19:07:51 +0200Guest83(~Guest83@adsl-72-50-4-187.prtc.net) (Client Quit)
2021-06-03 19:10:50 +0200ddellacosta(~ddellacos@86.106.121.183) (Ping timeout: 252 seconds)
2021-06-03 19:11:09 +0200myShoggoth(~myShoggot@97-120-89-117.ptld.qwest.net) (Ping timeout: 265 seconds)
2021-06-03 19:11:09 +0200dysbarter(~dysbarter@adsl-72-50-4-187.prtc.net)
2021-06-03 19:14:06 +0200azeem(~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it) (Read error: Connection reset by peer)
2021-06-03 19:15:08 +0200favonia(~favonia@user/favonia) (Ping timeout: 272 seconds)
2021-06-03 19:15:33 +0200favonia(~favonia@user/favonia)
2021-06-03 19:16:46 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-03 19:19:31 +0200otulp(~otulp@ti0187q162-2423.bb.online.no)
2021-06-03 19:21:01 +0200ixlun(~matthew@109.249.184.235) (Read error: Connection reset by peer)
2021-06-03 19:24:07 +0200jacks2(~bc817c21@217.29.117.252) (Quit: http://www.okay.uz/)
2021-06-03 19:28:54 +0200rk04(~rk04@user/rajk)
2021-06-03 19:29:54 +0200berberman_(~berberman@user/berberman)
2021-06-03 19:30:22 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-03 19:30:58 +0200berberman(~berberman@user/berberman) (Ping timeout: 272 seconds)
2021-06-03 19:31:53 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-03 19:32:51 +0200chomwitt(~Pitsikoko@athedsl-20549.home.otenet.gr)
2021-06-03 19:33:46 +0200Ariakenom(~Ariakenom@2001:9b1:efb:fc00:40eb:897:c28a:3711) (Read error: Connection reset by peer)
2021-06-03 19:34:41 +0200myShoggoth(~myShoggot@97-120-89-117.ptld.qwest.net)
2021-06-03 19:35:32 +0200Ariakenom(~Ariakenom@2001:9b1:efb:fc00:c8f6:f028:b2f4:81fe)
2021-06-03 19:36:54 +0200UNIXCHAD_(~UNIXCHAD_@41.45.242.27) (Read error: Connection reset by peer)
2021-06-03 19:37:01 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 244 seconds)
2021-06-03 19:37:18 +0200node-sh(~node-sh@2401:4900:3b32:43a1:8c96:2e93:ccfe:1ffe) (Ping timeout: 272 seconds)
2021-06-03 19:37:51 +0200 <hololeap> what's a good way to set a hard limit on GHC memory usage in linux? I've heard people recommend cgroups, although I have no idea how to use that particular feature
2021-06-03 19:38:32 +0200 <[exa]> isn't there a gc option for that?
2021-06-03 19:38:36 +0200 <hololeap> I don't want HLS to silently eat up all my RAM because I did something fancy and caused GHC to go into a loop
2021-06-03 19:38:58 +0200 <hololeap> (which is what happened to me earlier)
2021-06-03 19:39:01 +0200 <[exa]> ah hls
2021-06-03 19:40:15 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
2021-06-03 19:40:58 +0200 <yushyin> hololeap: man systemd-run (and man systemd.resource-control) is one interface to cgroups
2021-06-03 19:41:05 +0200 <wz1000> hololeap: +RTS -M
2021-06-03 19:41:14 +0200 <maerwald> hololeap: https://imgur.com/a/cSDRwyC like that? :>
2021-06-03 19:41:37 +0200 <maerwald> also comment on https://github.com/haskell/haskell-language-server/issues/499
2021-06-03 19:42:15 +0200caleb(sid225275@user/ace) ()
2021-06-03 19:42:44 +0200ddellacosta(~ddellacos@86.106.121.183)
2021-06-03 19:45:21 +0200danso(~danso@23-233-111-52.cpe.pppoe.ca) (Quit: WeeChat 3.1)
2021-06-03 19:46:19 +0200peterhil(~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) (Ping timeout: 244 seconds)
2021-06-03 19:47:25 +0200 <hololeap> maerwald: I didn't get a chance to run top during the time, but I haven't noticed more than one instance running, so I don't think that's the problem
2021-06-03 19:47:29 +0200ddellacosta(~ddellacos@86.106.121.183) (Ping timeout: 272 seconds)
2021-06-03 19:47:52 +0200 <maerwald> at any read, make sure to install earlyoom
2021-06-03 19:47:59 +0200 <maerwald> s/read/rate/
2021-06-03 19:48:04 +0200cfricke(~cfricke@user/cfricke) (Ping timeout: 272 seconds)
2021-06-03 19:48:34 +0200cfricke(~cfricke@user/cfricke)
2021-06-03 19:49:07 +0200 <hololeap> I caused a loop by being foolish with UndecidableSuperClasses, which I didn't notice until my comp became unresponsive. but, once I got control back, I could verify that it was causing the compiler to spin out of control by trying to run ghci on the module.
2021-06-03 19:49:09 +0200Pixi_(~Pixi@user/pixi)
2021-06-03 19:49:20 +0200vicfred(~vicfred@user/vicfred)
2021-06-03 19:50:11 +0200 <maerwald> haskell is living on the edge...
2021-06-03 19:50:36 +0200 <hololeap> maerwald: thanks for the hint about earlyroom. it seems like something I could use
2021-06-03 19:50:38 +0200tremon(~tremon@217-63-61-89.cable.dynamic.v4.ziggo.nl)
2021-06-03 19:50:49 +0200rk04(~rk04@user/rajk) (Quit: rk04)
2021-06-03 19:51:02 +0200 <tapas> https://www.youtube.com/watch?v=7nqcL0mjMjw
2021-06-03 19:51:24 +0200 <maerwald> back when I had 16gb only there was no way to use repl without it
2021-06-03 19:51:32 +0200 <hololeap> yushyin: thanks for the tip
2021-06-03 19:52:02 +0200danso(~danso@23-233-111-52.cpe.pppoe.ca)
2021-06-03 19:52:04 +0200 <hololeap> I'm actually on 12GB right now, but the memory usage in general seems reasonable
2021-06-03 19:52:55 +0200 <maerwald> I'm considering to upgrade to 64
2021-06-03 19:53:08 +0200Pixi(~Pixi@user/pixi) (Ping timeout: 272 seconds)
2021-06-03 19:53:11 +0200 <maerwald> when I run my windows VM on the side, memory is full
2021-06-03 19:54:11 +0200 <hololeap> on a related note, are there any configuration files for HLS? I haven't seen anything mentioned about them
2021-06-03 19:54:21 +0200zmt01(~zmt00@user/zmt00)
2021-06-03 19:54:49 +0200hexfive(~eric@50.35.83.177)
2021-06-03 19:54:57 +0200hexfive(~eric@50.35.83.177) (Client Quit)
2021-06-03 19:55:05 +0200dudek(~dudek@185.150.236.112)
2021-06-03 19:56:33 +0200 <hololeap> for instance, where I could pass in the flags mentioned by wz1000. I keep asking in #haskell-language-server and never get a response
2021-06-03 19:58:12 +0200zmt00(~zmt00@user/zmt00) (Ping timeout: 272 seconds)
2021-06-03 19:59:34 +0200 <maerwald> hololeap: doesn't that depend on your LSP client?
2021-06-03 19:59:38 +0200 <wz1000> hololeap: depends on your client.
2021-06-03 20:03:03 +0200azeem(~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it)
2021-06-03 20:03:21 +0200 <hololeap> my client has very minimal LSP support. as far as I can tell, it just lets you configure the command and arguments that are run, and then it gives basic error highlighting and LSP messages
2021-06-03 20:03:41 +0200spatchkaa(~spatchkaa@S010600fc8da47b63.gv.shawcable.net) (Remote host closed the connection)
2021-06-03 20:03:46 +0200 <hololeap> Right now, it's configured to run `haskell-language-server-wrapper --lsp`
2021-06-03 20:03:58 +0200 <tomsmeding> hololeap: what's the client?
2021-06-03 20:04:02 +0200 <hololeap> kate
2021-06-03 20:06:56 +0200dpl(~dpl@77-121-78-163.chn.volia.net) (Ping timeout: 252 seconds)
2021-06-03 20:07:01 +0200 <hololeap> maerwald: earlyoom is now installed and set to start on boot. Cool, now I shouldn't have to mash Alt+SysRq+F anymore
2021-06-03 20:07:45 +0200 <maerwald> hololeap: make sure to disable swap
2021-06-03 20:07:55 +0200node-sh(~node-sh@2401:4900:3b34:7bd4:3db0:9804:12bf:c3a)
2021-06-03 20:07:58 +0200 <maerwald> or... there's an option for earlyoom to ignore swap or sth
2021-06-03 20:08:02 +0200 <maerwald> but I just disable it
2021-06-03 20:08:36 +0200 <hololeap> I have a small swap, 1.5GB just for caching long-running processes or whatever
2021-06-03 20:08:55 +0200dysbarter(~dysbarter@adsl-72-50-4-187.prtc.net) (Quit: Client closed)
2021-06-03 20:09:00 +0200 <hololeap> but I can just disable it if it's going to interfere with earlyoom
2021-06-03 20:09:56 +0200learner-monad(~eric@cpe-174-105-47-100.columbus.res.rr.com) (Changing host)
2021-06-03 20:09:56 +0200learner-monad(~eric@user/learner-monad)
2021-06-03 20:10:30 +0200 <maerwald> https://github.com/rfjakob/earlyoom#command-line-options
2021-06-03 20:11:21 +0200dunkeln(~dunkeln@94.129.65.28)
2021-06-03 20:11:28 +0200 <maerwald> I had a swap on a slow HDD... so I wouldn't get OOM, but linux kernel locking the PC for 15 minutes due to IO/register race
2021-06-03 20:11:51 +0200 <maerwald> (windows kernel has better swap behavior)
2021-06-03 20:13:21 +0200learner-monad(~eric@user/learner-monad) (Quit: WeeChat 3.1)
2021-06-03 20:13:24 +0200 <Sose> I'm on a laptop with 4GB memory and HLS + separate GHCI can definitely but a strain on it :D.. but surprisingly still usable
2021-06-03 20:13:31 +0200 <Sose> *put
2021-06-03 20:13:50 +0200learner-monad(~ehanneken@user/learner-monad)
2021-06-03 20:13:50 +0200 <maerwald> that's not living on the edge, but in the abyss
2021-06-03 20:16:11 +0200Baloo_(~Baloo_@h-98-128-172-214.A785.priv.bahnhof.se)
2021-06-03 20:16:25 +0200Baloo_(~Baloo_@h-98-128-172-214.A785.priv.bahnhof.se) (Remote host closed the connection)
2021-06-03 20:17:22 +0200rk04(~rk04@user/rajk)
2021-06-03 20:17:34 +0200Baloo_(~Baloo_@45.83.220.177)
2021-06-03 20:18:56 +0200beka(~beka@104.193.170-254.PUBLIC.monkeybrains.net)
2021-06-03 20:20:25 +0200dunkeln(~dunkeln@94.129.65.28) (Ping timeout: 244 seconds)
2021-06-03 20:20:37 +0200ddellacosta(~ddellacos@89.45.224.66)
2021-06-03 20:22:21 +0200dpl(~dpl@77-121-78-163.chn.volia.net)
2021-06-03 20:23:20 +0200dysbarter(~dysbarter@adsl-72-50-4-119.prtc.net)
2021-06-03 20:23:45 +0200spatchkaa(~spatchkaa@S010600fc8da47b63.gv.shawcable.net)
2021-06-03 20:24:11 +0200bfrk(~Thunderbi@200116b8456bb4003c666de9803185e6.dip.versatel-1u1.de)
2021-06-03 20:24:35 +0200 <tomsmeding> maerwald: https://github.com/facebookincubator/oomd/blob/master/docs/production_setup.md#swap
2021-06-03 20:24:39 +0200 <tomsmeding> (different daemon)
2021-06-03 20:25:13 +0200 <tomsmeding> given that earlyoom makes no such recommendation, I conclude that earlyoom is better software
2021-06-03 20:26:04 +0200ddellacosta(~ddellacos@89.45.224.66) (Ping timeout: 272 seconds)
2021-06-03 20:26:09 +0200 <maerwald> tomsmeding: yes, it doesn't need swap and you can tell it the kill thresholds for both memory and swap
2021-06-03 20:26:31 +0200thelounge925(~thelounge@69.234.40.90)
2021-06-03 20:26:49 +0200 <tomsmeding> doesn't that paragraph I linked horrify you
2021-06-03 20:27:28 +0200 <tomsmeding> "this software is a hack by design that may or may not work"
2021-06-03 20:27:32 +0200 <maerwald> I think I've seen a lot of weird stuff in software
2021-06-03 20:28:12 +0200 <maerwald> swap is really useless on linux
2021-06-03 20:28:18 +0200peterhil(~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi)
2021-06-03 20:28:39 +0200thelounge92(~thelounge@cpe-23-240-28-18.socal.res.rr.com) (Ping timeout: 272 seconds)
2021-06-03 20:28:40 +0200thelounge925thelounge92
2021-06-03 20:28:54 +0200 <maerwald> I haven't bothered to read Linus excuses about it. They're probably similar like his security excuses :>
2021-06-03 20:33:32 +0200 <meejah> i haven't run swap in a decade. I prefer the failure mode of "oom kills firefox" rather than "computer is very slow now" .. maybe this earlyoom thing is better ;)
2021-06-03 20:33:53 +0200 <maerwald> yep, it's faster
2021-06-03 20:34:15 +0200jolly18(~jolly@208.180.97.158)
2021-06-03 20:35:05 +0200 <yushyin> https://chrisdown.name/2018/01/02/in-defence-of-swap.html here are some excuses
2021-06-03 20:35:24 +0200jolly(~jolly@208.180.97.158) (Ping timeout: 244 seconds)
2021-06-03 20:37:17 +0200 <bramhaag> I'm trying to write an evaluator for a custom language in Haskell, does anyone have any good resources I can take some inspiration from?
2021-06-03 20:38:44 +0200favonia(~favonia@user/favonia) (Ping timeout: 272 seconds)
2021-06-03 20:39:09 +0200favonia(~favonia@user/favonia)
2021-06-03 20:42:07 +0200 <[exa]> bramhaag: how advanced you want the evaluator? just an interpreter?
2021-06-03 20:42:23 +0200 <[exa]> bramhaag: also, does the language have a haskell-style AST?
2021-06-03 20:42:37 +0200 <bramhaag> I've defined the language using type classes
2021-06-03 20:42:57 +0200 <[exa]> there's many ways to do it with type classes in fact
2021-06-03 20:42:59 +0200 <bramhaag> The language itself is a dumbed down version of Haskell with slightly different syntax, it supports partial application and HOF
2021-06-03 20:43:10 +0200cfricke(~cfricke@user/cfricke) (Ping timeout: 272 seconds)
2021-06-03 20:43:36 +0200 <bramhaag> This is a homework exercise, so some things are banned (Most notably monads and GHC extensions)
2021-06-03 20:43:47 +0200 <[exa]> ah okay good, so you have "definitions" that may be "applied" etc
2021-06-03 20:44:44 +0200 <bramhaag> Exactly, an example of the language would be this https://paste.tomsmeding.com/4z5vhM6J
2021-06-03 20:45:05 +0200cfricke(~cfricke@user/cfricke)
2021-06-03 20:45:07 +0200 <bramhaag> I've implemented a basic eval function, but adding support for partial application and HOFs is rather painful with this implementation
2021-06-03 20:45:19 +0200zmt01zmt00
2021-06-03 20:45:22 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-06-03 20:45:45 +0200 <[exa]> bramhaag: for partial application you might just need the correct abstraction (or "object") that represents it
2021-06-03 20:46:04 +0200 <[exa]> the usual way is to have "a function call with N holes for arguments that are still missing"
2021-06-03 20:47:04 +0200dysbarter(~dysbarter@adsl-72-50-4-119.prtc.net) (Ping timeout: 250 seconds)
2021-06-03 20:47:46 +0200 <[exa]> also feel free to show the eval here
2021-06-03 20:49:36 +0200 <bramhaag> I'm afraid my university wouldn't like that
2021-06-03 20:50:05 +0200 <bramhaag> another object to represent partial application is a good idea though, currently I've implemented it with the same object I use to represent regular funcalls and that's a bit of a mess
2021-06-03 20:50:29 +0200 <[exa]> yeah, you literally want to fold logic here in the data
2021-06-03 20:50:45 +0200jolly18jolly
2021-06-03 20:51:05 +0200 <[exa]> re university, I'd love if my students sometimes discussed the code with others before submitting :D
2021-06-03 20:51:35 +0200cfricke(~cfricke@user/cfricke) (Quit: WeeChat 3.1)
2021-06-03 20:51:54 +0200 <[exa]> like, copypasting is bad but avoiding various preventable pitfalls is much more important I guess
2021-06-03 20:52:17 +0200favonia(~favonia@user/favonia) (Ping timeout: 272 seconds)
2021-06-03 20:52:35 +0200notzmv(~zmv@user/notzmv)
2021-06-03 20:52:39 +0200 <bramhaag> My current approach consists of two functions basically: bind which "binds" user-specified values to variables, and reduce which tries to simplify expressions into a constant value (using the bind function when needed)
2021-06-03 20:52:40 +0200 <[exa]> anyway, this "partially applied function" is also how haskell gets evaluated (you might google closures, thunks and similar things)
2021-06-03 20:52:44 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-03 20:53:02 +0200 <[exa]> ah so you have a partial evaluator
2021-06-03 20:53:13 +0200favonia(~favonia@user/favonia)
2021-06-03 20:55:16 +0200 <[exa]> that's good for some things but if you're after "just a normal evaluation", you generally want a single-layer function, something which takes the current bindings + AST, and outputs values
2021-06-03 20:55:36 +0200ddellacosta(~ddellacos@89.45.224.92)
2021-06-03 20:56:05 +0200 <[exa]> in this view, the partially applied functions make nice values (also, remember to avoid using variable names in there)
2021-06-03 20:56:27 +0200Rembanewaves the DeBruijn flag
2021-06-03 20:57:25 +0200thelounge920(~thelounge@cpe-23-240-28-18.socal.res.rr.com)
2021-06-03 20:57:25 +0200 <[exa]> not debruijn indexes per se, just to avoid the result referring to a scope value that might disappear
2021-06-03 20:58:02 +0200 <Rembane> That's true
2021-06-03 20:58:37 +0200 <[exa]> (otoh a bit of DeBruijn never hurts. :D)
2021-06-03 20:58:45 +0200 <bramhaag> In this language you cannot assign variables, so the only variables in scope are the current function's parameters
2021-06-03 20:58:49 +0200 <bramhaag> that hopefully simplifies things a little
2021-06-03 20:59:12 +0200 <Rembane> [exa]: Exactly! :D
2021-06-03 20:59:38 +0200 <[exa]> I wanted to avoid a situation where you evaluator refers a reference to a variable like "take the value of X here" for an X that only existed in the function, or was shadowed there
2021-06-03 20:59:41 +0200thelounge92(~thelounge@69.234.40.90) (Ping timeout: 272 seconds)
2021-06-03 20:59:41 +0200thelounge920thelounge92
2021-06-03 21:00:00 +0200 <[exa]> drawing a thick line between scope and values helps it a lot
2021-06-03 21:00:23 +0200ddellacosta(~ddellacos@89.45.224.92) (Ping timeout: 265 seconds)
2021-06-03 21:00:37 +0200 <[exa]> s/refers/returns/
2021-06-03 21:00:41 +0200o1lo01ol_(~o1lo01ol1@c-73-10-81-85.hsd1.nj.comcast.net) (Remote host closed the connection)
2021-06-03 21:00:43 +0200favonia(~favonia@user/favonia) (Ping timeout: 244 seconds)
2021-06-03 21:00:52 +0200 <bramhaag> Yeah makes sense, I'll try the single-layer approach, tyvm!
2021-06-03 21:01:45 +0200o1lo01ol1o(~o1lo01ol1@c-73-10-81-85.hsd1.nj.comcast.net)
2021-06-03 21:02:19 +0200jolly(~jolly@208.180.97.158) (Ping timeout: 265 seconds)
2021-06-03 21:02:19 +0200favonia(~favonia@user/favonia)
2021-06-03 21:02:22 +0200 <[exa]> btw there might be a pitfall or two in handling the partially-applied functions that I didn't realize now, but hopefully nothing harsh
2021-06-03 21:03:02 +0200 <bramhaag> oh there always are pitfalls
2021-06-03 21:03:20 +0200 <bramhaag> but it'll be *fiiiineee*
2021-06-03 21:03:31 +0200o1lo01ol1o(~o1lo01ol1@c-73-10-81-85.hsd1.nj.comcast.net) (Remote host closed the connection)
2021-06-03 21:03:43 +0200o1lo01ol1o(~o1lo01ol1@c-73-10-81-85.hsd1.nj.comcast.net)
2021-06-03 21:06:26 +0200rk04(~rk04@user/rajk) (Quit: rk04)
2021-06-03 21:07:12 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-03 21:10:27 +0200azeem(~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it) (Read error: Connection reset by peer)
2021-06-03 21:10:32 +0200favonia(~favonia@user/favonia) (Ping timeout: 244 seconds)
2021-06-03 21:10:56 +0200favonia(~favonia@user/favonia)
2021-06-03 21:14:17 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-03 21:14:20 +0200dunkeln(~dunkeln@94.129.65.28)
2021-06-03 21:14:27 +0200shailangsa(~shailangs@host86-186-177-181.range86-186.btcentralplus.com) (Ping timeout: 272 seconds)
2021-06-03 21:16:49 +0200Erutuon(~Erutuon@user/erutuon) (Ping timeout: 265 seconds)
2021-06-03 21:16:55 +0200Voeid(luke@voeid.cf) (Quit: Leaving...)
2021-06-03 21:17:28 +0200Voeid(luke@voeid.cf)
2021-06-03 21:17:48 +0200ddellacosta(~ddellacos@89.46.62.43)
2021-06-03 21:18:08 +0200azeem(~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it)
2021-06-03 21:18:36 +0200Erutuon(~Erutuon@user/erutuon)
2021-06-03 21:19:43 +0200ddellaco_(~ddellacos@89.46.62.114) (Ping timeout: 265 seconds)
2021-06-03 21:23:07 +0200azeem(~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it) (Read error: Connection reset by peer)
2021-06-03 21:24:35 +0200o1lo01ol1o(~o1lo01ol1@c-73-10-81-85.hsd1.nj.comcast.net) (Remote host closed the connection)
2021-06-03 21:25:16 +0200o1lo01ol1o(~o1lo01ol1@c-73-10-81-85.hsd1.nj.comcast.net)
2021-06-03 21:27:14 +0200favonia(~favonia@user/favonia) (Ping timeout: 252 seconds)
2021-06-03 21:27:38 +0200favonia(~favonia@user/favonia)
2021-06-03 21:27:53 +0200xakon(~xakon@46.165.219.81)
2021-06-03 21:31:17 +0200xakon(~xakon@46.165.219.81) (Client Quit)
2021-06-03 21:31:38 +0200maerwaldhasufell
2021-06-03 21:32:44 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-03 21:38:51 +0200img(~img@2405:6580:b1c0:2500:67f2:d741:c73f:49d3) (Quit: ZNC 1.8.1 - https://znc.in)
2021-06-03 21:40:03 +0200tako(~user@net-2-45-30-17.cust.vodafonedsl.it) (Quit: ERC (IRC client for Emacs 27.2))
2021-06-03 21:40:29 +0200img(~img@2405:6580:b1c0:2500:836a:9768:6f91:445b)
2021-06-03 21:40:48 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 272 seconds)
2021-06-03 21:41:37 +0200hasufellmaerwald
2021-06-03 21:43:16 +0200ubert1(~Thunderbi@p200300ecdf259d40e6b318fffe838f33.dip0.t-ipconnect.de)
2021-06-03 21:43:27 +0200shailangsa(~shailangs@host86-186-177-181.range86-186.btcentralplus.com)
2021-06-03 21:43:44 +0200peterhil(~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) (Ping timeout: 252 seconds)
2021-06-03 21:44:36 +0200ubert(~Thunderbi@p200300ecdf259dece6b318fffe838f33.dip0.t-ipconnect.de) (Ping timeout: 272 seconds)
2021-06-03 21:44:36 +0200ubert1ubert
2021-06-03 21:44:44 +0200nerdypepper(znc@user/nerdypepper) (Read error: Connection reset by peer)
2021-06-03 21:46:30 +0200nerdypepper(znc@152.67.162.71)
2021-06-03 21:47:13 +0200favonia(~favonia@user/favonia) (Ping timeout: 244 seconds)
2021-06-03 21:47:37 +0200favonia(~favonia@user/favonia)
2021-06-03 21:47:53 +0200pavonia(~user@user/siracusa)
2021-06-03 21:53:42 +0200beka(~beka@104.193.170-254.PUBLIC.monkeybrains.net) (Ping timeout: 264 seconds)
2021-06-03 21:57:02 +0200jolly(~jolly@208.180.97.158)
2021-06-03 21:58:08 +0200Typedfern(~Typedfern@185.red-83-57-142.dynamicip.rima-tde.net) (Remote host closed the connection)
2021-06-03 21:58:59 +0200heathybit
2021-06-03 21:59:07 +0200ybitheath
2021-06-03 21:59:16 +0200thelounge927(~thelounge@69.234.40.90)
2021-06-03 22:00:00 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-03 22:00:52 +0200pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2021-06-03 22:01:10 +0200thelounge92(~thelounge@cpe-23-240-28-18.socal.res.rr.com) (Ping timeout: 244 seconds)
2021-06-03 22:01:10 +0200thelounge927thelounge92
2021-06-03 22:03:40 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-03 22:05:42 +0200juhp(~juhp@128.106.188.199) (Ping timeout: 264 seconds)
2021-06-03 22:05:46 +0200_ht(~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection)
2021-06-03 22:06:09 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:3547:b6d4:7412:5857) (Remote host closed the connection)
2021-06-03 22:06:21 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:3547:b6d4:7412:5857)
2021-06-03 22:06:54 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
2021-06-03 22:08:05 +0200juhp(~juhp@128.106.188.199)
2021-06-03 22:09:35 +0200favonia(~favonia@user/favonia) (Ping timeout: 252 seconds)
2021-06-03 22:11:26 +0200thelounge924(~thelounge@cpe-23-240-28-18.socal.res.rr.com)
2021-06-03 22:13:26 +0200thelounge92(~thelounge@69.234.40.90) (Ping timeout: 252 seconds)
2021-06-03 22:13:26 +0200thelounge924thelounge92
2021-06-03 22:13:44 +0200chaosite(~chaosite@user/chaosite) (Ping timeout: 272 seconds)
2021-06-03 22:14:41 +0200favonia(~favonia@user/favonia)
2021-06-03 22:16:07 +0200dpl(~dpl@77-121-78-163.chn.volia.net) (Remote host closed the connection)
2021-06-03 22:16:25 +0200dpl(~dpl@77-121-78-163.chn.volia.net)
2021-06-03 22:17:59 +0200Scotty_Trees(~Scotty_Tr@162-234-179-169.lightspeed.brhmal.sbcglobal.net)
2021-06-03 22:18:47 +0200azeem(~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it)
2021-06-03 22:23:06 +0200Typedfern(~Typedfern@185.red-83-57-142.dynamicip.rima-tde.net)
2021-06-03 22:24:22 +0200chaosite(~chaosite@user/chaosite)
2021-06-03 22:24:56 +0200dhouthoo(~dhouthoo@178-117-36-167.access.telenet.be) (Quit: WeeChat 3.1)
2021-06-03 22:27:57 +0200ukari(~ukari@user/ukari) (Remote host closed the connection)
2021-06-03 22:28:55 +0200ukari(~ukari@user/ukari)
2021-06-03 22:29:42 +0200chaosite(~chaosite@user/chaosite) (Ping timeout: 264 seconds)
2021-06-03 22:30:32 +0200Typedfern(~Typedfern@185.red-83-57-142.dynamicip.rima-tde.net) (Remote host closed the connection)
2021-06-03 22:30:50 +0200derelict(~winter@2603-6011-f901-9e5b-0000-0000-0000-08cf.res6.spectrum.com) (Ping timeout: 272 seconds)
2021-06-03 22:31:05 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 22:32:41 +0200wonko(~wjc@62.115.229.50) (Ping timeout: 244 seconds)
2021-06-03 22:33:24 +0200derelict(~winter@2603-6011-f901-9e5b-0000-0000-0000-08cf.res6.spectrum.com)
2021-06-03 22:33:48 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-03 22:37:46 +0200wallymathieu(~wallymath@81-234-151-21-no94.tbcn.telia.com) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-06-03 22:38:15 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 22:39:26 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 22:40:15 +0200chaosite(~chaosite@user/chaosite)
2021-06-03 22:40:58 +0200mikoto-chan(~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) (Quit: mikoto-chan)
2021-06-03 22:41:22 +0200mikoto-chan(~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be)
2021-06-03 22:43:24 +0200reumeth(~reumeth@user/reumeth) (Ping timeout: 268 seconds)
2021-06-03 22:43:30 +0200amahl(~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) (Ping timeout: 264 seconds)
2021-06-03 22:43:55 +0200sondre(~sondrelun@cm-84.212.100.140.getinternet.no) (Quit: Lost terminal)
2021-06-03 22:43:55 +0200ddellaco_(~ddellacos@89.45.224.196)
2021-06-03 22:45:16 +0200kw(~user@152.1.137.158)
2021-06-03 22:45:24 +0200chaosite(~chaosite@user/chaosite) (Ping timeout: 272 seconds)
2021-06-03 22:45:52 +0200Baloo_(~Baloo_@45.83.220.177) (Quit: Leaving)
2021-06-03 22:46:40 +0200jco(~jco@c83-248-173-38.bredband.tele2.se) (Ping timeout: 272 seconds)
2021-06-03 22:46:41 +0200 <kw> TypeRep gives a concrete representation of a type's representation, but is there a way to get a concrete representation of the type itself with Typeable?
2021-06-03 22:46:43 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-03 22:48:11 +0200 <kw> For example, I think `()` and `newtype Foo = Foo ()` have the same TypeRep, but is there a value-level representation that distinguishes them?
2021-06-03 22:48:15 +0200ddellaco_(~ddellacos@89.45.224.196) (Ping timeout: 245 seconds)
2021-06-03 22:48:29 +0200bontaq`(~user@ool-18e47f8d.dyn.optonline.net)
2021-06-03 22:48:32 +0200bontaq`bontaq
2021-06-03 22:48:43 +0200tomjaguarpaw(~tom@li367-225.members.linode.com) (Ping timeout: 272 seconds)
2021-06-03 22:48:51 +0200tomjaguarpaw(~tom@li367-225.members.linode.com)
2021-06-03 22:51:04 +0200sheepduck(~sheepduck@2607:fea8:2a60:b700::8a94) (Remote host closed the connection)
2021-06-03 22:51:34 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 22:51:57 +0200bi_functor(~bi_functo@192-0-134-138.cpe.teksavvy.com)
2021-06-03 22:52:32 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 22:52:36 +0200 <adamse> kw: looks like not the same typerep https://www.irccloud.com/pastebin/tW741w61/
2021-06-03 22:53:07 +0200ivan(~ivan@user/ivan) ()
2021-06-03 22:53:31 +0200sheepduck(~sheepduck@2607:fea8:2a60:b700::8a94)
2021-06-03 22:54:13 +0200o1lo01ol1o(~o1lo01ol1@c-73-10-81-85.hsd1.nj.comcast.net) (Remote host closed the connection)
2021-06-03 22:54:36 +0200 <kw> adamse: Wow, I'm dumb. Thanks!
2021-06-03 22:54:49 +0200ixlun(~matthew@109.249.184.235)
2021-06-03 22:55:36 +0200 <adamse> kw: they would both have the same concrete representation when compiled, maybe that's what you were thinking of?
2021-06-03 22:56:03 +0200chaosite(~chaosite@user/chaosite)
2021-06-03 22:56:54 +0200 <kw> adamse: I was just assuming that TypeRep gave the concrete, compiled representation rather than a representation of the full tagged type.
2021-06-03 22:58:18 +0200 <adamse> I wonder if there is a way of getting the RuntimeRep for a type
2021-06-03 22:58:18 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 22:59:11 +0200fendor_(~fendor@178.115.129.101.wireless.dyn.drei.com) (Remote host closed the connection)
2021-06-03 23:00:07 +0200kluk(~kluk@2603-7000-9b3f-6934-c962-e9a6-2272-a8c0.res6.spectrum.com)
2021-06-03 23:00:52 +0200 <kw> adamese: That would be neat, although I have trouble imagining a use case outside of dispatching to optimized paths for known representations, which seems kind of kludgy...
2021-06-03 23:00:54 +0200chaosite(~chaosite@user/chaosite) (Ping timeout: 264 seconds)
2021-06-03 23:01:15 +0200lavaman(~lavaman@98.38.249.169)
2021-06-03 23:01:24 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-03 23:01:41 +0200 <kw> adamse: Might be nice for figuring out that your numeric type is only 32 bit, but we already have FiniteBits for that.
2021-06-03 23:01:44 +0200chaosite(~chaosite@user/chaosite)
2021-06-03 23:03:01 +0200 <adamse> yeah, might not be the most useful thing
2021-06-03 23:04:30 +0200xakon(~xakon@46.165.219.81)
2021-06-03 23:05:02 +0200kluk(~kluk@2603-7000-9b3f-6934-c962-e9a6-2272-a8c0.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 23:05:39 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 23:05:45 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 245 seconds)
2021-06-03 23:06:20 +0200slac13085(~slack1256@181.203.3.95) (Remote host closed the connection)
2021-06-03 23:06:47 +0200chaosite(~chaosite@user/chaosite) (Ping timeout: 252 seconds)
2021-06-03 23:07:11 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-06-03 23:11:36 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection)
2021-06-03 23:11:36 +0200azeem(~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it) (Read error: Connection reset by peer)
2021-06-03 23:11:38 +0200Ariakenom(~Ariakenom@2001:9b1:efb:fc00:c8f6:f028:b2f4:81fe) (Read error: Connection reset by peer)
2021-06-03 23:11:45 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 23:12:41 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 23:13:55 +0200fradet(~fradet@216.252.75.247)
2021-06-03 23:14:19 +0200azeem(~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it)
2021-06-03 23:16:27 +0200imdoor(~imdoor@balticom-142-78-50.balticom.lv)
2021-06-03 23:18:05 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-06-03 23:18:36 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 23:19:14 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 23:19:56 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:3547:b6d4:7412:5857) (Remote host closed the connection)
2021-06-03 23:21:07 +0200favonia(~favonia@user/favonia) (Ping timeout: 272 seconds)
2021-06-03 23:21:09 +0200ddellaco_(~ddellacos@89.45.224.131)
2021-06-03 23:21:31 +0200favonia(~favonia@user/favonia)
2021-06-03 23:22:23 +0200Typedfern(~Typedfern@185.red-83-57-142.dynamicip.rima-tde.net)
2021-06-03 23:25:21 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 23:25:52 +0200chomwitt(~Pitsikoko@athedsl-20549.home.otenet.gr) (Ping timeout: 265 seconds)
2021-06-03 23:26:18 +0200pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.2-dev)
2021-06-03 23:26:34 +0200ddellaco_(~ddellacos@89.45.224.131) (Ping timeout: 272 seconds)
2021-06-03 23:26:56 +0200pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2021-06-03 23:27:09 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 23:27:31 +0200chaosite(~chaosite@user/chaosite)
2021-06-03 23:31:56 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 23:33:01 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com)
2021-06-03 23:34:39 +0200waleee(~waleee@h-98-128-228-119.NA.cust.bahnhof.se) (Quit: WeeChat 3.1)
2021-06-03 23:35:29 +0200favonia(~favonia@user/favonia) (Ping timeout: 272 seconds)
2021-06-03 23:35:46 +0200waleee(~waleee@h-98-128-228-119.NA.cust.bahnhof.se)
2021-06-03 23:35:54 +0200favonia(~favonia@user/favonia)
2021-06-03 23:36:09 +0200xakon(~xakon@46.165.219.81) (Quit: leaving)
2021-06-03 23:38:38 +0200kluk(~kluk@2603-7000-9b3f-6934-b4ca-d901-e344-cffd.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 23:38:39 +0200imdoor(~imdoor@balticom-142-78-50.balticom.lv) (Quit: imdoor)
2021-06-03 23:38:49 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:3547:b6d4:7412:5857)
2021-06-03 23:39:48 +0200kluk(~kluk@2603-7000-9b3f-6934-513b-33bd-7855-9371.res6.spectrum.com)
2021-06-03 23:41:09 +0200Deide(~Deide@user/deide) (Read error: Connection reset by peer)
2021-06-03 23:41:24 +0200Deide(~Deide@wire.desu.ga)
2021-06-03 23:41:25 +0200Deide(~Deide@wire.desu.ga) (Changing host)
2021-06-03 23:41:25 +0200Deide(~Deide@user/deide)
2021-06-03 23:43:18 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-03 23:44:50 +0200lavaman(~lavaman@98.38.249.169)
2021-06-03 23:44:56 +0200favonia(~favonia@user/favonia) (Ping timeout: 272 seconds)
2021-06-03 23:45:21 +0200favonia(~favonia@user/favonia)
2021-06-03 23:45:21 +0200kluk(~kluk@2603-7000-9b3f-6934-513b-33bd-7855-9371.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 23:45:57 +0200kluk(~kluk@2603-7000-9b3f-6934-513b-33bd-7855-9371.res6.spectrum.com)
2021-06-03 23:48:02 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 252 seconds)
2021-06-03 23:50:27 +0200mc47(~yecinem@89.246.239.190) (Remote host closed the connection)
2021-06-03 23:52:07 +0200kluk(~kluk@2603-7000-9b3f-6934-513b-33bd-7855-9371.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 23:52:33 +0200lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-06-03 23:52:38 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:3547:b6d4:7412:5857) (Remote host closed the connection)
2021-06-03 23:53:15 +0200kluk(~kluk@2603-7000-9b3f-6934-513b-33bd-7855-9371.res6.spectrum.com)
2021-06-03 23:54:52 +0200mikoto-chan(~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) (Ping timeout: 265 seconds)
2021-06-03 23:55:56 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net)
2021-06-03 23:56:38 +0200ddellaco_(~ddellacos@89.45.224.183)
2021-06-03 23:58:51 +0200kluk(~kluk@2603-7000-9b3f-6934-513b-33bd-7855-9371.res6.spectrum.com) (Read error: Connection reset by peer)
2021-06-03 23:59:33 +0200kluk(~kluk@2603-7000-9b3f-6934-513b-33bd-7855-9371.res6.spectrum.com)