Home liberachat/#haskell: Logs Calendar

Logs on 2026-03-11 (liberachat/#haskell)

00:17:18 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
00:19:59 Square joins (~Square4@user/square)
00:20:18 × Square2 quits (~Square4@user/square) (Ping timeout: 246 seconds)
00:22:08 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
00:22:23 × acidjnk_new quits (~acidjnk@p200300d6e700e547f0589d3e513577e0.dip0.t-ipconnect.de) (Ping timeout: 272 seconds)
00:32:43 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
00:37:48 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 255 seconds)
00:48:29 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
00:55:14 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds)
00:59:49 × Googulator quits (~Googulato@2a01-036d-0106-0119-01e8-0aed-2fac-7c8a.pool6.digikabel.hu) (Quit: Client closed)
01:00:04 Googulator joins (~Googulato@2a01-036d-0106-0119-01e8-0aed-2fac-7c8a.pool6.digikabel.hu)
01:02:19 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Ping timeout: 258 seconds)
01:06:04 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
01:10:43 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
01:15:24 czan joins (~czan@user/mange)
01:21:51 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
01:26:25 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
01:28:21 AlexNoo_ joins (~AlexNoo@5.139.232.240)
01:29:50 × Alex_delenda_est quits (~al_test@178.34.160.184) (Ping timeout: 244 seconds)
01:31:00 × AlexZenon quits (~alzenon@178.34.160.184) (Ping timeout: 264 seconds)
01:32:12 × AlexNoo quits (~AlexNoo@178.34.160.184) (Ping timeout: 264 seconds)
01:32:22 × califax quits (~califax@user/califx) (Remote host closed the connection)
01:33:06 × Tuplanolla quits (~Tuplanoll@88-114-89-88.elisa-laajakaista.fi) (Ping timeout: 248 seconds)
01:33:23 califax joins (~califax@user/califx)
01:34:26 peterbecich joins (~Thunderbi@71.84.33.135)
01:34:49 AlexZenon joins (~alzenon@5.139.232.240)
01:37:38 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
01:41:03 ChaiTRex joins (~ChaiTRex@user/chaitrex)
01:44:24 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 255 seconds)
01:47:03 × img quits (~img@user/img) (Quit: ZNC 1.10.1 - https://znc.in)
01:48:18 img joins (~img@user/img)
01:55:40 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
02:00:54 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds)
02:02:49 confusedalex_ joins (~confuseda@user/confusedalex)
02:03:14 × confusedalex quits (~confuseda@user/confusedalex) (Ping timeout: 245 seconds)
02:03:14 confusedalex_ is now known as confusedalex
02:03:28 czan` joins (~czan@user/mange)
02:03:59 × czan quits (~czan@user/mange) (Killed (NickServ (GHOST command used by czan`)))
02:04:05 czan` is now known as czan
02:04:59 × rekahsoft quits (~rekahsoft@76.67.111.168) (Read error: Connection reset by peer)
02:07:06 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Ping timeout: 258 seconds)
02:11:28 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
02:15:49 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
02:22:26 ChaiTRex joins (~ChaiTRex@user/chaitrex)
02:27:01 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
02:31:33 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds)
02:42:23 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
02:44:01 pabs3 is now known as Guest1123
02:44:01 × Guest1123 quits (~pabs3@user/pabs3) (Killed (uranium.libera.chat (Nickname regained by services)))
02:44:18 pabs3 joins (~pabs3@user/pabs3)
02:44:24 × Googulator quits (~Googulato@2a01-036d-0106-0119-01e8-0aed-2fac-7c8a.pool6.digikabel.hu) (Quit: Client closed)
02:46:59 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
02:55:30 × peterbecich quits (~Thunderbi@71.84.33.135) (Ping timeout: 255 seconds)
02:58:09 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
02:59:42 stackdroid18 parts (~stackdroi@user/stackdroid) ()
03:02:24 × terrorjack quits (~terrorjac@2a01:4f8:271:2d98::2) (Quit: The Lounge - https://thelounge.chat)
03:02:50 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
03:07:57 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Remote host closed the connection)
03:08:19 ChaiTRex joins (~ChaiTRex@user/chaitrex)
03:10:08 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
03:11:18 × gabiruh quits (~gabiruh@vps19177.publiccloud.com.br) (Quit: ZNC 1.7.5 - https://znc.in)
03:11:35 gabiruh joins (~gabiruh@vps19177.publiccloud.com.br)
03:12:42 rekahsoft joins (~rekahsoft@76.67.111.168)
03:14:59 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds)
03:22:28 × rekahsoft quits (~rekahsoft@76.67.111.168) (Read error: Connection reset by peer)
03:25:33 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
03:32:17 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
03:37:33 rekahsoft joins (~rekahsoft@bras-base-orllon1103w-grc-20-76-67-111-168.dsl.bell.ca)
03:37:44 peterbecich joins (~Thunderbi@71.84.33.135)
03:41:12 jmcantrell_ joins (~weechat@user/jmcantrell)
03:43:36 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
03:46:45 × Square quits (~Square4@user/square) (Ping timeout: 244 seconds)
03:47:00 × tusko quits (~uwu@user/tusko) (Remote host closed the connection)
03:48:11 × machinedgod quits (~machinedg@d172-219-48-230.abhsia.telus.net) (Ping timeout: 268 seconds)
03:48:36 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 255 seconds)
03:52:17 tusko joins (~uwu@user/tusko)
03:54:42 × rekahsoft quits (~rekahsoft@bras-base-orllon1103w-grc-20-76-67-111-168.dsl.bell.ca) (Remote host closed the connection)
03:55:00 × haritz quits (~hrtz@user/haritz) (Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in)
03:59:22 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
04:00:15 × jmcantrell_ quits (~weechat@user/jmcantrell) (Ping timeout: 272 seconds)
04:03:55 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
04:06:10 × pandeyan quits (~pandeyan@192-184-248-122.fiber.dynamic.sonic.net) (Ping timeout: 248 seconds)
04:06:34 terrorjack joins (~terrorjac@2a01:4f8:271:2d98::2)
04:12:46 × terrorjack quits (~terrorjac@2a01:4f8:271:2d98::2) (Quit: The Lounge - https://thelounge.chat)
04:14:48 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
04:14:49 × peterbecich quits (~Thunderbi@71.84.33.135) (Ping timeout: 272 seconds)
04:16:04 terrorjack joins (~terrorjac@2a01:4f8:271:2d98::2)
04:19:44 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
04:30:35 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
04:35:27 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds)
04:36:19 × chromoblob quits (~chromoblo@user/chromob1ot1c) (Ping timeout: 264 seconds)
04:51:27 chromoblob joins (~chromoblo@user/chromob1ot1c)
04:58:03 × chromoblob quits (~chromoblo@user/chromob1ot1c) (Ping timeout: 244 seconds)
05:00:50 takuan joins (~takuan@d8D86B9E9.access.telenet.be)
05:00:57 arandombit joins (~arandombi@2a02:2455:8656:7100:49ae:b06e:43ec:7652)
05:00:57 × arandombit quits (~arandombi@2a02:2455:8656:7100:49ae:b06e:43ec:7652) (Changing host)
05:00:57 arandombit joins (~arandombi@user/arandombit)
05:02:10 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
05:05:28 Gravifer joins (~Gravifer@user/Gravifer)
05:06:19 × arandombit quits (~arandombi@user/arandombit) (Ping timeout: 244 seconds)
05:09:21 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 268 seconds)
05:11:10 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
05:16:28 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 276 seconds)
05:26:41 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
05:31:31 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
05:33:10 peterbecich joins (~Thunderbi@71.84.33.135)
05:36:05 anpad joins (~pandeyan@user/anpad)
05:37:34 michalz joins (~michalz@185.246.207.221)
05:39:28 × Gravifer quits (~Gravifer@user/Gravifer) (Ping timeout: 240 seconds)
05:42:09 × divlamir quits (~divlamir@user/divlamir) (Read error: Connection reset by peer)
05:42:25 divlamir joins (~divlamir@user/divlamir)
05:44:36 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
05:47:38 chromoblob joins (~chromoblo@user/chromob1ot1c)
05:49:06 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds)
05:51:46 × chromoblob quits (~chromoblo@user/chromob1ot1c) (Ping timeout: 248 seconds)
05:59:54 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
06:05:12 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
06:06:51 arandombit joins (~arandombi@2a02:2455:8656:7100:cd70:20e7:538d:131c)
06:06:51 × arandombit quits (~arandombi@2a02:2455:8656:7100:cd70:20e7:538d:131c) (Changing host)
06:06:51 arandombit joins (~arandombi@user/arandombit)
06:12:08 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
06:16:00 × jreicher quits (~joelr@user/jreicher) (Quit: brb)
06:16:25 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
06:26:24 × peterbecich quits (~Thunderbi@71.84.33.135) (Ping timeout: 246 seconds)
06:26:43 jreicher joins (~joelr@user/jreicher)
06:27:30 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
06:32:50 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 268 seconds)
06:42:47 chromoblob joins (~chromoblo@user/chromob1ot1c)
06:43:16 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
06:47:15 × chromoblob quits (~chromoblo@user/chromob1ot1c) (Ping timeout: 255 seconds)
06:48:12 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds)
06:53:45 chromoblob joins (~chromoblo@user/chromob1ot1c)
06:59:04 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
07:03:46 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds)
07:10:21 <gentauro> Can `BangPatterns` be used in do-notation? Like: `do foo! <- readFile "bar.txt"`.
07:10:44 <gentauro> ups
07:10:57 <gentauro> should be `do !foo <- readFile "bar.txt"`
07:10:59 × Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer)
07:13:08 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
07:15:17 gentauro I mean it compiles. I just want to be use that the `bang` forces the `readFile` to go from lazy to strict
07:15:49 <[exa]> gentauro: I'd suspect it only forces the first cons of the list
07:16:16 <[exa]> there's some strict variant of readFile for this use
07:16:24 <[exa]> (or use deepseq)
07:18:38 <mesaoptimizer> What is the current set of recommended beginner's books to learn Haskell (that enables understanding of the following concepts: Functor, Applicatives, Monads, record syntax)? I find my lack of fluency with the following things to be getting in the way of growing the small set of personal applications I use that are written in Haskell
07:19:28 <opqdonut> mesaoptimizer: I'm not sure what the community at large is recommending, but students have been giving good feedbakc on my open online course haskell.mooc.fi
07:20:06 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 255 seconds)
07:21:37 <mesaoptimizer> that's quite an interesting syllabus sequence, I might attempt that MOOC, and if I do, I'll give you feedback too :)
07:21:38 <ski> iirc "Haskell: The Craft of Functional Programming" should cover that, apart from `Applicative'
07:21:48 <ski> (by Simon Thompson)
07:22:07 <ski> then there's stuff like
07:22:12 <ski> @where Typeclassopedia
07:22:13 <lambdabot> http://www.haskell.org/haskellwiki/Typeclassopedia
07:22:50 <gentauro> [exa]: thx
07:24:32 <[exa]> mesaoptimizer: the community LYAH is not bad if you know some coding already https://learnyouahaskell.github.io/
07:24:50 <[exa]> gentauro: btw what's the usecase there? literally just forcing the file in?
07:24:51 <mesaoptimizer> I read the first part of Graham Hutton's book two years ago btw
07:25:36 <mesaoptimizer> I returned to it recently and didn't like it, and especially didn't appreciate the lack of a mention of record syntax anywhere, but perhaps that was after the publication of the 2016 book
07:26:14 <mesaoptimizer> then again, Chris Allen and Julie Moronuki's https://haskellbook.com mentions record syntax (I did a search in the PDF) and it was published in 2017
07:26:17 <gentauro> [exa]: last time I did this -> `LBS.readFile f >>= \bs -> LBS.length bs `seq` pure bs` :|
07:26:37 <gentauro> I guess by forcing the length of the file and then returning the bytes
07:26:39 <gentauro> :-\
07:26:45 humasect joins (~humasect@184.151.37.182)
07:27:23 <[exa]> gentauro: you might want to use the strict reader https://hackage-content.haskell.org/package/bytestring-0.12.2.0/docs/Data-ByteString.html#v:readFile and then thaw the string
07:28:01 <[exa]> as in, `fromStrict <$> StrictBS.readFile`
07:28:06 <gentauro> [exa]: use case is (files are small enough to be in mem) so yes, they need to be fully in mem
07:28:19 <ski> preflex: xseen bitemyapp
07:28:19 <preflex> Sorry, I haven't seen bitemyapp
07:28:27 <mesaoptimizer> my current favorite resource has been https://leanpub.com/finding-success-in-haskell by Julie Moronuki and Chris Martin. It helped me ease into the use of Either and Maybe and `newtype` and introduced me to `Data.Coerce`
07:28:32 chele joins (~chele@user/chele)
07:28:58 <dminuoso> If you're starting out Data.Coerce is most likely something you not should be wielding
07:29:24 <mesaoptimizer> I did a PLT semantics course, its all right
07:29:31 <gentauro> [exa]: yeah, my code import is -> `import qualified Data.ByteString.Lazy as LBS`. Kind of dump to import the `lazy` version if I want to do strict stuff
07:30:02 <[exa]> well add the SBS and there you go
07:30:02 <dminuoso> mesaoptimizer: I'm not sure how that module could help you on your path *shrugs*
07:30:19 <gentauro> [exa]: got it
07:30:25 <[exa]> :)
07:31:11 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
07:31:23 <mesaoptimizer> dminuoso: hmm, perhaps you have a better idea than I do of how footgunny `Data.Coerce` is. I do know that I can't use it if I enable `Safe` language pragma
07:31:27 <dminuoso> mesaoptimizer: It's not really about "understanding" coercions, just that they dont fit into *any* idiomatic code for when you bootstrap yourself into the language.
07:31:56 <dminuoso> Oh it's not dangerous, but I'd be willing to say that almost any use of `coerce` in your first year is probably a smell
07:32:15 <dminuoso> Explicit unpacking/repacking is just better most of the time.
07:33:06 <mesaoptimizer> I see. I was using type applications with it
07:33:31 <mesaoptimizer> `coerce` without enabling the `TypeApplication` extension seems almost unusable at least in my experience
07:34:10 <dminuoso> Beginner trying to grasp Functor and Maybe already dabbling with TypeApplication :-)
07:34:17 <dminuoso> This is how you know you're in #haskell
07:34:38 <humasect> eh well. learn on the battlefield
07:35:03 <[exa]> +1 for coercefield experience
07:35:21 <[exa]> nothing explains that you don't want to use X better than using X
07:35:51 <dminuoso> mesaoptimizer: But you're on a right track as far as coerce goes. If you're using it with TypeApplications it's as good as manual unpacking/repacking - albeit more unusual
07:35:56 <mesaoptimizer> Functors are easy to wrap one's head around via just the type signature. Applicatives and Monad type signatures seem a bit harder to understand just by looking at it though
07:35:57 <dminuoso> Forget what I said, then.
07:36:03 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds)
07:36:12 <mesaoptimizer> dminuoso: I see, that's useful to know
07:38:13 × arandombit quits (~arandombi@user/arandombit) (Ping timeout: 244 seconds)
07:38:57 <dminuoso> mesaoptimizer: Some of the reasons that Applicative/Monad are difficult to understand are an obscure name and the fact that the pattern they abstract over something that has no "purpose" or "intent", just an observation that there's some things that just follow the same form and laws... I personally think that too much time is lost trying to focus around what they mean because it's almost entirely
07:38:59 <dminuoso> irrelevant for learning haskell.
07:39:25 <dminuoso> I'd be willing to bet you can learn Haskell just fine without understanding what Applicative or Monad "are"
07:40:09 <humasect> yea; it clicks when it clicks
07:40:26 ski . o O ( "How to Replace Failure by a List of Successes: A method for exception handling, backtracking, and pattern matching in lazy functional languages" by Philip Wadler in 1985 at <http://www.rkrishnan.org/files/wadler-1985.pdf> )
07:42:01 <dminuoso> mesaoptimizer: I mean most individual instances of Applicative/Monad are trivial enough to figure out in a minute or two as long as you have more than a week of programming experience - and that knowledge is likely enough to become competent in Haskell..
07:42:46 <dminuoso> The biggest pedagogic mistake of Haskell.
07:43:53 <humasect> depends where one starts after all
07:44:07 <mesaoptimizer> I see. Sure, perhaps I figure it out via learning to be comfortable with actual instances of these type classes. I'll try that. I didn't have the misconception that it was directly related to the category theoretic concepts, of course
07:44:19 <mesaoptimizer> nor that the laws necessarily hold if you define an instance of the classes
07:44:44 <Axman6> There's a lot of external pressure to explain monads, because they're the big boogie man of Haskell people struggle to understand - but they'd be much better off starting to use things which are monads first, and then see that there's a common interface for them
07:44:57 <opqdonut> yes, agreed
07:46:48 <Axman6> It's basically how we taught things in the NICTA/Data61/System F FP course - here's a type, here's a function which uses that typew, implement the function that matches that type (hint there is 1/2/infinite ways to do that). Here's another type, here's a function's type: implement the function with that type... Hey, their types look really similar, can we do something with that?
07:46:59 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
07:49:24 × Digit quits (~user@user/digit) (Ping timeout: 256 seconds)
07:49:34 Digitteknohippie joins (~user@user/digit)
07:49:37 oskarw joins (~user@user/oskarw)
07:51:50 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
07:53:38 CiaoSen joins (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db)
07:53:56 poscat0x04 joins (~poscat@user/poscat)
07:54:43 <ski> mesaoptimizer : do note that most "monad tutorials" out there are bad (unhelpful, hinders comprehension)
07:55:19 × poscat quits (~poscat@user/poscat) (Ping timeout: 245 seconds)
07:55:20 <[exa]> +1000 ^
07:55:41 <[exa]> who said that thing with "abstract complex are elucidated by throwing examples at them"
07:59:39 × humasect quits (~humasect@184.151.37.182) (Quit: Leaving...)
08:02:45 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
08:03:55 sord937 joins (~sord937@gateway/tor-sasl/sord937)
08:07:24 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
08:09:13 <probie> A monad is like a burrito, if you're a weirdo who uses smaller burritos as a filling for bigger burritos
08:13:45 humasect joins (~humasect@184.151.37.182)
08:14:08 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
08:16:42 <[exa]> burrito filling that spawns more burritos....y u m m y
08:16:47 <Rembane> Gotta have all the burritos
08:16:51 <Rembane> Infinite breakfast
08:18:16 <[exa]> I find this useful analogy under-used at meetups
08:18:27 <[exa]> people still do pizza and similar hard-to-wrap nonsense
08:19:14 <[exa]> impure
08:19:23 <Rembane> Hard agree
08:19:36 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
08:21:06 × chromoblob quits (~chromoblo@user/chromob1ot1c) (Ping timeout: 244 seconds)
08:21:39 Digitteknohippie is now known as Digit
08:24:04 <oskarw> probie: You forgot that you burritos are wraped on space and are send back to you on Earth
08:24:16 <oskarw> *that your
08:26:24 × tusko quits (~uwu@user/tusko) (Remote host closed the connection)
08:26:39 tusko joins (~uwu@user/tusko)
08:33:03 × humasect quits (~humasect@184.151.37.182) (Quit: Leaving...)
08:34:39 prdak joins (~Thunderbi@user/prdak)
08:38:58 × tzh quits (~tzh@c-76-115-131-146.hsd1.or.comcast.net) (Quit: zzz)
08:39:11 × prdak quits (~Thunderbi@user/prdak) (Ping timeout: 244 seconds)
08:39:22 chromoblob joins (~chromoblo@user/chromob1ot1c)
08:44:04 × GdeVolpiano quits (~GdeVolpia@user/GdeVolpiano) (Quit: WeeChat 4.7.2)
08:46:31 × emmanuelux quits (~em@user/emmanuelux) (Quit: bye)
08:46:40 GdeVolpiano joins (~GdeVolpia@user/GdeVolpiano)
08:59:09 acidjnk_new joins (~acidjnk@p200300d6e700e547e046c4ed9eed220a.dip0.t-ipconnect.de)
09:07:30 merijn joins (~merijn@77.242.116.146)
09:13:32 lol__ joins (~lol@2603:3016:1e01:b980:b5f8:9e30:8739:5bae)
09:17:06 × lol_ quits (~lol@2603:3016:1e01:b980:ddc8:52aa:8a26:613f) (Ping timeout: 248 seconds)
09:17:38 × jcarpenter2 quits (~lol@2603:3016:1e01:b980:ddc8:52aa:8a26:613f) (Ping timeout: 248 seconds)
09:18:04 jcarpenter2 joins (~lol@2603:3016:1e01:b980:b5f8:9e30:8739:5bae)
09:22:22 × anpad quits (~pandeyan@user/anpad) (Quit: ZNC 1.10.1 - https://znc.in)
09:23:33 vpan joins (~vpan@212.117.1.172)
09:23:52 vpan is now known as Guest4862
09:24:08 Guest4862 is now known as vpan
09:24:48 anpad joins (~pandeyan@user/anpad)
09:32:06 __monty__ joins (~toonn@user/toonn)
09:32:44 danza joins (~danza@user/danza)
09:43:15 dhil joins (~dhil@5.151.29.140)
09:52:15 prdak joins (~Thunderbi@user/prdak)
09:53:07 × chromoblob quits (~chromoblo@user/chromob1ot1c) (Ping timeout: 264 seconds)
09:55:06 comerijn joins (~merijn@77.242.116.146)
09:58:34 × merijn quits (~merijn@77.242.116.146) (Ping timeout: 268 seconds)
10:30:47 <gentauro> oskarw: speaking of space, how do you handle (securely) space gamma rays that bit-flips memory
10:31:02 <gentauro> you suddently have invalid state in Haskell which normally doesn't allow for invalid states
10:36:53 <oskarw> gentauro: Haskell programs are protected by math gods, otherwise it would be impossible for _true_ pure functions
10:37:50 <comerijn> gentauro: You buy ECC memory and stop thinking about it
10:38:17 <comerijn> Assuming you can get a new mortgage to afford said memory
10:38:21 comerijn is now known as merijn
10:49:36 × somemathguy quits (~somemathg@user/somemathguy) (Ping timeout: 264 seconds)
10:50:41 acidjnk_new3 joins (~acidjnk@p200300d6e700e503f643e9bea9c15385.dip0.t-ipconnect.de)
10:53:43 <mesaoptimizer> Haskell doesn't have a defined operational semantics, but does it have a well-defined denotational semantics?
10:54:04 × acidjnk_new quits (~acidjnk@p200300d6e700e547e046c4ed9eed220a.dip0.t-ipconnect.de) (Ping timeout: 268 seconds)
11:01:50 × fun-safe-math quits (~fun-safe-@97.115.234.213) ()
11:02:51 <gentauro> comonad: even ECC mem can be impacted
11:03:49 <mesaoptimizer> seems like https://ircbrowse.net/ is dead?
11:03:59 fun-safe-math joins (~fun-safe-@97.115.234.213)
11:04:05 gentauro thx abailly for -> https://abailly.github.io/posts/a-modern-haskell-env.html (just copy/pasta and it worked. Now I get `red` if any error <3)
11:04:52 <mesaoptimizer> oh there's a new logs link in the topic, never mind
11:08:15 × Digit quits (~user@user/digit) (Ping timeout: 268 seconds)
11:08:17 Digitteknohippie joins (~user@user/digit)
11:11:59 × prdak quits (~Thunderbi@user/prdak) (Ping timeout: 245 seconds)
11:12:30 prdak joins (~Thunderbi@user/prdak)
11:16:54 × prdak quits (~Thunderbi@user/prdak) (Ping timeout: 246 seconds)
11:18:22 danz19215 joins (~danza@user/danza)
11:20:44 × danza quits (~danza@user/danza) (Ping timeout: 265 seconds)
11:22:03 somemathguy joins (~somemathg@user/somemathguy)
11:27:34 × vpan quits (~vpan@212.117.1.172) (Quit: Leaving.)
11:29:54 × oskarw quits (~user@user/oskarw) (Remote host closed the connection)
11:35:48 × Digitteknohippie quits (~user@user/digit) (Ping timeout: 246 seconds)
11:38:55 × CiaoSen quits (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 245 seconds)
11:43:41 oskarw joins (~user@user/oskarw)
11:48:49 × yin quits (~zero@user/zero) (Remote host closed the connection)
11:49:51 prdak joins (~Thunderbi@user/prdak)
11:49:51 × prdak quits (~Thunderbi@user/prdak) (Read error: Connection reset by peer)
11:50:05 prdak joins (~Thunderbi@user/prdak)
11:50:51 yin joins (~zero@user/zero)
11:59:33 Digitteknohippie joins (~user@user/digit)
12:01:43 × danz19215 quits (~danza@user/danza) (Remote host closed the connection)
12:04:25 CiaoSen joins (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db)
12:29:32 Digitteknohippie is now known as Digit
12:33:00 × adamCS quits (~adamCS@70.19.85.77) (Remote host closed the connection)
12:34:41 × FANTOM quits (~fantom@90.251.214.54) (Ping timeout: 265 seconds)
12:34:52 adamCS joins (~adamCS@70.19.85.77)
12:40:10 FANTOM joins (~fantom@90.251.214.54)
12:41:31 × ec quits (~ec@gateway/tor-sasl/ec) (Ping timeout: 258 seconds)
13:01:38 × czan quits (~czan@user/mange) (Ping timeout: 248 seconds)
13:06:08 AlexNoo_ is now known as AlexNoo
13:07:06 Alex_delenda_est joins (~al_test@5.139.232.240)
13:10:10 × lortabac quits (~lortabac@mx1.fracta.dev) (Ping timeout: 245 seconds)
13:11:07 lortabac joins (~lortabac@mx1.fracta.dev)
13:17:52 × somemathguy quits (~somemathg@user/somemathguy) (Quit: WeeChat 4.1.1)
13:20:06 × sam113101 quits (~sam@modemcable200.189-202-24.mc.videotron.ca) (Read error: Connection reset by peer)
13:20:29 sam113101 joins (~sam@modemcable200.189-202-24.mc.videotron.ca)
13:24:44 qqq joins (~qqq@185.54.22.246)
13:34:49 arandombit joins (~arandombi@2a02:2455:8656:7100:cd70:20e7:538d:131c)
13:34:49 × arandombit quits (~arandombi@2a02:2455:8656:7100:cd70:20e7:538d:131c) (Changing host)
13:34:49 arandombit joins (~arandombi@user/arandombit)
13:45:38 Guest34 joins (~Guest17@37.30.32.80)
13:47:34 <Guest34> Make me a haskell script to talk with GPT-4
13:52:36 <probie> Guest34: What features do you want?
13:53:58 × Guest34 quits (~Guest17@37.30.32.80) (Quit: Client closed)
13:57:37 × qqq quits (~qqq@185.54.22.246) (Remote host closed the connection)
14:07:59 qqq joins (~qqq@185.54.22.246)
14:08:48 × prdak quits (~Thunderbi@user/prdak) (Ping timeout: 264 seconds)
14:09:22 × mud quits (~mud@user/kadoban) (Ping timeout: 248 seconds)
14:09:27 kadobanana joins (~mud@user/kadoban)
14:16:55 traxex joins (traxex@user/traxex)
14:25:52 × Alex_delenda_est quits (~al_test@5.139.232.240) (Ping timeout: 244 seconds)
14:35:20 machinedgod joins (~machinedg@d172-219-48-230.abhsia.telus.net)
14:39:42 prdak joins (~Thunderbi@user/prdak)
14:51:01 Square joins (~Square4@user/square)
14:54:01 haritz joins (~hrtz@140.228.70.141)
14:54:01 × haritz quits (~hrtz@140.228.70.141) (Changing host)
14:54:01 haritz joins (~hrtz@user/haritz)
14:58:20 <tomsmeding> that sounds like a prompt you can give to GPT-4 :p
15:01:39 kuribas joins (~user@2a02-1810-2825-6000-4935-dc75-5b6f-4493.ip6.access.telenet.be)
15:17:51 <dminuoso> mesaoptimizer: Well, in reality it only has operational semantics as defined by whatever GHC does.
15:18:52 <dminuoso> The Haskell reports did some very vague attempts of denotational semantics, but in reality that term defines mathematical rigor - something nobody has ever done.
15:20:22 skinkitten joins (~skinkitte@user/skinkitten)
15:26:10 <tomsmeding> dminuoso: what do you mean with "defines mathematical rigor"?
15:26:18 <dminuoso> Some researchers have published papers on this subject, but they were all to just subsets of GHC haskell. A related problem would be defining what Haskell even is in 2026 - what extensions should be included in a full denotational semantic of Haskell.
15:27:02 <tomsmeding> I suspect that all that people actually care about is a semantics of Haskell98 without the FFI
15:27:40 <tomsmeding> the rest is going to be either syntactic sugar or complex, ad-hoc stuff that doesn't enlighten anyone about anything
15:28:20 <dminuoso> Dunno, I can think of a few extensions that have meaning like GADTs
15:28:49 <tomsmeding> hm, fair point
15:29:29 <tomsmeding> in operational semantics you can exclude GADTs because you don't need types at runtime, but in denotational semantics the point is to retain types
15:30:15 <dminuoso> tomsmeding: What about things like all the type wizardry (TypeInType, TyFams, etc)?
15:31:00 <tomsmeding> ... I guess that types are actually relevant, even in operational semantics, depending on how you model type class resolution
15:31:30 <tomsmeding> yes you're right, for denotational semantics all that's important
15:31:45 <tomsmeding> I was somehow only thinking of LambdaCase etc., which are not
15:32:32 prdak1 joins (~Thunderbi@user/prdak)
15:32:52 <dminuoso> I think a more accurate phrasing would be "It is possible to attach denotational semantics to a subset of Haskell", rather than saying that we *have* them (which might suggest that the language was signed ontop of it)
15:33:14 <tomsmeding> isn't it possible to attach denotational semantics to anything?
15:33:20 <tomsmeding> perhaps "useful denotational semantics"
15:33:41 <tomsmeding> like, one that actually models interesting structure of the language
15:34:01 <tomsmeding> in terms of "relatively" simple categorical constructrs
15:35:39 <tomsmeding> s/trs$/ts/
15:35:42 <dminuoso> It seems rather like a useful vehicle to do some research, rather than defining a language.
15:36:19 × prdak quits (~Thunderbi@user/prdak) (Ping timeout: 264 seconds)
15:36:20 prdak1 is now known as prdak
15:36:29 <tomsmeding> AFAIK denotational semantics also tends not to say anything about operational concerns such as order of evaluation
15:36:39 <dminuoso> Well, that depends on you I think.
15:36:52 <dminuoso> Nothing stops you from imposing an order of some kind to your denotation.
15:36:52 <tomsmeding> while in a language specification, you definitely want to know it if the language deviates from call-by-value
15:36:56 <tomsmeding> right
15:37:46 <tomsmeding> but in that case, "has haskell a denotational semantics" should just be answered with "for what purpose"
15:38:13 <tomsmeding> there being multiple levels of representation accuracy, and probably also multiple distinct designs at the same level
15:48:26 × skinkitten quits (~skinkitte@user/skinkitten) (Quit: Client closed)
15:56:15 × prdak quits (~Thunderbi@user/prdak) (Read error: Connection reset by peer)
15:56:21 prdak1 joins (~Thunderbi@user/prdak)
15:58:42 prdak1 is now known as prdak
16:00:50 Alex_delenda_est joins (~al_test@5.139.232.240)
16:01:59 Enrico63 joins (~Enrico63@host-82-61-84-117.retail.telecomitalia.it)
16:02:26 tromp joins (~textual@2001:1c00:3487:1b00:2807:b44c:c102:bda9)
16:03:37 × dolio quits (~dolio@130.44.140.168) (Quit: ZNC 1.10.1 - https://znc.in)
16:05:29 madresch joins (~Thunderbi@user/madresch)
16:09:06 dolio joins (~dolio@130.44.140.168)
16:10:33 × CiaoSen quits (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 246 seconds)
16:15:52 prdak1 joins (~Thunderbi@user/prdak)
16:16:35 × prdak1 quits (~Thunderbi@user/prdak) (Read error: Connection reset by peer)
16:17:24 × prdak quits (~Thunderbi@user/prdak) (Ping timeout: 245 seconds)
16:19:34 prdak joins (~Thunderbi@user/prdak)
16:22:22 humasect joins (~humasect@184.151.37.182)
16:23:36 × PHO` quits (~pho@akari.cielonegro.org) (Ping timeout: 268 seconds)
16:28:24 × troydm quits (~troydm@user/troydm) (Quit: What is Hope? That all of your wishes and all of your dreams come true? To turn back time because things were not supposed to happen like that (C) Rau Le Creuset)
16:28:31 PHO` joins (~pho@akari.cielonegro.org)
16:40:42 × humasect quits (~humasect@184.151.37.182) (Read error: Connection reset by peer)
16:40:46 <tomsmeding> can the guy in Bulgaria (?) with IP 195.178.110.33 stop spamming ircbrowse
16:42:31 <tomsmeding> ircbrowse is not a fast server and you're DOSing the service for others; when you crawl a site, be courteous and put delays between your requests
16:48:13 CloneOfNone joins (~CloneOfNo@user/CloneOfNone)
16:49:30 × CloneOfNone_ quits (~CloneOfNo@user/CloneOfNone) (Ping timeout: 268 seconds)
16:56:27 <EvanR> see if you can mail him a zipdrive with the whole log on it
16:58:58 <tomsmeding> mail to what address? I only have an IP :p
16:59:54 tzh joins (~tzh@c-76-115-131-146.hsd1.or.comcast.net)
17:00:20 × pavonia quits (~user@user/siracusa) (Quit: Bye!)
17:00:42 × kuribas quits (~user@2a02-1810-2825-6000-4935-dc75-5b6f-4493.ip6.access.telenet.be) (Remote host closed the connection)
17:03:08 × merijn quits (~merijn@77.242.116.146) (Ping timeout: 252 seconds)
17:10:49 × euphores quits (~SASL_euph@user/euphores) (Quit: Leaving.)
17:10:55 <gentauro> `LambdaCase` are nice when you work with Functors, as in `( \case …) <$> …`
17:13:15 × prdak quits (~Thunderbi@user/prdak) (Quit: prdak)
17:15:06 <tomsmeding> gentauro: you might try `_ <&> \case _` too
17:17:11 <haskellbridge> <ijouw> I quite like that style.
17:20:28 euphores joins (~SASL_euph@user/euphores)
17:21:08 <EvanR> given how unsemantical most programming languages are I find it hilarious how hard some people want to claim haskell has no semantics either
17:21:51 <EvanR> nothing means anything, your words actually don't mean what you said, etc xD
17:22:08 <EvanR> I hereby undefined everything
17:22:23 <tomsmeding> @undefine
17:22:23 <lambdabot> Undefined.
17:22:26 <EvanR> ^
17:26:50 <mauke> @define semantics
17:26:50 <lambdabot> Parse failed: TemplateHaskell language extension is not enabled. Please add ...
17:27:05 <tomsmeding> O.o
17:27:16 peterbecich joins (~Thunderbi@71.84.33.135)
17:27:38 <mauke> please. please add.
17:27:51 <tomsmeding> @define {-# LANGUAGE Template Haskell #-}
17:27:51 <lambdabot> Parse failed: Parse error: Haskell
17:27:57 <tomsmeding> @define {-# LANGUAGE TemplateHaskell #-}
17:27:57 <lambdabot> Defined.
17:28:02 <tomsmeding> @define semantics
17:28:02 <lambdabot> Parse failed: TemplateHaskell language extension is not enabled. Please add ...
17:28:05 <tomsmeding> lies
17:36:19 × wootehfoot quits (~wootehfoo@user/wootehfoot) (Quit: Leaving)
17:36:48 wootehfoot joins (~wootehfoo@user/wootehfoot)
17:37:44 × wootehfoot quits (~wootehfoo@user/wootehfoot) (Remote host closed the connection)
17:38:34 <int-e> tomsmeding: sure, but which one of these is the lie?
17:38:39 <int-e> @define {- -}
17:38:40 <lambdabot> Defined.
17:38:53 × dolio quits (~dolio@130.44.140.168) (Ping timeout: 252 seconds)
17:38:53 <tomsmeding> > [| 42 |]
17:38:54 <lambdabot> Syntax error on [| 42 |]
17:38:54 <lambdabot> In the Template Haskell quotation [| 42 |]
17:39:12 <tomsmeding> the first one, apparently
17:40:12 <int-e> tomsmeding: https://github.com/lambdabot/lambdabot/blob/master/lambdabot-haskell-plugins/src/Lambdabot/Plugin/Haskell/Eval.hs#L112-L126 -- guess where pragmas live (next function after this one has a spoiler)
17:40:50 dolio joins (~dolio@130.44.140.168)
17:41:26 <tomsmeding> in the... exports? Or is that variable just misnamed?
17:42:33 <int-e> it's misnamed
17:42:49 <int-e> exports live in the first field
17:43:30 <tomsmeding> I like that the hint was a function called "moduleProblems"
17:47:54 <int-e> Anyway, this function is responsible for not adding new pragmas with @let. Which IMHO is the sane thing for lambdabot to do :)
17:48:41 <tomsmeding> probably
17:49:06 × madresch quits (~Thunderbi@user/madresch) (Ping timeout: 248 seconds)
17:50:26 × comonad quits (~comonad@p200300d02722ae00dce4ce9451b59974.dip0.t-ipconnect.de) (Ping timeout: 252 seconds)
17:50:52 <gentauro> tomsmeding: will do
17:52:27 comonad joins (~comonad@p200300d02725570019adcc7019a0b087.dip0.t-ipconnect.de)
17:52:36 × tt1231607019 quits (~tt1231@2603:6010:8700:4a81:a4f6:acff:fe95:3803) (Ping timeout: 264 seconds)
17:53:05 danza joins (~danza@user/danza)
17:55:52 × peterbecich quits (~Thunderbi@71.84.33.135) (Ping timeout: 268 seconds)
18:00:20 tt1231607019 joins (~tt1231@2603:6010:8700:4a81:a4f6:acff:fe95:3803)
18:00:42 Googulator joins (~Googulato@2a01-036d-0106-0119-5d77-22bc-bcbf-a57b.pool6.digikabel.hu)
18:07:26 Tuplanolla joins (~Tuplanoll@88-114-89-88.elisa-laajakaista.fi)
18:08:40 × dhil quits (~dhil@5.151.29.140) (Ping timeout: 265 seconds)
18:09:02 × danza quits (~danza@user/danza) (Remote host closed the connection)
18:09:46 × sord937 quits (~sord937@gateway/tor-sasl/sord937) (Quit: sord937)
18:10:15 × chele quits (~chele@user/chele) (Remote host closed the connection)
18:18:27 codolio joins (~dolio@130.44.140.168)
18:18:46 wootehfoot joins (~wootehfoo@user/wootehfoot)
18:18:54 × dolio quits (~dolio@130.44.140.168) (Ping timeout: 255 seconds)
18:19:54 × gmg quits (~user@user/gehmehgeh) (Quit: Leaving)
18:24:37 × __monty__ quits (~toonn@user/toonn) (Quit: leaving)
18:25:12 somemathguy joins (~somemathg@user/somemathguy)
18:25:23 Anarchos joins (~Anarchos@91-161-254-16.subs.proxad.net)
18:32:29 × codolio quits (~dolio@130.44.140.168) (Ping timeout: 268 seconds)
18:44:28 dolio joins (~dolio@130.44.140.168)
18:49:30 × machinedgod quits (~machinedg@d172-219-48-230.abhsia.telus.net) (Ping timeout: 255 seconds)
18:54:51 × Enrico63 quits (~Enrico63@host-82-61-84-117.retail.telecomitalia.it) (Quit: Client closed)
19:03:32 spew joins (~spew@user/spew)
19:21:10 × qqq quits (~qqq@185.54.22.246) (Remote host closed the connection)
19:28:26 Everything joins (~Everythin@172-232-54-192.ip.linodeusercontent.com)
19:29:15 × Googulator quits (~Googulato@2a01-036d-0106-0119-5d77-22bc-bcbf-a57b.pool6.digikabel.hu) (Quit: Client closed)
19:29:21 Googulator39 joins (~Googulato@2a01-036d-0106-0119-5d77-22bc-bcbf-a57b.pool6.digikabel.hu)
19:30:38 lol_ joins (~lol@2603:3016:1e01:b980:b5f8:9e30:8739:5bae)
19:31:06 stackdroid18 joins (~stackdroi@user/stackdroid)
19:34:00 × jcarpenter2 quits (~lol@2603:3016:1e01:b980:b5f8:9e30:8739:5bae) (Ping timeout: 264 seconds)
19:34:00 × lol__ quits (~lol@2603:3016:1e01:b980:b5f8:9e30:8739:5bae) (Ping timeout: 264 seconds)
19:34:10 jcarpenter2 joins (~lol@2603:3016:1e01:b980:b5f8:9e30:8739:5bae)
19:47:45 chromoblob joins (~chromoblo@user/chromob1ot1c)
19:49:58 Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915)
19:50:10 × Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 248 seconds)
19:52:02 anselmschueler joins (~Thunderbi@user/schuelermine)
19:52:46 Lord_of_Life_ is now known as Lord_of_Life
19:56:18 × chromoblob quits (~chromoblo@user/chromob1ot1c) (Ping timeout: 246 seconds)
20:06:17 × oskarw quits (~user@user/oskarw) (Remote host closed the connection)
20:08:12 × jreicher quits (~joelr@user/jreicher) (Quit: In transit)
20:10:10 chromoblob joins (~chromoblo@user/chromob1ot1c)
20:18:19 emmanuelux joins (~em@user/emmanuelux)
20:21:18 malte joins (~malte@mal.tc)
20:21:58 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
20:23:10 Square2 joins (~Square@user/square)
20:25:12 target_i joins (~target_i@user/target-i/x-6023099)
20:25:57 × Square quits (~Square4@user/square) (Ping timeout: 268 seconds)
20:26:28 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds)
20:29:36 humasect joins (~humasect@dyn-192-249-132-90.nexicom.net)
20:31:48 × humasect quits (~humasect@dyn-192-249-132-90.nexicom.net) (Read error: Connection reset by peer)
20:35:09 humasect joins (~humasect@dyn-192-249-132-90.nexicom.net)
20:37:21 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
20:41:59 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
20:44:03 × humasect quits (~humasect@dyn-192-249-132-90.nexicom.net) (Remote host closed the connection)
20:44:09 × anselmschueler quits (~Thunderbi@user/schuelermine) (Remote host closed the connection)
20:53:09 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
20:54:13 madresch joins (~Thunderbi@user/madresch)
20:58:39 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 272 seconds)
21:01:09 dhil joins (~dhil@5.151.29.138)
21:08:47 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
21:13:31 × dhil quits (~dhil@5.151.29.138) (Ping timeout: 264 seconds)
21:13:31 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
21:14:26 × Googulator39 quits (~Googulato@2a01-036d-0106-0119-5d77-22bc-bcbf-a57b.pool6.digikabel.hu) (Quit: Client closed)
21:14:30 Googulator88 joins (~Googulato@2a01-036d-0106-0119-5d77-22bc-bcbf-a57b.pool6.digikabel.hu)
21:15:00 dhil joins (~dhil@5.151.29.141)
21:21:39 humasect joins (~humasect@dyn-192-249-132-90.nexicom.net)
21:24:32 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
21:29:19 Googulator61 joins (~Googulato@2a01-036d-0106-0119-5d77-22bc-bcbf-a57b.pool6.digikabel.hu)
21:29:32 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
21:29:35 × Googulator88 quits (~Googulato@2a01-036d-0106-0119-5d77-22bc-bcbf-a57b.pool6.digikabel.hu) (Quit: Client closed)
21:34:49 × DetourNetworkUK quits (~DetourNet@user/DetourNetworkUK) (Read error: Connection reset by peer)
21:35:02 DetourNe- joins (~DetourNet@user/DetourNetworkUK)
21:37:15 DetourNe- is now known as DetourNetworkUK
21:39:09 jreicher joins (~joelr@user/jreicher)
21:40:20 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
21:41:23 pavonia joins (~user@user/siracusa)
21:42:34 Googulator33 joins (~Googulato@2a01-036d-0106-0119-5d77-22bc-bcbf-a57b.pool6.digikabel.hu)
21:43:00 × Googulator61 quits (~Googulato@2a01-036d-0106-0119-5d77-22bc-bcbf-a57b.pool6.digikabel.hu) (Quit: Client closed)
21:46:02 × michalz quits (~michalz@185.246.207.221) (Remote host closed the connection)
21:46:50 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
21:46:59 × dhil quits (~dhil@5.151.29.141) (Ping timeout: 245 seconds)
21:47:34 × target_i quits (~target_i@user/target-i/x-6023099) (Quit: leaving)
21:49:03 × chromoblob quits (~chromoblo@user/chromob1ot1c) (Ping timeout: 255 seconds)
21:53:06 machinedgod joins (~machinedg@d172-219-48-230.abhsia.telus.net)
21:57:09 DetourNe- joins (~DetourNet@user/DetourNetworkUK)
21:57:52 × DetourNetworkUK quits (~DetourNet@user/DetourNetworkUK) (Read error: Connection reset by peer)
21:58:21 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
21:59:27 DetourNe- is now known as DetourNetworkUK
22:03:07 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
22:03:54 × humasect quits (~humasect@dyn-192-249-132-90.nexicom.net) (Remote host closed the connection)
22:09:50 × takuan quits (~takuan@d8D86B9E9.access.telenet.be) (Ping timeout: 244 seconds)
22:14:10 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
22:15:00 × Everything quits (~Everythin@172-232-54-192.ip.linodeusercontent.com) (Quit: leaving)
22:17:09 × Googulator33 quits (~Googulato@2a01-036d-0106-0119-5d77-22bc-bcbf-a57b.pool6.digikabel.hu) (Quit: Client closed)
22:17:13 Googulator15 joins (~Googulato@2a01-036d-0106-0119-5d77-22bc-bcbf-a57b.pool6.digikabel.hu)
22:18:30 Googulator9 joins (~Googulato@2a01-036d-0106-0119-5d77-22bc-bcbf-a57b.pool6.digikabel.hu)
22:18:34 × Googulator15 quits (~Googulato@2a01-036d-0106-0119-5d77-22bc-bcbf-a57b.pool6.digikabel.hu) (Client Quit)
22:19:31 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds)
22:26:10 Googulator44 joins (~Googulato@2a01-036d-0106-0119-5d77-22bc-bcbf-a57b.pool6.digikabel.hu)
22:26:13 × Googulator9 quits (~Googulato@2a01-036d-0106-0119-5d77-22bc-bcbf-a57b.pool6.digikabel.hu) (Quit: Client closed)
22:29:56 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
22:34:07 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
22:45:21 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
22:50:38 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 268 seconds)
22:52:48 chromoblob joins (~chromoblo@user/chromob1ot1c)
22:54:16 fp1 joins (~Thunderbi@2001-14ba-6e24-3000--190.rev.dnainternet.fi)
22:54:26 × fp1 quits (~Thunderbi@2001-14ba-6e24-3000--190.rev.dnainternet.fi) (Client Quit)
22:55:49 × gabiruh quits (~gabiruh@vps19177.publiccloud.com.br) (Quit: ZNC 1.7.5 - https://znc.in)
22:56:21 gabiruh joins (~gabiruh@vps19177.publiccloud.com.br)
23:01:10 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
23:02:48 × DetourNetworkUK quits (~DetourNet@user/DetourNetworkUK) (Ping timeout: 264 seconds)
23:04:32 DetourNetworkUK joins (~DetourNet@user/DetourNetworkUK)
23:06:00 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds)
23:07:44 Guest34 joins (~Guest34@134.197.0.20)
23:08:13 × Guest34 quits (~Guest34@134.197.0.20) (Client Quit)
23:13:45 gmg joins (~user@user/gehmehgeh)
23:15:43 × DetourNetworkUK quits (~DetourNet@user/DetourNetworkUK) (Read error: Connection reset by peer)
23:16:47 DetourNetworkUK joins (~DetourNet@user/DetourNetworkUK)
23:16:56 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
23:19:48 stackdroid18 parts (~stackdroi@user/stackdroid) ()
23:22:26 × Anarchos quits (~Anarchos@91-161-254-16.subs.proxad.net) (Quit: Vision[]: i've been blurred!)
23:23:33 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 255 seconds)
23:34:59 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
23:39:54 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
23:39:59 czan joins (~czan@user/mange)
23:40:43 Square joins (~Square4@user/square)
23:43:36 × Square2 quits (~Square@user/square) (Ping timeout: 264 seconds)
23:45:25 Sgeo joins (~Sgeo@user/sgeo)
23:50:45 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
23:53:33 × Pozyomka quits (~pyon@user/pyon) (Read error: Connection reset by peer)
23:54:43 Pozyomka joins (~pyon@user/pyon)
23:55:34 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds)

All times are in UTC on 2026-03-11.