2024/08/28

2024-08-28 00:00:20 +0200ec(~ec@gateway/tor-sasl/ec)
2024-08-28 00:00:47 +0200 <dmj`> fewer indirections, less allocations, less GC, faster code
2024-08-28 00:01:02 +0200 <haskellbridge> <Bowuigi> Fun stuff
2024-08-28 00:02:18 +0200 <dmj`> could open the door to writing an OS or RTS w/ Haskell, if you can optimize well enough
2024-08-28 00:02:23 +0200 <haskellbridge> <Bowuigi> I want an interpreted rather than a compiled language (mostly for configs, replacing Nix, Dhall and Hugs in my workflow) but these optimizations sound really interesting
2024-08-28 00:03:29 +0200 <dmj`> why not both
2024-08-28 00:03:53 +0200 <dmj`> Bowuigi: have you looked into GRIN at all
2024-08-28 00:04:36 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-08-28 00:04:40 +0200 <haskellbridge> <Bowuigi> Both would be too much for a short project (maybe in the future)
2024-08-28 00:04:49 +0200 <haskellbridge> <Bowuigi> GRIN seems very interesting tbh
2024-08-28 00:05:32 +0200 <dmj`> GRIN is much nicer than STG imo
2024-08-28 00:06:21 +0200Tuplanolla(~Tuplanoll@91-159-69-59.elisa-laajakaista.fi)
2024-08-28 00:06:26 +0200Smiles(uid551636@id-551636.lymington.irccloud.com) (Quit: Connection closed for inactivity)
2024-08-28 00:07:27 +0200 <haskellbridge> <Bowuigi> Is GRIN still maintained tho?
2024-08-28 00:08:24 +0200 <haskellbridge> <Bowuigi> LLVM is on version 18 and they ask for 7, apparently no support for LSS + Perceus
2024-08-28 00:09:35 +0200 <haskellbridge> <Bowuigi> Unless I'm looking at the wrong repo, which would make sense
2024-08-28 00:14:03 +0200 <dmj`> yea it works, I don't know if it will be upstreamed, but there are compiler plugins that allow you to use it with GHC. LLVM should be fine. You'd have to add LSS to STG for that to work. Perceus I don't know if ref. counting would work due to cyclic data structures
2024-08-28 00:14:32 +0200 <dmj`> but, you can make your own implementation too
2024-08-28 00:15:28 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 00:19:53 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-08-28 00:22:27 +0200 <haskellbridge> <Bowuigi> Hmmm I will definitely try to make a GRIN backend after the main parts of the lang are done. For the interpreter, just Kiselyov's eta optimized combinator compilation algorithm paired with primitives to manipulate Vectors of boxed values should do
2024-08-28 00:26:21 +0200ZharMenyhouse
2024-08-28 00:26:33 +0200houseZharMeny
2024-08-28 00:30:53 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 00:31:13 +0200Guest25(~Guest25@176.106.34.161)
2024-08-28 00:35:42 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds)
2024-08-28 00:41:21 +0200edwtjo(~edwtjo@fsf/member/edwtjo) (Ping timeout: 248 seconds)
2024-08-28 00:41:31 +0200Guest25(~Guest25@176.106.34.161) (Quit: Client closed)
2024-08-28 00:41:40 +0200edwtjo(~edwtjo@h-85-24-142-35.A213.priv.bahnhof.se)
2024-08-28 00:41:40 +0200edwtjo(~edwtjo@h-85-24-142-35.A213.priv.bahnhof.se) (Changing host)
2024-08-28 00:41:40 +0200edwtjo(~edwtjo@fsf/member/edwtjo)
2024-08-28 00:45:29 +0200 <az181> dose anyone konw any good beginer progects? I've just finished this course https://haskell.mooc.fi and would like to build a project but i'm not realy sure what to do. any sugestions would be appreciated.
2024-08-28 00:46:18 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 00:48:48 +0200 <EvanR> a computer game
2024-08-28 00:49:11 +0200 <EvanR> turn based, text based, if you want to make it easier
2024-08-28 00:49:22 +0200Sgeo(~Sgeo@user/sgeo)
2024-08-28 00:50:48 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-08-28 00:58:57 +0200acidjnk_new(~acidjnk@p200300d6e72cfb83b0c9f42d7d842c79.dip0.t-ipconnect.de) (Ping timeout: 248 seconds)
2024-08-28 01:00:59 +0200ZharMeny(~user@user/ZharMeny) (Read error: Connection reset by peer)
2024-08-28 01:01:13 +0200ZharMeny(~user@user/ZharMeny)
2024-08-28 01:01:45 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 01:06:06 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-08-28 01:07:27 +0200 <probie> An interpreter for a non-Haskell language you wish that you were writing in?
2024-08-28 01:09:17 +0200 <jackdk> http://jackkelly.name/blog/archives/2022/05/28/text-mode_games_as_first_haskell_projects/
2024-08-28 01:09:36 +0200athan(~athan@2600:382:2d09:ef51:9785:f8c8:8da1:7865) (Ping timeout: 276 seconds)
2024-08-28 01:10:58 +0200 <probie> Have a go at implementing a backend for "RealWorld" (https://www.realworld.how/) (although that might not qualify as a beginner project, depending on your definition of beginner)
2024-08-28 01:12:26 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 01:13:21 +0200xff0x(~xff0x@2405:6580:b080:900:290e:6738:41ab:e283) (Ping timeout: 252 seconds)
2024-08-28 01:14:12 +0200xff0x(~xff0x@2405:6580:b080:900:8680:f8c6:1d4:83ab)
2024-08-28 01:17:06 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-08-28 01:17:52 +0200 <haskellbridge> <thirdofmay18081814goya> is there any meaningful way to compose recursion scheme?
2024-08-28 01:17:55 +0200 <haskellbridge> <thirdofmay18081814goya> * schemes?
2024-08-28 01:18:10 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 01:20:36 +0200 <probie> A catamorphism and an anamorphism can be composed into a hylomorphism, and natural transformations compose with each other and {cata,ana}morphisms
2024-08-28 01:22:25 +0200 <haskellbridge> <thirdofmay18081814goya> probie: oh didn't know about the last one, ty
2024-08-28 01:22:25 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds)
2024-08-28 01:32:20 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com)
2024-08-28 01:33:27 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 01:38:03 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds)
2024-08-28 01:42:20 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
2024-08-28 01:43:27 +0200__monty__(~toonn@user/toonn) (Quit: leaving)
2024-08-28 01:43:46 +0200 <az181> thanks for the sugestions
2024-08-28 01:48:53 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 01:49:20 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2024-08-28 01:53:59 +0200 <probie> thirdofmay18081814goya: Probably not the most convincing example, but see https://play.haskell.org/saved/6UmBthxw
2024-08-28 01:54:26 +0200 <yin> don't forget paramorphisms and apomorphisms
2024-08-28 01:54:30 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-08-28 01:56:43 +0200 <haskellbridge> <thirdofmay18081814goya> probie: nice!! thanks a lot for the example!
2024-08-28 02:01:26 +0200 <EvanR> don't get histozygoprepromorphisms
2024-08-28 02:01:35 +0200 <EvanR> don't forget for
2024-08-28 02:02:22 +0200 <probie> zygohistomorphic prepromorphisms are a pillar of good software engineering
2024-08-28 02:05:12 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 02:07:29 +0200tomboy64(~tomboy64@user/tomboy64) (Ping timeout: 260 seconds)
2024-08-28 02:09:33 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-08-28 02:09:53 +0200JuanDaugherty(~juan@user/JuanDaugherty)
2024-08-28 02:13:45 +0200az181(~az181@bmly-12-b2-v4wan-164596-cust791.vm4.cable.virginm.net) (Ping timeout: 246 seconds)
2024-08-28 02:15:44 +0200manwithluck(manwithluc@gateway/vpn/protonvpn/manwithluck) (Read error: Connection reset by peer)
2024-08-28 02:16:35 +0200az181(~az181@bmly-12-b2-v4wan-164596-cust791.vm4.cable.virginm.net)
2024-08-28 02:17:21 +0200ZharMeny(~user@user/ZharMeny) (Quit: ERC 5.5.0.29.1 (IRC client for GNU Emacs 29.4))
2024-08-28 02:19:56 +0200tomboy64(~tomboy64@user/tomboy64)
2024-08-28 02:20:37 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 02:21:41 +0200Smiles(uid551636@id-551636.lymington.irccloud.com)
2024-08-28 02:25:19 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 264 seconds)
2024-08-28 02:33:46 +0200 <jle`> is there any way to use -XPackageImports to qualify between two different sublibraries in the same cabal project
2024-08-28 02:33:59 +0200 <jle`> please dont judge me it's for a good reason
2024-08-28 02:34:20 +0200 <jle`> sorry i mean same cabal package
2024-08-28 02:36:01 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 02:36:27 +0200Tuplanolla(~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) (Quit: Leaving.)
2024-08-28 02:40:21 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds)
2024-08-28 02:46:29 +0200machinedgod(~machinedg@d50-99-47-73.abhsia.telus.net) (Ping timeout: 255 seconds)
2024-08-28 02:46:38 +0200JuanDaugherty(~juan@user/JuanDaugherty) (Quit: JuanDaugherty)
2024-08-28 02:49:02 +0200JamesMowery(~JamesMowe@ip98-167-207-182.ph.ph.cox.net) (Quit: Goodbye)
2024-08-28 02:49:27 +0200 <geekosaur> I don't think ghc knows enough about cabal's concept of sublibraries. but ask in #hackage
2024-08-28 02:49:38 +0200JamesMowery(~JamesMowe@ip98-167-207-182.ph.ph.cox.net)
2024-08-28 02:49:47 +0200 <geekosaur> (although I think the people who woulds know are gone for the day, sadly)
2024-08-28 02:51:27 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 02:52:57 +0200Ptival(~halloy449@user/Ptival) (Ping timeout: 276 seconds)
2024-08-28 02:55:45 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-08-28 02:55:50 +0200 <dmj`> jle`: judged
2024-08-28 02:57:06 +0200lystra(~lystra@208.59.105.41)
2024-08-28 02:59:57 +0200JamesMowery(~JamesMowe@ip98-167-207-182.ph.ph.cox.net) (Quit: Goodbye)
2024-08-28 03:00:56 +0200 <Axman6> so judged
2024-08-28 03:01:57 +0200JamesMowery(~JamesMowe@ip98-167-207-182.ph.ph.cox.net)
2024-08-28 03:02:24 +0200sp1ff(~user@c-73-11-70-111.hsd1.wa.comcast.net) (Remote host closed the connection)
2024-08-28 03:03:45 +0200athan(~athan@syn-098-153-145-140.biz.spectrum.com)
2024-08-28 03:04:29 +0200pointlessslippe1(~pointless@212.82.82.3) (Ping timeout: 255 seconds)
2024-08-28 03:06:51 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 03:11:29 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-08-28 03:19:38 +0200dysthesis(~dysthesis@user/dysthesis)
2024-08-28 03:22:16 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 03:26:33 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-08-28 03:26:33 +0200Luj9(~Luj@2a01:e0a:de4:a0e1:be24:11ff:febc:b5b5) (Ping timeout: 246 seconds)
2024-08-28 03:32:58 +0200aforemny(~aforemny@2001:9e8:6ceb:b200:7a4b:8b9f:cdb1:25bb) (Ping timeout: 272 seconds)
2024-08-28 03:33:22 +0200 <dmj`> can't believe u
2024-08-28 03:35:44 +0200Luj9(~Luj@2a01:e0a:de4:a0e1:be24:11ff:febc:b5b5)
2024-08-28 03:37:24 +0200 <monochrom> Blind guessing but maybe "pkgname:foo" instead of just "pkgname" just happens to do that.
2024-08-28 03:37:39 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 03:38:26 +0200aforemny(~aforemny@2001:9e8:6cfa:1800:6700:1c00:b1c4:31c0)
2024-08-28 03:38:31 +0200machinedgod(~machinedg@d50-99-47-73.abhsia.telus.net)
2024-08-28 03:42:28 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 272 seconds)
2024-08-28 03:45:48 +0200pavonia(~user@user/siracusa) (Ping timeout: 246 seconds)
2024-08-28 03:47:02 +0200ddellacosta(~ddellacos@ool-44c73c8f.dyn.optonline.net)
2024-08-28 03:47:38 +0200 <haskellbridge> <thirdofmay18081814goya> how can I make an unfold that can discard some values?
2024-08-28 03:50:15 +0200 <c_wraith> like that backspace exercise someone was mentioning a couple days ago?
2024-08-28 03:50:33 +0200pavonia(~user@user/siracusa)
2024-08-28 03:53:06 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 03:55:22 +0200 <haskellbridge> <thirdofmay18081814goya> huh i'll try to find it
2024-08-28 03:55:33 +0200az181(~az181@bmly-12-b2-v4wan-164596-cust791.vm4.cable.virginm.net) (Ping timeout: 244 seconds)
2024-08-28 03:55:38 +0200 <c_wraith> well, the conclusion what "that's not an unfold", so it won't help :)
2024-08-28 03:55:48 +0200 <c_wraith> err, the conclusion *was*
2024-08-28 03:56:46 +0200rvalue(~rvalue@user/rvalue) (Ping timeout: 265 seconds)
2024-08-28 03:57:17 +0200 <haskellbridge> <Bowuigi> thirdofmay18081814goya: Discarding as not adding anything or removing previous values?
2024-08-28 03:57:32 +0200 <haskellbridge> <thirdofmay18081814goya> Bowuigi: not adding anything
2024-08-28 03:57:37 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 244 seconds)
2024-08-28 03:57:40 +0200 <haskellbridge> <Bowuigi> The first one is a futumorphism, the other one is not a recursion scheme AFAIK
2024-08-28 03:57:47 +0200 <haskellbridge> <thirdofmay18081814goya> ah
2024-08-28 03:57:50 +0200 <c_wraith> Oh. Isn't "not adding anything" the default?
2024-08-28 03:57:53 +0200 <haskellbridge> <Bowuigi> Ah great, futumorphism it is
2024-08-28 03:57:57 +0200 <c_wraith> Like... just run the calculation again
2024-08-28 03:58:05 +0200 <haskellbridge> <thirdofmay18081814goya> yeah it's a futumorphism
2024-08-28 03:58:53 +0200 <haskellbridge> <thirdofmay18081814goya> ty
2024-08-28 04:00:26 +0200 <haskellbridge> <Bowuigi> Np
2024-08-28 04:00:41 +0200 <monochrom> :(
2024-08-28 04:00:50 +0200raehik(~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) (Ping timeout: 272 seconds)
2024-08-28 04:01:21 +0200 <probie> Also, you can change your functor to allow a "not adding anything" action, and then use a catamorphism to turn it back to your desired functor (giving you a hylomorphism, so it should be "cheap")
2024-08-28 04:01:35 +0200 <monochrom> :)
2024-08-28 04:01:49 +0200 <haskellbridge> <thirdofmay18081814goya> probie: will play around with this idea too, thanks!
2024-08-28 04:02:17 +0200 <lystra> Hi. I built ghc-9.4.8 and am now building zlib-0.7.1.0. If I have zlib.h/libz.so in a non-standard location, how do I get the build process to look in this non-standard location?
2024-08-28 04:03:36 +0200 <monochrom> Ideally you configure pkg-config to know and output the location, but I am being theoretical.
2024-08-28 04:04:26 +0200 <lystra> monochrom: Thanks.
2024-08-28 04:05:00 +0200 <monochrom> --extra-include-dirs and --extra-lib-dirs should help.
2024-08-28 04:05:45 +0200td_(~td@i53870933.versanet.de) (Ping timeout: 276 seconds)
2024-08-28 04:05:56 +0200 <probie> In the example I linked earlier, that's actually the purpose of my `WithSkip` type. `f4` is actually doing this; it skips even numbers (albeit as `cata f . ana g` instead of `hylo f g`)
2024-08-28 04:07:20 +0200td_(~td@i53870920.versanet.de)
2024-08-28 04:07:59 +0200machined1od(~machinedg@d50-99-47-73.abhsia.telus.net)
2024-08-28 04:08:26 +0200machinedgod(~machinedg@d50-99-47-73.abhsia.telus.net) (Ping timeout: 272 seconds)
2024-08-28 04:08:31 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 04:09:21 +0200rvalue(~rvalue@user/rvalue)
2024-08-28 04:13:09 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds)
2024-08-28 04:14:35 +0200 <lystra> Does the use of pkg-config and --extra-include-dirs/--extra-lib-dirs assume cabal is being used for the build?
2024-08-28 04:14:48 +0200raehik(~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net)
2024-08-28 04:15:44 +0200 <monochrom> Yes I was assuming cabal.
2024-08-28 04:16:23 +0200 <lystra> We're building without cabal. Sorry I wasn't more specific.
2024-08-28 04:16:47 +0200 <monochrom> But if you're running Setup.hs it should also be --extra-include-dirs and --extra-lib-dirs
2024-08-28 04:18:13 +0200 <lystra> Looks like setting PKG_CONFIG_PATH was sufficient. Thanks!
2024-08-28 04:22:28 +0200 <geekosaur> iirc it's up to the package whether pkg-config is used or not, not cabal-install
2024-08-28 04:22:40 +0200 <geekosaur> (the Cabal library will be used either way)
2024-08-28 04:22:45 +0200xff0x(~xff0x@2405:6580:b080:900:8680:f8c6:1d4:83ab) (Ping timeout: 248 seconds)
2024-08-28 04:23:57 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 04:24:29 +0200xff0x(~xff0x@2405:6580:b080:900:25e7:480d:c266:86da)
2024-08-28 04:25:47 +0200 <mauke> IIRC the big hammer is CPATH and LD_LIBRARY_PATH
2024-08-28 04:28:29 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-08-28 04:35:06 +0200 <lystra> Looks like it uses "pkg-config --libs zlib" but then only uses the -L paths in the output, not -Wl,-rpath if it is in the --libs output. Is there an easy way to add to the RUNPATH of a package?
2024-08-28 04:36:57 +0200waleee(~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 276 seconds)
2024-08-28 04:39:23 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 04:44:14 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-08-28 04:50:36 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 260 seconds)
2024-08-28 04:53:00 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2024-08-28 04:54:49 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 04:55:17 +0200rvalue(~rvalue@user/rvalue) (Ping timeout: 248 seconds)
2024-08-28 04:59:18 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-08-28 05:00:57 +0200terrorjack4(~terrorjac@2a01:4f8:121:32e8::) (Quit: The Lounge - https://thelounge.chat)
2024-08-28 05:02:57 +0200td_(~td@i53870920.versanet.de) (Ping timeout: 276 seconds)
2024-08-28 05:03:10 +0200terrorjack4(~terrorjac@static.163.82.63.178.clients.your-server.de)
2024-08-28 05:04:23 +0200td_(~td@i53870935.versanet.de)
2024-08-28 05:07:25 +0200spew(~spew@201.141.102.132) (Quit: spew)
2024-08-28 05:10:06 +0200zero(~z@user/zero)
2024-08-28 05:10:13 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 05:10:17 +0200yin(~z@user/zero) (Read error: Connection reset by peer)
2024-08-28 05:11:09 +0200ChaiTRex(~ChaiTRex@user/chaitrex)
2024-08-28 05:12:08 +0200rosco(~rosco@175.136.158.234)
2024-08-28 05:14:08 +0200sp1ff(~user@c-73-11-70-111.hsd1.wa.comcast.net)
2024-08-28 05:14:42 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-08-28 05:15:47 +0200aforemny_(~aforemny@2001:9e8:6cc3:6400:e30f:2a23:e5e9:e455)
2024-08-28 05:16:12 +0200aforemny(~aforemny@2001:9e8:6cfa:1800:6700:1c00:b1c4:31c0) (Ping timeout: 272 seconds)
2024-08-28 05:16:40 +0200BiteriaFedoral(~BiteriaFe@2804:880:130e:5700:69b3:2157:6abe:896)
2024-08-28 05:19:25 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 265 seconds)
2024-08-28 05:21:09 +0200rvalue(~rvalue@user/rvalue)
2024-08-28 05:22:41 +0200Lord_of_Life_(~Lord@user/lord-of-life/x-2819915)
2024-08-28 05:23:30 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 252 seconds)
2024-08-28 05:24:03 +0200Lord_of_Life_Lord_of_Life
2024-08-28 05:24:20 +0200BiteriaFedoral(~BiteriaFe@2804:880:130e:5700:69b3:2157:6abe:896) (Changing host)
2024-08-28 05:24:20 +0200BiteriaFedoral(~BiteriaFe@user/BiteriaFedoral)
2024-08-28 05:25:39 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 05:28:07 +0200Liw53(~Liw@2804:880:130e:5700:69b3:2157:6abe:896)
2024-08-28 05:28:53 +0200Liw53(~Liw@2804:880:130e:5700:69b3:2157:6abe:896) (Write error: Broken pipe)
2024-08-28 05:29:30 +0200zlqrvx(~zlqrvx@user/zlqrvx) (Ping timeout: 272 seconds)
2024-08-28 05:29:57 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds)
2024-08-28 05:41:05 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 05:45:22 +0200zlqrvx(~zlqrvx@user/zlqrvx)
2024-08-28 05:45:58 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 272 seconds)
2024-08-28 05:48:00 +0200machined1od(~machinedg@d50-99-47-73.abhsia.telus.net) (Remote host closed the connection)
2024-08-28 05:49:19 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com)
2024-08-28 05:54:50 +0200raehik(~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) (Ping timeout: 272 seconds)
2024-08-28 05:55:49 +0200machinedgod(~machinedg@d50-99-47-73.abhsia.telus.net)
2024-08-28 05:56:29 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 05:58:01 +0200ddb(ddb@tilde.club)
2024-08-28 05:58:41 +0200myxos(~myxos@syn-065-028-251-121.res.spectrum.com) (Ping timeout: 248 seconds)
2024-08-28 06:00:39 +0200spew(~spew@201.141.102.132)
2024-08-28 06:03:00 +0200ell(~ellie@user/ellie)
2024-08-28 06:05:18 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-08-28 06:16:10 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 06:20:37 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds)
2024-08-28 06:29:32 +0200raehik(~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net)
2024-08-28 06:29:45 +0200Smiles(uid551636@id-551636.lymington.irccloud.com) (Quit: Connection closed for inactivity)
2024-08-28 06:31:33 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 06:34:51 +0200danza(~danza@user/danza)
2024-08-28 06:34:56 +0200ThePenguin7(~ThePengui@cust-95-80-24-166.csbnet.se) (Remote host closed the connection)
2024-08-28 06:35:14 +0200raehik(~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) (Ping timeout: 260 seconds)
2024-08-28 06:35:38 +0200ThePenguin7(~ThePengui@cust-95-80-24-166.csbnet.se)
2024-08-28 06:36:25 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-08-28 06:38:25 +0200BiteriaFedoral(~BiteriaFe@user/BiteriaFedoral) (Quit: Client closed)
2024-08-28 06:46:59 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 06:52:09 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 276 seconds)
2024-08-28 06:53:59 +0200spew(~spew@201.141.102.132) (Quit: spew)
2024-08-28 06:58:08 +0200Vajb(~Vajb@n7m8bu6eaitlx0eukg2-1.v6.elisa-mobile.fi)
2024-08-28 07:02:23 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 07:07:40 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 272 seconds)
2024-08-28 07:10:01 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 260 seconds)
2024-08-28 07:10:46 +0200michalz(~michalz@185.246.207.222)
2024-08-28 07:11:10 +0200neuroevolutus(~neuroevol@146.70.211.88)
2024-08-28 07:13:57 +0200danza(~danza@user/danza) (Ping timeout: 244 seconds)
2024-08-28 07:17:49 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 07:22:29 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds)
2024-08-28 07:26:37 +0200gmg(~user@user/gehmehgeh)
2024-08-28 07:26:41 +0200tomku(~tomku@user/tomku) (Ping timeout: 252 seconds)
2024-08-28 07:30:06 +0200Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2024-08-28 07:30:43 +0200michalz(~michalz@185.246.207.222) (Remote host closed the connection)
2024-08-28 07:33:14 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 07:33:28 +0200michalz(~michalz@185.246.207.215)
2024-08-28 07:34:51 +0200danza(~danza@user/danza)
2024-08-28 07:36:00 +0200ThePenguin7(~ThePengui@cust-95-80-24-166.csbnet.se) (Quit: ThePenguin7)
2024-08-28 07:36:19 +0200ThePenguin7(~ThePengui@cust-95-80-24-166.csbnet.se)
2024-08-28 07:37:30 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-08-28 07:46:39 +0200youthlic(~Thunderbi@user/youthlic)
2024-08-28 07:56:16 +0200 <jle`> mauke: it doesn't work because : is an illegal character :(
2024-08-28 07:56:22 +0200 <jle`> oops that was for monochrom
2024-08-28 07:58:51 +0200danza(~danza@user/danza) (Ping timeout: 246 seconds)
2024-08-28 08:04:23 +0200neuroevolutus(~neuroevol@146.70.211.88) (Quit: Client closed)
2024-08-28 08:05:13 +0200nek0(~nek0@user/nek0) (Quit: The Lounge - https://thelounge.chat)
2024-08-28 08:06:09 +0200CiaoSen(~Jura@2a05:5800:432:b100:ca4b:d6ff:fec1:99da)
2024-08-28 08:15:05 +0200danza(~danza@user/danza)
2024-08-28 08:17:27 +0200 <haskellbridge> <thirdofmay18081814goya> any way to get a more detailed error on "non-exhaustive patterns in case"? e.g. what is it the input that couldn't get pattern matched?
2024-08-28 08:20:13 +0200 <[exa]> thirdofmay18081814goya: append `e -> error (show e)`
2024-08-28 08:20:58 +0200 <[exa]> sadly to show anything useful of the unknown case, you need to carry there some kinda showey implementation
2024-08-28 08:21:14 +0200 <mauke> thirdofmay18081814goya: compile with -Wincomplete-patterns?
2024-08-28 08:24:03 +0200merijn(~merijn@77.242.116.146)
2024-08-28 08:24:43 +0200youthlic(~Thunderbi@user/youthlic) (Ping timeout: 264 seconds)
2024-08-28 08:25:33 +0200nek0(~nek0@user/nek0)
2024-08-28 08:27:53 +0200youthlic(~Thunderbi@user/youthlic)
2024-08-28 08:37:02 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 255 seconds)
2024-08-28 08:37:20 +0200 <haskellbridge> <thirdofmay18081814goya> ah that worked, ty!
2024-08-28 08:37:50 +0200merijn(~merijn@77.242.116.146) (Ping timeout: 252 seconds)
2024-08-28 08:40:08 +0200myxos(~myxos@syn-065-028-251-121.res.spectrum.com)
2024-08-28 08:42:35 +0200danza(~danza@user/danza) (Read error: Connection reset by peer)
2024-08-28 08:42:43 +0200danz91956(~danza@user/danza)
2024-08-28 08:45:56 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-08-28 08:48:29 +0200merijn(~merijn@77.242.116.146)
2024-08-28 08:49:49 +0200rosco(~rosco@175.136.158.234) (Quit: Lost terminal)
2024-08-28 08:50:57 +0200acidjnk_new(~acidjnk@p200300d6e72cfb17547c43ea473ec4ac.dip0.t-ipconnect.de)
2024-08-28 08:55:01 +0200 <Axman6> HLS should also warn you about it in your editor
2024-08-28 09:00:06 +0200lol_(~lol@2603:3016:1e01:b960:a04f:145c:6e83:611e)
2024-08-28 09:01:33 +0200lol__(~lol@2603:3016:1e01:b960:a04f:145c:6e83:611e)
2024-08-28 09:03:17 +0200jcarpenter2(~lol@2603:3016:1e01:b960:a04f:145c:6e83:611e) (Ping timeout: 248 seconds)
2024-08-28 09:05:12 +0200pointlessslippe1(~pointless@212.82.82.3)
2024-08-28 09:05:34 +0200lol_(~lol@2603:3016:1e01:b960:a04f:145c:6e83:611e) (Ping timeout: 260 seconds)
2024-08-28 09:11:41 +0200itaipu(~itaipu@168.121.98.107) (Ping timeout: 255 seconds)
2024-08-28 09:19:59 +0200driib31(~driib@vmi931078.contaboserver.net)
2024-08-28 09:20:01 +0200Wstfgl0(~me-me@kc.randomserver.name)
2024-08-28 09:20:08 +0200_d0t_(~{-d0t-}@user/-d0t-/x-7915216)
2024-08-28 09:20:14 +0200natto17(~natto@129.154.243.159)
2024-08-28 09:20:22 +0200pavonia_(~user@user/siracusa)
2024-08-28 09:20:25 +0200terrorjack49(~terrorjac@2a01:4f8:121:32e8::)
2024-08-28 09:20:39 +0200mustafa_(sid502723@rockylinux/releng/mustafa)
2024-08-28 09:20:41 +0200Square2(~Square4@user/square)
2024-08-28 09:20:44 +0200nurupo_(~nurupo.ga@user/nurupo)
2024-08-28 09:20:46 +0200YoungFrawg(~youngfrog@39.129-180-91.adsl-dyn.isp.belgacom.be)
2024-08-28 09:20:56 +0200guygastineau(~guygastin@137.184.131.156)
2024-08-28 09:21:12 +0200athan_(~athan@syn-098-153-145-140.biz.spectrum.com)
2024-08-28 09:21:21 +0200merijn(~merijn@77.242.116.146) (Ping timeout: 248 seconds)
2024-08-28 09:21:22 +0200hgolden_(~hgolden@2603:8000:9d00:3ed1:6c70:1ac0:d127:74dd)
2024-08-28 09:21:25 +0200lockywolf_(~lockywolf@public.lockywolf.net)
2024-08-28 09:21:38 +0200RMSBach(~guygastin@137.184.131.156) (Ping timeout: 246 seconds)
2024-08-28 09:21:38 +0200flukiluke(~m-7humut@2603:c023:c000:6c7e:8945:ad24:9113:a962) (Ping timeout: 246 seconds)
2024-08-28 09:21:38 +0200YoungFrog(~youngfrog@2a02:a03f:c9db:fc00:2ec:6da:9ed1:7520) (Ping timeout: 246 seconds)
2024-08-28 09:21:38 +0200driib3(~driib@vmi931078.contaboserver.net) (Read error: Connection reset by peer)
2024-08-28 09:21:38 +0200terrorjack4(~terrorjac@static.163.82.63.178.clients.your-server.de) (Write error: Connection reset by peer)
2024-08-28 09:21:38 +0200nurupo(~nurupo.ga@user/nurupo) (Quit: nurupo.ga)
2024-08-28 09:21:38 +0200mustafa(sid502723@rockylinux/releng/mustafa) (Read error: Connection reset by peer)
2024-08-28 09:21:38 +0200tinjamin(~tinjamin@banshee.h4x0r.space) (Read error: Connection reset by peer)
2024-08-28 09:21:38 +0200Me-me(~me-me@user/me-me) (Read error: Connection reset by peer)
2024-08-28 09:21:38 +0200pavonia(~user@user/siracusa) (Read error: Connection reset by peer)
2024-08-28 09:21:38 +0200lockywolf(~lockywolf@public.lockywolf.net) (Read error: Connection reset by peer)
2024-08-28 09:21:38 +0200natto(~natto@129.154.243.159) (Read error: Connection reset by peer)
2024-08-28 09:21:38 +0200bsima(~bsima@2604:a880:400:d0::19f1:7001) (Read error: Connection reset by peer)
2024-08-28 09:21:38 +0200AlexZenon(~alzenon@178.34.150.250) (Ping timeout: 246 seconds)
2024-08-28 09:21:38 +0200athan(~athan@syn-098-153-145-140.biz.spectrum.com) (Remote host closed the connection)
2024-08-28 09:21:39 +0200Ranhir(~Ranhir@157.97.53.139) (Ping timeout: 246 seconds)
2024-08-28 09:21:39 +0200Raito_Bezarius(~Raito@wireguard/tunneler/raito-bezarius) (Ping timeout: 246 seconds)
2024-08-28 09:21:39 +0200hgolden(~hgolden@2603:8000:9d00:3ed1:6c70:1ac0:d127:74dd) (Ping timeout: 246 seconds)
2024-08-28 09:21:39 +0200_d0t(~{-d0t-}@user/-d0t-/x-7915216) (Ping timeout: 246 seconds)
2024-08-28 09:21:39 +0200[exa](~exa@user/exa/x-3587197) (Ping timeout: 246 seconds)
2024-08-28 09:21:39 +0200driib31driib3
2024-08-28 09:21:39 +0200terrorjack49terrorjack4
2024-08-28 09:21:39 +0200bravespear|2(~Ranhir@157.97.53.139)
2024-08-28 09:21:39 +0200tinjamin4(~tinjamin@banshee.h4x0r.space)
2024-08-28 09:21:39 +0200_d0t__d0t
2024-08-28 09:21:44 +0200exa2(~exa@srv3n.blesmrt.net)
2024-08-28 09:21:47 +0200flukiluke(~m-7humut@2603:c023:c000:6c7e:8945:ad24:9113:a962)
2024-08-28 09:21:48 +0200Wstfgl0Me-me
2024-08-28 09:21:48 +0200bsima(~bsima@2604:a880:400:d0::19f1:7001)
2024-08-28 09:21:53 +0200YoungFrawgYoungFrog
2024-08-28 09:22:13 +0200pavonia_pavonia
2024-08-28 09:22:15 +0200mustafa_mustafa
2024-08-28 09:22:29 +0200danz91956(~danza@user/danza) (Ping timeout: 255 seconds)
2024-08-28 09:24:03 +0200Umeaboy(~Umeaboy@94-255-145-133.cust.bredband2.com)
2024-08-28 09:24:42 +0200itaipu(~itaipu@168.121.99.76)
2024-08-28 09:24:50 +0200nurupo_nurupo
2024-08-28 09:25:10 +0200AlexZenon(~alzenon@178.34.150.250)
2024-08-28 09:25:45 +0200 <Umeaboy> Hi! I guess (not being an expert) that when someone that uses openSUSE decides to package ghc-bootstrap openSUSE has it's own way of handling external files like LICENSE and README.openSUSE. Am I right?
2024-08-28 09:25:50 +0200merijn(~merijn@77.242.116.146)
2024-08-28 09:26:07 +0200 <Umeaboy> I can't get the %doc and %licens working in Mageia 9.
2024-08-28 09:26:38 +0200gmg(~user@user/gehmehgeh) (Quit: Leaving)
2024-08-28 09:29:37 +0200rosco(~rosco@175.136.158.234)
2024-08-28 09:31:06 +0200danza(~danza@user/danza)
2024-08-28 09:35:29 +0200Raito_Bezarius(~Raito@wireguard/tunneler/raito-bezarius)
2024-08-28 09:36:42 +0200gmg(~user@user/gehmehgeh)
2024-08-28 09:37:29 +0200CrunchyFlakes(~CrunchyFl@ip-109-42-114-71.web.vodafone.de)
2024-08-28 09:37:58 +0200 <exa2> Umeaboy: might be better to ask opensuse devs; looks very opensuse specific
2024-08-28 09:38:10 +0200 <exa2> Umeaboy: also what's mageia. :D
2024-08-28 09:38:18 +0200 <Umeaboy> exa2: Fork of Mandriva.
2024-08-28 09:39:18 +0200exa2[exa]
2024-08-28 09:39:20 +0200 <Franciman> mageia is quite nice, exa2 is it the distro based on spells?
2024-08-28 09:39:22 +0200 <Umeaboy> First came Mandrakesoft, then Mandrake, then Mandriva, then Mandriva fired a lot of people and that's when some of the fired staff decided to fork Mandriva.
2024-08-28 09:39:26 +0200[exa](~exa@srv3n.blesmrt.net) (Changing host)
2024-08-28 09:39:26 +0200[exa](~exa@user/exa/x-3587197)
2024-08-28 09:40:01 +0200CrunchyFlakes(~CrunchyFl@ip-109-42-114-71.web.vodafone.de) (Read error: Connection reset by peer)
2024-08-28 09:40:04 +0200 <[exa]> not sure tbh, I used mandrake once back in the very old days
2024-08-28 09:40:10 +0200 <[exa]> cool it still lives on
2024-08-28 09:41:34 +0200 <Umeaboy> Yes.
2024-08-28 09:41:50 +0200 <Umeaboy> We need more bug fixers though. :)
2024-08-28 09:43:13 +0200CrunchyFlakes(~CrunchyFl@ip-109-42-114-71.web.vodafone.de)
2024-08-28 09:45:36 +0200 <geekosaur> doesn't everyone?
2024-08-28 09:46:46 +0200CrunchyFlakes(~CrunchyFl@ip-109-42-114-71.web.vodafone.de) (Read error: Connection reset by peer)
2024-08-28 09:47:11 +0200CrunchyFlakes(~CrunchyFl@ip-109-42-114-71.web.vodafone.de)
2024-08-28 09:47:27 +0200arahael(~arahael@user/arahael)
2024-08-28 09:48:18 +0200youthlic(~Thunderbi@user/youthlic) (Ping timeout: 276 seconds)
2024-08-28 09:51:40 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-08-28 09:55:30 +0200CrunchyFlakes(~CrunchyFl@ip-109-42-114-71.web.vodafone.de) (Read error: Connection reset by peer)
2024-08-28 09:58:45 +0200CrunchyFlakes(~CrunchyFl@ip-109-42-114-71.web.vodafone.de)
2024-08-28 09:59:11 +0200ash3en(~Thunderbi@2a01:c23:9513:f100:2722:ccdf:9653:5d23)
2024-08-28 10:01:21 +0200itaipu(~itaipu@168.121.99.76) (Ping timeout: 246 seconds)
2024-08-28 10:08:58 +0200Guest37(~Guest37@201.red-79-151-83.dynamicip.rima-tde.net)
2024-08-28 10:11:09 +0200Guest37(~Guest37@201.red-79-151-83.dynamicip.rima-tde.net) (Write error: Broken pipe)
2024-08-28 10:12:24 +0200cfricke(~cfricke@user/cfricke)
2024-08-28 10:14:48 +0200itaipu(~itaipu@168.121.99.107)
2024-08-28 10:17:25 +0200tzh(~tzh@c-76-115-131-146.hsd1.or.comcast.net) (Quit: zzz)
2024-08-28 10:17:37 +0200ft(~ft@p4fc2a393.dip0.t-ipconnect.de) (Quit: leaving)
2024-08-28 10:19:55 +0200itaipu(~itaipu@168.121.99.107) (Ping timeout: 264 seconds)
2024-08-28 10:20:51 +0200merijn(~merijn@77.242.116.146) (Ping timeout: 252 seconds)
2024-08-28 10:22:59 +0200__monty__(~toonn@user/toonn)
2024-08-28 10:25:56 +0200danza(~danza@user/danza) (Ping timeout: 255 seconds)
2024-08-28 10:27:31 +0200danza(~danza@user/danza)
2024-08-28 10:30:43 +0200merijn(~merijn@77.242.116.146)
2024-08-28 10:31:53 +0200itaipu(~itaipu@168.121.99.123)
2024-08-28 10:32:17 +0200danza(~danza@user/danza) (Ping timeout: 248 seconds)
2024-08-28 10:35:31 +0200merijn(~merijn@77.242.116.146) (Ping timeout: 265 seconds)
2024-08-28 10:35:42 +0200Smiles(uid551636@id-551636.lymington.irccloud.com)
2024-08-28 10:36:05 +0200CiaoSen(~Jura@2a05:5800:432:b100:ca4b:d6ff:fec1:99da) (Ping timeout: 248 seconds)
2024-08-28 10:44:35 +0200merijn(~merijn@77.242.116.146)
2024-08-28 10:45:53 +0200youthlic(~Thunderbi@user/youthlic)
2024-08-28 10:49:08 +0200gmg(~user@user/gehmehgeh) (Quit: Leaving)
2024-08-28 10:50:14 +0200youthlic(~Thunderbi@user/youthlic) (Ping timeout: 255 seconds)
2024-08-28 10:51:51 +0200gmg(~user@user/gehmehgeh)
2024-08-28 10:53:26 +0200econo_(uid147250@id-147250.tinside.irccloud.com) (Quit: Connection closed for inactivity)
2024-08-28 10:53:41 +0200merijn(~merijn@77.242.116.146) (Ping timeout: 248 seconds)
2024-08-28 10:54:29 +0200AlexNoo_AlexNoo
2024-08-28 10:55:11 +0200Umeaboy(~Umeaboy@94-255-145-133.cust.bredband2.com) (Quit: Leaving)
2024-08-28 10:55:42 +0200rosco(~rosco@175.136.158.234) (Quit: Lost terminal)
2024-08-28 10:59:52 +0200sawilagar(~sawilagar@user/sawilagar)
2024-08-28 11:01:53 +0200merijn(~merijn@77.242.116.146)
2024-08-28 11:06:34 +0200ubert(~Thunderbi@178.165.178.117.wireless.dyn.drei.com)
2024-08-28 11:18:10 +0200aljazmc(~aljazmc@user/aljazmc)
2024-08-28 11:19:23 +0200aljazmc(~aljazmc@user/aljazmc) (Remote host closed the connection)
2024-08-28 11:19:48 +0200aljazmc(~aljazmc@user/aljazmc)
2024-08-28 11:19:58 +0200aljazmc(~aljazmc@user/aljazmc) (Remote host closed the connection)
2024-08-28 11:24:06 +0200CiaoSen(~Jura@2a05:5800:432:b100:ca4b:d6ff:fec1:99da)
2024-08-28 11:25:20 +0200danse-nr3(~danse-nr3@user/danse-nr3)
2024-08-28 11:28:14 +0200nschoe-(~nschoe@2a01:e0a:8e:a190:8a3:68c5:dfa:3fdd)
2024-08-28 11:28:34 +0200tomku(~tomku@user/tomku)
2024-08-28 11:29:04 +0200nschoe(~nschoe@82-65-202-30.subs.proxad.net) (Ping timeout: 260 seconds)
2024-08-28 11:43:48 +0200youthlic(~Thunderbi@user/youthlic)
2024-08-28 11:44:57 +0200ubert(~Thunderbi@178.165.178.117.wireless.dyn.drei.com) (Quit: ubert)
2024-08-28 11:45:11 +0200ubert(~Thunderbi@178.165.178.117.wireless.dyn.drei.com)
2024-08-28 11:47:48 +0200ash3en1(~Thunderbi@146.70.124.158)
2024-08-28 11:49:39 +0200ash3en(~Thunderbi@2a01:c23:9513:f100:2722:ccdf:9653:5d23) (Ping timeout: 260 seconds)
2024-08-28 11:49:40 +0200ash3en1ash3en
2024-08-28 11:55:29 +0200xff0x(~xff0x@2405:6580:b080:900:25e7:480d:c266:86da) (Ping timeout: 260 seconds)
2024-08-28 11:55:30 +0200Katarushisu1(~Katarushi@finc-20-b2-v4wan-169598-cust1799.vm7.cable.virginm.net)
2024-08-28 11:55:59 +0200xff0x(~xff0x@2405:6580:b080:900:453b:b80b:e0ca:2277)
2024-08-28 11:56:51 +0200youthlic(~Thunderbi@user/youthlic) (Ping timeout: 252 seconds)
2024-08-28 11:58:24 +0200merijn(~merijn@77.242.116.146) (Ping timeout: 260 seconds)
2024-08-28 12:02:22 +0200rosco(~rosco@175.136.158.234)
2024-08-28 12:17:59 +0200myxos(~myxos@syn-065-028-251-121.res.spectrum.com) (Ping timeout: 255 seconds)
2024-08-28 12:20:09 +0200merijn(~merijn@77.242.116.146)
2024-08-28 12:24:16 +0200petrichor(~znc-user@user/petrichor)
2024-08-28 12:29:38 +0200merijn(~merijn@77.242.116.146) (Ping timeout: 244 seconds)
2024-08-28 12:35:23 +0200sourcetarius(~sourcetar@user/sourcetarius)
2024-08-28 12:42:23 +0200rosco(~rosco@175.136.158.234) (Quit: Lost terminal)
2024-08-28 12:42:28 +0200danse-nr3(~danse-nr3@user/danse-nr3) (Read error: Connection reset by peer)
2024-08-28 12:42:59 +0200danse-nr3(~danse-nr3@user/danse-nr3)
2024-08-28 12:47:49 +0200danse-nr3(~danse-nr3@user/danse-nr3) (Ping timeout: 248 seconds)
2024-08-28 12:47:57 +0200ash3en(~Thunderbi@146.70.124.158) (Ping timeout: 265 seconds)
2024-08-28 12:56:08 +0200rvalue(~rvalue@user/rvalue) (Read error: Connection reset by peer)
2024-08-28 12:56:38 +0200rvalue(~rvalue@user/rvalue)
2024-08-28 13:06:08 +0200merijn(~merijn@77.242.116.146)
2024-08-28 13:13:04 +0200ZharMeny(~user@user/ZharMeny)
2024-08-28 13:25:46 +0200yvan-sraka(uid419690@id-419690.lymington.irccloud.com)
2024-08-28 13:27:31 +0200ash3en(~Thunderbi@146.70.124.158)
2024-08-28 13:30:21 +0200yvan-sraka(uid419690@id-419690.lymington.irccloud.com) (Client Quit)
2024-08-28 13:33:47 +0200yvan-sraka(uid419690@id-419690.lymington.irccloud.com)
2024-08-28 13:40:51 +0200dysthesis(~dysthesis@user/dysthesis) (Ping timeout: 260 seconds)
2024-08-28 13:47:46 +0200alexherbo2(~alexherbo@2a02-8440-321d-f69f-5552-ab32-26ac-8de9.rev.sfr.net)
2024-08-28 13:48:09 +0200ZharMeny(~user@user/ZharMeny) (Ping timeout: 246 seconds)
2024-08-28 13:49:43 +0200ss4(~wootehfoo@user/wootehfoot)
2024-08-28 13:52:22 +0200wootehfoot(~wootehfoo@user/wootehfoot) (Ping timeout: 272 seconds)
2024-08-28 14:01:42 +0200rosco(~rosco@175.136.158.234)
2024-08-28 14:09:57 +0200alexherbo2(~alexherbo@2a02-8440-321d-f69f-5552-ab32-26ac-8de9.rev.sfr.net) (Remote host closed the connection)
2024-08-28 14:19:47 +0200picnoir(~picnoir@about/aquilenet/vodoo/NinjaTrappeur) (Quit: WeeChat 4.3.6)
2024-08-28 14:21:44 +0200picnoir(~picnoir@about/aquilenet/vodoo/NinjaTrappeur)
2024-08-28 14:23:54 +0200comonad(~comonad@p200300d02705e800d14b563ba919432f.dip0.t-ipconnect.de) (Ping timeout: 276 seconds)
2024-08-28 14:30:51 +0200ash3en(~Thunderbi@146.70.124.158) (Ping timeout: 246 seconds)
2024-08-28 14:30:57 +0200ash3en1(~Thunderbi@2a01:c23:9513:f100:2722:ccdf:9653:5d23)
2024-08-28 14:33:15 +0200ash3en1ash3en
2024-08-28 14:33:18 +0200comonad(~comonad@p54a0342e.dip0.t-ipconnect.de)
2024-08-28 14:34:46 +0200itaipu(~itaipu@168.121.99.123) (Ping timeout: 265 seconds)
2024-08-28 14:36:37 +0200ddellacosta(~ddellacos@ool-44c73c8f.dyn.optonline.net) (Ping timeout: 248 seconds)
2024-08-28 14:41:08 +0200ash3en(~Thunderbi@2a01:c23:9513:f100:2722:ccdf:9653:5d23) (Ping timeout: 272 seconds)
2024-08-28 14:41:21 +0200comonad(~comonad@p54a0342e.dip0.t-ipconnect.de) (Ping timeout: 246 seconds)
2024-08-28 14:44:28 +0200comonad(~comonad@p54a0342e.dip0.t-ipconnect.de)
2024-08-28 14:44:39 +0200ZharMeny(~user@user/ZharMeny)
2024-08-28 14:46:25 +0200bw_______bw
2024-08-28 14:47:01 +0200bw(sid2730@id-2730.ilkley.irccloud.com) (Changing host)
2024-08-28 14:47:01 +0200bw(sid2730@user/betawaffle)
2024-08-28 14:47:35 +0200CiaoSen(~Jura@2a05:5800:432:b100:ca4b:d6ff:fec1:99da) (Ping timeout: 244 seconds)
2024-08-28 14:47:39 +0200machinedgod(~machinedg@d50-99-47-73.abhsia.telus.net) (Ping timeout: 246 seconds)
2024-08-28 14:48:13 +0200rosco(~rosco@175.136.158.234) (Quit: Lost terminal)
2024-08-28 14:49:20 +0200CiaoSen(~Jura@2a05:5800:436:4100:ca4b:d6ff:fec1:99da)
2024-08-28 14:49:45 +0200comonad(~comonad@p54a0342e.dip0.t-ipconnect.de) (Ping timeout: 246 seconds)
2024-08-28 14:49:59 +0200ash3en(~Thunderbi@2a01:c23:9513:f100:2722:ccdf:9653:5d23)
2024-08-28 14:50:37 +0200ZharMeny(~user@user/ZharMeny) (Quit: .,,)
2024-08-28 14:52:57 +0200 <ash3en> would it make sense to install ghcup with xbps-src on void? or the AUR respectively?
2024-08-28 14:54:01 +0200 <geekosaur> if you do, be aware that you can't update it from within ghcup, you would have to wait for the package to be updated
2024-08-28 14:56:24 +0200CiaoSen(~Jura@2a05:5800:436:4100:ca4b:d6ff:fec1:99da) (Ping timeout: 246 seconds)
2024-08-28 15:00:18 +0200raghavgururajan(ea769b8000@user/raghavgururajan) (Remote host closed the connection)
2024-08-28 15:00:18 +0200b0o(0e4a0bf4c9@2a03:6000:1812:100::1bf) (Remote host closed the connection)
2024-08-28 15:00:18 +0200fn_lumi(3d621153a5@2a03:6000:1812:100::df7) (Remote host closed the connection)
2024-08-28 15:00:18 +0200akspecs(00cc8321af@sourcehut/user/akspecs) (Remote host closed the connection)
2024-08-28 15:00:18 +0200lane(809450f172@2a03:6000:1812:100::1300) (Remote host closed the connection)
2024-08-28 15:00:18 +0200lukec(9dfd4d094e@2a03:6000:1812:100::10e) (Write error: Connection reset by peer)
2024-08-28 15:00:18 +0200titibandit(e33ffbab65@user/titibandit) (Remote host closed the connection)
2024-08-28 15:00:19 +0200pmk(6afe4476a1@2a03:6000:1812:100::26d) (Remote host closed the connection)
2024-08-28 15:00:19 +0200sm2n(ae95cb1267@user/sm2n) (Remote host closed the connection)
2024-08-28 15:00:19 +0200arcadewise(52968ed80d@2a03:6000:1812:100::3df) (Remote host closed the connection)
2024-08-28 15:00:20 +0200RussetParrotBear(45ce440a48@user/CommonParrotBear) (Remote host closed the connection)
2024-08-28 15:00:23 +0200JoelMcCracken(5ea8252fbb@2a03:6000:1812:100::10e3) (Remote host closed the connection)
2024-08-28 15:00:23 +0200duncan(c6181279e3@user/meow/duncan) (Remote host closed the connection)
2024-08-28 15:00:23 +0200probie(cc0b34050a@user/probie) (Remote host closed the connection)
2024-08-28 15:00:24 +0200rosco(~rosco@175.136.158.234)
2024-08-28 15:00:26 +0200samhh_(7569f027cf@2a03:6000:1812:100::e4) (Remote host closed the connection)
2024-08-28 15:00:26 +0200bsima1(9d7e39c8ad@2a03:6000:1812:100::dd) (Remote host closed the connection)
2024-08-28 15:00:26 +0200lucyy(228ee8f0ce@user/lucyy) (Remote host closed the connection)
2024-08-28 15:00:26 +0200smiesner(b0cf5acf8c@user/smiesner) (Remote host closed the connection)
2024-08-28 15:00:26 +0200ymherklotz(cb2c9cfbdd@2a03:6000:1812:100::29a) (Remote host closed the connection)
2024-08-28 15:00:26 +0200Ankhers(e99e97ef8e@2a03:6000:1812:100::2a2) (Remote host closed the connection)
2024-08-28 15:00:26 +0200ggb(a62ffbaf4f@2a03:6000:1812:100::3ac) (Read error: Connection reset by peer)
2024-08-28 15:00:26 +0200evanrelf(3addc196af@2a03:6000:1812:100::f0) (Remote host closed the connection)
2024-08-28 15:00:26 +0200kitaleth(23bd17ddc6@sourcehut/user/alethkit) (Remote host closed the connection)
2024-08-28 15:00:26 +0200filwisher(2e6936c793@2a03:6000:1812:100::170) (Remote host closed the connection)
2024-08-28 15:00:26 +0200henrytill(e0180937c3@2a03:6000:1812:100::e8c) (Remote host closed the connection)
2024-08-28 15:00:26 +0200fvr(ef3e56ca8b@2a03:6000:1812:100::3c4) (Remote host closed the connection)
2024-08-28 15:00:26 +0200shreyasminocha(51fdc93eda@user/shreyasminocha) (Remote host closed the connection)
2024-08-28 15:00:26 +0200jkoshy(99b9359beb@user/jkoshy) (Remote host closed the connection)
2024-08-28 15:00:26 +0200chaitlatte0(ea29c0bb16@user/chaitlatte0) (Remote host closed the connection)
2024-08-28 15:00:26 +0200bwolf(c3bc363dd1@2a03:6000:1812:100::180) (Remote host closed the connection)
2024-08-28 15:00:26 +0200eso(a0662dfd5e@2a03:6000:1812:100::1266) (Remote host closed the connection)
2024-08-28 15:00:26 +0200tok(da65c7b04b@user/tok) (Remote host closed the connection)
2024-08-28 15:00:26 +0200whereiseveryone(206ba86c98@2a03:6000:1812:100::2e4) (Write error: Broken pipe)
2024-08-28 15:00:26 +0200rselim(ce261f06ff@user/milesrout) (Remote host closed the connection)
2024-08-28 15:00:26 +0200cpli(77fc530071@2a03:6000:1812:100::252) (Remote host closed the connection)
2024-08-28 15:00:26 +0200sus(1b7af6299f@user/zeromomentum) (Remote host closed the connection)
2024-08-28 15:00:26 +0200fgaz_(1ff9197ed6@2a03:6000:1812:100::11ea) (Remote host closed the connection)
2024-08-28 15:00:26 +0200jakzale(6291399afa@user/jakzale) (Remote host closed the connection)
2024-08-28 15:00:26 +0200alexdarcy(63afa1753d@2a03:6000:1812:100::12da) (Remote host closed the connection)
2024-08-28 15:00:26 +0200aniketd(32aa4844cd@2a03:6000:1812:100::dcb) (Remote host closed the connection)
2024-08-28 15:00:26 +0200jmcantrell(644f1bed9a@user/jmcantrell) (Remote host closed the connection)
2024-08-28 15:00:27 +0200ursa-major(114efe6c39@2a03:6000:1812:100::11f3) (Remote host closed the connection)
2024-08-28 15:00:27 +0200samhh(7569f027cf@2a03:6000:1812:100::e4) (Remote host closed the connection)
2024-08-28 15:00:27 +0200jleightcap(7bc4014b62@user/jleightcap) (Remote host closed the connection)
2024-08-28 15:00:56 +0200youthlic(~Thunderbi@user/youthlic)
2024-08-28 15:01:08 +0200bsima1(9d7e39c8ad@2a03:6000:1812:100::dd)
2024-08-28 15:01:09 +0200lukec(9dfd4d094e@2a03:6000:1812:100::10e)
2024-08-28 15:01:09 +0200smiesner(b0cf5acf8c@2a03:6000:1812:100::13b9)
2024-08-28 15:01:10 +0200fgaz_(1ff9197ed6@2a03:6000:1812:100::11ea)
2024-08-28 15:01:10 +0200pmk(6afe4476a1@2a03:6000:1812:100::26d)
2024-08-28 15:01:10 +0200lane(809450f172@2a03:6000:1812:100::1300)
2024-08-28 15:01:10 +0200smiesner(b0cf5acf8c@2a03:6000:1812:100::13b9) (Changing host)
2024-08-28 15:01:10 +0200smiesner(b0cf5acf8c@user/smiesner)
2024-08-28 15:01:11 +0200ggb(a62ffbaf4f@2a03:6000:1812:100::3ac)
2024-08-28 15:01:11 +0200RussetParrotBear(45ce440a48@2a03:6000:1812:100::e2)
2024-08-28 15:01:11 +0200filwisher(2e6936c793@2a03:6000:1812:100::170)
2024-08-28 15:01:11 +0200eso(a0662dfd5e@2a03:6000:1812:100::1266)
2024-08-28 15:01:12 +0200jkoshy(99b9359beb@user/jkoshy)
2024-08-28 15:01:14 +0200fn_lumi(3d621153a5@2a03:6000:1812:100::df7)
2024-08-28 15:01:17 +0200evanrelf(3addc196af@2a03:6000:1812:100::f0)
2024-08-28 15:01:17 +0200tok(da65c7b04b@user/tok)
2024-08-28 15:01:17 +0200fvr(ef3e56ca8b@2a03:6000:1812:100::3c4)
2024-08-28 15:01:18 +0200sus(1b7af6299f@user/zeromomentum)
2024-08-28 15:01:18 +0200aniketd(32aa4844cd@2a03:6000:1812:100::dcb)
2024-08-28 15:01:19 +0200cpli(77fc530071@2a03:6000:1812:100::252)
2024-08-28 15:01:19 +0200kitaleth(23bd17ddc6@sourcehut/user/alethkit)
2024-08-28 15:01:20 +0200chaitlatte0(ea29c0bb16@user/chaitlatte0)
2024-08-28 15:01:22 +0200sm2n(ae95cb1267@user/sm2n)
2024-08-28 15:01:22 +0200rselim(ce261f06ff@user/milesrout)
2024-08-28 15:01:22 +0200alexdarcy(63afa1753d@2a03:6000:1812:100::12da)
2024-08-28 15:01:22 +0200samhh(7569f027cf@2a03:6000:1812:100::e4)
2024-08-28 15:01:22 +0200Ankhers(e99e97ef8e@2a03:6000:1812:100::2a2)
2024-08-28 15:01:23 +0200jleightcap(7bc4014b62@user/jleightcap)
2024-08-28 15:01:24 +0200henrytill(e0180937c3@2a03:6000:1812:100::e8c)
2024-08-28 15:01:25 +0200shreyasminocha(51fdc93eda@user/shreyasminocha)
2024-08-28 15:01:25 +0200ymherklotz(cb2c9cfbdd@2a03:6000:1812:100::29a)
2024-08-28 15:01:26 +0200whereiseveryone(206ba86c98@2a03:6000:1812:100::2e4)
2024-08-28 15:01:27 +0200jakzale(6291399afa@user/jakzale)
2024-08-28 15:01:27 +0200probie(cc0b34050a@user/probie)
2024-08-28 15:01:27 +0200lucyy(228ee8f0ce@user/lucyy)
2024-08-28 15:01:27 +0200bwolf(c3bc363dd1@2a03:6000:1812:100::180)
2024-08-28 15:01:27 +0200arcadewise(52968ed80d@2a03:6000:1812:100::3df)
2024-08-28 15:01:27 +0200jmcantrell(644f1bed9a@user/jmcantrell)
2024-08-28 15:01:27 +0200b0o(0e4a0bf4c9@2a03:6000:1812:100::1bf)
2024-08-28 15:01:27 +0200ursa-major(114efe6c39@2a03:6000:1812:100::11f3)
2024-08-28 15:01:28 +0200titibandit(e33ffbab65@user/titibandit)
2024-08-28 15:01:29 +0200duncan(c6181279e3@user/meow/duncan)
2024-08-28 15:01:29 +0200akspecs(00cc8321af@sourcehut/user/akspecs)
2024-08-28 15:01:29 +0200JoelMcCracken(5ea8252fbb@2a03:6000:1812:100::10e3)
2024-08-28 15:02:08 +0200 <ash3en> thanks for the advice. It feels that ghcup is rather stable and updates are not that often. + I would probably maintain the package myself
2024-08-28 15:02:15 +0200 <ash3en> at least in void
2024-08-28 15:02:36 +0200samhh_(7569f027cf@2a03:6000:1812:100::e4)
2024-08-28 15:03:42 +0200JuanDaugherty(~juan@user/JuanDaugherty)
2024-08-28 15:15:18 +0200xff0x(~xff0x@2405:6580:b080:900:453b:b80b:e0ca:2277) (Ping timeout: 246 seconds)
2024-08-28 15:15:22 +0200youthlic(~Thunderbi@user/youthlic) (Ping timeout: 265 seconds)
2024-08-28 15:16:11 +0200youthlic(~Thunderbi@user/youthlic)
2024-08-28 15:16:23 +0200xff0x(~xff0x@2405:6580:b080:900:4a8f:2c6:6e99:efb9)
2024-08-28 15:17:30 +0200comonad(~comonad@p200300d02705e800d14b563ba919432f.dip0.t-ipconnect.de)
2024-08-28 15:18:19 +0200 <ash3en> ah, I see there were already PR's but it seems they stall
2024-08-28 15:27:55 +0200JuanDaugherty(~juan@user/JuanDaugherty) (Quit: JuanDaugherty)
2024-08-28 15:27:56 +0200myxos(~myxos@syn-065-028-251-121.res.spectrum.com)
2024-08-28 15:37:11 +0200CrunchyFlakes(~CrunchyFl@ip-109-42-114-71.web.vodafone.de) (Read error: Connection reset by peer)
2024-08-28 15:39:29 +0200 <ash3en> ah and how about xmonad? seems less convenient if one wants to change their config and recompile
2024-08-28 15:40:27 +0200CrunchyFlakes(~CrunchyFl@ip-109-42-114-71.web.vodafone.de)
2024-08-28 15:42:37 +0200ash3en(~Thunderbi@2a01:c23:9513:f100:2722:ccdf:9653:5d23) (Remote host closed the connection)
2024-08-28 15:45:47 +0200ash3en(~Thunderbi@2a01:c23:9513:f100:2722:ccdf:9653:5d23)
2024-08-28 15:48:17 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-08-28 15:52:19 +0200athan_(~athan@syn-098-153-145-140.biz.spectrum.com) (Ping timeout: 264 seconds)
2024-08-28 15:52:35 +0200rosco(~rosco@175.136.158.234) (Quit: Lost terminal)
2024-08-28 15:53:32 +0200merijn(~merijn@77.242.116.146) (Ping timeout: 255 seconds)
2024-08-28 15:54:03 +0200CrunchyFlakes(~CrunchyFl@ip-109-42-114-71.web.vodafone.de) (Read error: Connection reset by peer)
2024-08-28 15:54:18 +0200 <haskellbridge> <thirdofmay18081814goya> what's the technical term describing the relationship between these two types? "[a] -> [a]" ; "[Int] -> [Int]"
2024-08-28 15:55:25 +0200 <haskellbridge> <thirdofmay18081814goya> and what's the technical term describing the relationship between "forall a. [a] -> [a]" and "[a0] -> [a0]"?
2024-08-28 15:56:34 +0200 <zero> > zip <*> tail $ "abcde"
2024-08-28 15:56:35 +0200 <lambdabot> [('a','b'),('b','c'),('c','d'),('d','e')]
2024-08-28 15:56:43 +0200 <zero> what if i want trigrams?
2024-08-28 15:57:32 +0200CrunchyFlakes(~CrunchyFl@ip-109-42-114-71.web.vodafone.de)
2024-08-28 15:57:49 +0200 <EvanR> thirdofmay18081814goya: you specialized a polymorphic type
2024-08-28 15:58:20 +0200 <EvanR> the second one is the same thing just you specialized to an unknown type variable instead of a concrete type
2024-08-28 15:58:41 +0200 <haskellbridge> <thirdofmay18081814goya> ah I see, thanks a lot!
2024-08-28 16:02:52 +0200 <probie> > zip3 <*> tail <*> tail.tail $ "abcde"
2024-08-28 16:02:53 +0200 <lambdabot> [('a','b','c'),('b','c','d'),('c','d','e')]
2024-08-28 16:04:47 +0200 <probie> > let ngrams n xs = take (length xs - n + 1) $ map (take n) $ tails xs in ngrams 3 "abcde"
2024-08-28 16:04:49 +0200 <lambdabot> ["abc","bcd","cde"]
2024-08-28 16:06:16 +0200 <byorgey> > let ngrams n xs = takeWhile ((==n).length) $ map (take n) $ tails xs in ngrams 3 "abcde" -- alternative requiring less fiddly math
2024-08-28 16:06:17 +0200 <lambdabot> ["abc","bcd","cde"]
2024-08-28 16:08:01 +0200ZharMeny(~user@185.248.130.75)
2024-08-28 16:09:44 +0200ZharMeny(~user@185.248.130.75) (Client Quit)
2024-08-28 16:14:11 +0200 <probie> byorgey: less fiddly maths, but that calls `length` on every element, which isn't cheap
2024-08-28 16:17:02 +0200ZharMeny(~user@185.248.130.75)
2024-08-28 16:17:04 +0200 <[exa]> thirdofmay18081814goya: in HM descriptions the removal of "forall" is sometimes called instantiation
2024-08-28 16:17:36 +0200 <haskellbridge> <thirdofmay18081814goya> [exa]: would we distinguish between instantiation and specialization?
2024-08-28 16:18:02 +0200 <[exa]> good question :D
2024-08-28 16:18:22 +0200ZharMeny(~user@185.248.130.75) (Client Quit)
2024-08-28 16:19:05 +0200 <[exa]> usually specialization is used when you replace variables by constants, instantiation is when you replace foralled-variables by fresh variables that belong into your context
2024-08-28 16:19:21 +0200 <[exa]> so for your examples the first would be more like specialization, and the secon more like instantiation
2024-08-28 16:19:37 +0200mreh(~matthew@host86-160-168-12.range86-160.btcentralplus.com)
2024-08-28 16:20:17 +0200 <[exa]> but many sources also clearly use the wording that e.g. "Int->Int" is an instance of "a->a" etc, w.r.t. to substitution instead of explicit forall
2024-08-28 16:20:46 +0200ZharMeny(~user@185.248.130.75)
2024-08-28 16:21:47 +0200ZharMeny(~user@185.248.130.75) (Changing host)
2024-08-28 16:21:47 +0200ZharMeny(~user@user/ZharMeny)
2024-08-28 16:21:48 +0200 <[exa]> I think there will be some authoritative source that draws a line between those but I don't know of any
2024-08-28 16:23:29 +0200 <haskellbridge> <thirdofmay18081814goya> i see thanks a lot!
2024-08-28 16:26:24 +0200 <EvanR> oh yeah, instantiate good call
2024-08-28 16:27:54 +0200 <haskellbridge> <thirdofmay18081814goya> when the compiler substitutes "a" for "a0", this is instantiation right?
2024-08-28 16:28:31 +0200ZharMeny(~user@user/ZharMeny) (Quit: ')
2024-08-28 16:28:38 +0200dolio(~dolio@130.44.140.168) (Ping timeout: 252 seconds)
2024-08-28 16:28:44 +0200 <[exa]> well, that's substitution. Substitution creates instances of formulas (which is a normal view in symbolic logic I'd say).
2024-08-28 16:29:05 +0200ZharMeny(~user@user/ZharMeny)
2024-08-28 16:29:34 +0200ZharMeny(~user@user/ZharMeny) (Client Quit)
2024-08-28 16:29:36 +0200 <[exa]> I always saw "instantiation" as more of an "active" operation that really kills at least one selected `forall` mark in the formula.
2024-08-28 16:30:00 +0200 <[exa]> opinions may vary though, never got educated in these things formally :)
2024-08-28 16:34:05 +0200 <haskellbridge> <thirdofmay18081814goya> hm i see ty
2024-08-28 16:34:32 +0200ZharMeny`(~ZharMeny@user/ZharMeny)
2024-08-28 16:34:41 +0200 <carbolymer> seems that list comprehensions don't work with OverloadedLists?
2024-08-28 16:36:20 +0200lol__jcarpenter2
2024-08-28 16:40:58 +0200dolio(~dolio@130.44.140.168)
2024-08-28 16:42:26 +0200rosco(~rosco@175.136.158.234)
2024-08-28 16:46:40 +0200ZharMeny`(~ZharMeny@user/ZharMeny) (Read error: Connection reset by peer)
2024-08-28 16:46:51 +0200ZharMeny(~ZharMeny@user/ZharMeny)
2024-08-28 16:52:03 +0200comonad(~comonad@p200300d02705e800d14b563ba919432f.dip0.t-ipconnect.de) (Ping timeout: 245 seconds)
2024-08-28 16:52:49 +0200mreh(~matthew@host86-160-168-12.range86-160.btcentralplus.com) (Ping timeout: 260 seconds)
2024-08-28 16:53:21 +0200 <[exa]> carbolymer: how come? (maybe MonadComprehensions would help there?)
2024-08-28 16:54:22 +0200comonad(~comonad@p54a0342e.dip0.t-ipconnect.de)
2024-08-28 16:54:32 +0200 <haskellbridge> <Bowuigi> thirdofmay18081814goya also the first one is the subtyping relation between types in a polymorphic lambda calculus
2024-08-28 16:55:38 +0200 <haskellbridge> <thirdofmay18081814goya> Bowuigi: noted ty!
2024-08-28 16:55:48 +0200 <haskellbridge> <Bowuigi> Typically A ≤ B meaning "A is less polymorphic than B" (the order might be wrong, I forgot lol)
2024-08-28 16:56:12 +0200 <haskellbridge> <Bowuigi> (≤ is also used for subtypes, of course)
2024-08-28 16:57:32 +0200 <carbolymer> [exa]: not much, not everything is a monad. An example: https://play.haskell.org/saved/aLA3CMPP
2024-08-28 16:57:46 +0200 <haskellbridge> <thirdofmay18081814goya> hm, enabling explicit foralls should make them appear in "couldn't match type" errors right?
2024-08-28 16:58:12 +0200cfricke(~cfricke@user/cfricke) (Quit: WeeChat 4.2.2)
2024-08-28 16:59:11 +0200 <constxd> bros
2024-08-28 16:59:18 +0200 <[exa]> carbolymer: yeah the question there is how would you join sets if you'd do something like [a+b | a<-[1,2,3], b<-[2,3,4]] :: S.Set int
2024-08-28 16:59:43 +0200 <constxd> what the heck is loop supposed to be used for (from Arrow)
2024-08-28 16:59:59 +0200 <[exa]> carbolymer: afaik all sane methods basically reduce down to doing it with lists again
2024-08-28 17:00:48 +0200 <carbolymer> [exa]: https://play.haskell.org/saved/OjLIgIg8 isn't that just boils down to removing explicit `fromList` ?
2024-08-28 17:01:08 +0200 <carbolymer> [exa]: without `fromList` it doesn't work
2024-08-28 17:06:24 +0200 <[exa]> hm yeah I see, one would expect the `IsList` to trigger there automatically
2024-08-28 17:06:40 +0200 <carbolymer> exactly
2024-08-28 17:09:00 +0200comonad(~comonad@p54a0342e.dip0.t-ipconnect.de) (Ping timeout: 276 seconds)
2024-08-28 17:09:52 +0200 <[exa]> carbolymer: ok seems like you might as well be the first one ever to try this
2024-08-28 17:09:58 +0200 <carbolymer> lol
2024-08-28 17:12:07 +0200 <[exa]> constxd: from the (->) instance it seems like it lets the arrow to generate a side value (potentially infinite I'd say) and eat it at the same time
2024-08-28 17:12:15 +0200 <[exa]> I feel tempted to write fibs this way
2024-08-28 17:14:25 +0200yvan-sraka(uid419690@id-419690.lymington.irccloud.com) (Quit: Connection closed for inactivity)
2024-08-28 17:14:37 +0200 <[exa]> constxd: ok let's see
2024-08-28 17:14:44 +0200 <[exa]> % loop f b = let (c,d) = f (b,d) in c
2024-08-28 17:14:44 +0200 <yahb2> <no output>
2024-08-28 17:15:15 +0200 <[exa]> % take 8 $ flip loop () $ \((), fibs) -> (fibs, 0:1:zipWith (+) fibs (tail fibs))
2024-08-28 17:15:15 +0200 <yahb2> [0,1,1,2,3,5,8,13]
2024-08-28 17:16:02 +0200 <dminuoso> constxd: (b, d) :=> (c, d) -> b :=> c
2024-08-28 17:16:41 +0200 <dminuoso> Sometimes its easier to visualize arrow (and other related types) if you imagine the type variable to be like `:=>` or maybe written in infix notation (b, d) `a` (c, d) -> b `a` c
2024-08-28 17:17:25 +0200 <[exa]> carbolymer: tbh might be time to ask in #ghc, the "fix" seems easy unless it breaks something else very horrendously
2024-08-28 17:17:55 +0200 <carbolymer> [exa]: thx
2024-08-28 17:17:58 +0200 <dminuoso> constxd: Further note the internal haddock comment https://hackage.haskell.org/package/ghc-internal-9.1001.0/docs/src/GHC.Internal.Control.Arrow.html…
2024-08-28 17:17:58 +0200 <carbolymer> just did
2024-08-28 17:18:12 +0200 <[exa]> good luck :)
2024-08-28 17:20:07 +0200 <[exa]> dminuoso: kinda has prolog vibes with the `d` getting unified, like having `func(In1,In2,Out1,Out2)` and twisting it around with `func(B,D,C,D)`
2024-08-28 17:20:43 +0200 <[exa]> (kanren people rejoice)
2024-08-28 17:21:21 +0200 <dminuoso> The Kleisli instance feels a bit more interesting.
2024-08-28 17:24:37 +0200 <[exa]> uses of that are kinda beyond my imagination tho
2024-08-28 17:24:48 +0200comonad(~comonad@p54a0342e.dip0.t-ipconnect.de)
2024-08-28 17:31:38 +0200ash3en(~Thunderbi@2a01:c23:9513:f100:2722:ccdf:9653:5d23) (Quit: ash3en)
2024-08-28 17:31:48 +0200comonad(~comonad@p54a0342e.dip0.t-ipconnect.de) (Ping timeout: 246 seconds)
2024-08-28 17:33:04 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-08-28 17:35:51 +0200L29Ah(~L29Ah@wikipedia/L29Ah) ()
2024-08-28 17:38:01 +0200comonad(~comonad@p54a0342e.dip0.t-ipconnect.de)
2024-08-28 17:43:53 +0200alexherbo2(~alexherbo@2a02-8440-321d-f69f-8812-29e0-6ff8-c8ac.rev.sfr.net)
2024-08-28 17:45:20 +0200aljazmc(~aljazmc@user/aljazmc)
2024-08-28 17:47:16 +0200a_s_(~a_s_@host-79-17-226-217.retail.telecomitalia.it)
2024-08-28 17:52:06 +0200justsomeguy(~justsomeg@user/justsomeguy) (Ping timeout: 246 seconds)
2024-08-28 17:53:05 +0200aljazmc(~aljazmc@user/aljazmc) (Remote host closed the connection)
2024-08-28 17:55:44 +0200L29Ah(~L29Ah@wikipedia/L29Ah)
2024-08-28 17:56:12 +0200rosco(~rosco@175.136.158.234) (Quit: Lost terminal)
2024-08-28 17:57:47 +0200econo_(uid147250@id-147250.tinside.irccloud.com)
2024-08-28 17:59:53 +0200a_s_(~a_s_@host-79-17-226-217.retail.telecomitalia.it) (Ping timeout: 256 seconds)
2024-08-28 18:00:23 +0200a_s_(~a_s_@host-79-17-226-217.retail.telecomitalia.it)
2024-08-28 18:05:21 +0200 <EvanR> constxd, when modeling circuits with arrows, loop creates a loop back circuit. Without that you only have combinational logic
2024-08-28 18:05:41 +0200 <EvanR> what is means in other applications of arrow depends
2024-08-28 18:11:47 +0200a_s_(~a_s_@host-79-17-226-217.retail.telecomitalia.it) (Ping timeout: 256 seconds)
2024-08-28 18:12:30 +0200 <haskellbridge> <thirdofmay18081814goya> is there a hindley-milner type interpreter somewhere? define types and type variables and get resulting inference
2024-08-28 18:12:38 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-08-28 18:14:44 +0200youthlic(~Thunderbi@user/youthlic) (Quit: youthlic)
2024-08-28 18:15:29 +0200 <byorgey> thirdofmay18081814goya: https://hackage.haskell.org/package/hindley-milner-type-check ?
2024-08-28 18:16:29 +0200mreh(~matthew@host86-160-168-12.range86-160.btcentralplus.com)
2024-08-28 18:19:32 +0200 <haskellbridge> <thirdofmay18081814goya> byorgey: neat! thanks
2024-08-28 18:24:41 +0200CrunchyFlakes(~CrunchyFl@ip-109-42-114-71.web.vodafone.de) (Read error: Connection reset by peer)
2024-08-28 18:27:20 +0200tzh(~tzh@c-76-115-131-146.hsd1.or.comcast.net)
2024-08-28 18:27:57 +0200CrunchyFlakes(~CrunchyFl@ip-109-42-114-71.web.vodafone.de)
2024-08-28 18:33:13 +0200aljazmc(~aljazmc@user/aljazmc)
2024-08-28 18:33:34 +0200comonad(~comonad@p54a0342e.dip0.t-ipconnect.de) (Ping timeout: 272 seconds)
2024-08-28 18:33:51 +0200comonad(~comonad@p200300d02705e800d14b563ba919432f.dip0.t-ipconnect.de)
2024-08-28 18:50:37 +0200 <dminuoso> EvanR: I guess `loop` is sort of like half-a-fix.
2024-08-28 18:51:50 +0200 <dminuoso> An inverse of `second`
2024-08-28 18:54:44 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-08-28 18:59:39 +0200 <byorgey> https://wiki.haskell.org/Yampa#Primitive_signal_functions
2024-08-28 19:02:47 +0200pavonia(~user@user/siracusa) (Quit: Bye!)
2024-08-28 19:04:31 +0200manwithluck(manwithluc@gateway/vpn/protonvpn/manwithluck)
2024-08-28 19:05:59 +0200haskellbridge(~hackager@syn-024-093-192-219.res.spectrum.com) (Remote host closed the connection)
2024-08-28 19:06:58 +0200haskellbridge(~hackager@syn-024-093-192-219.res.spectrum.com)
2024-08-28 19:06:58 +0200ChanServ+v haskellbridge
2024-08-28 19:07:18 +0200 <haskellbridge> <thirdofmay18081814goya> myFunc2 val [x] = if x /= val then [x] else []
2024-08-28 19:07:18 +0200 <haskellbridge> ... long message truncated: https://kf8nh.com/_matrix/media/v3/download/kf8nh.com/HymUlGZdDMNxLouQHiwMJkfu (3 lines)
2024-08-28 19:07:46 +0200 <geekosaur> the start of that might have been lost, I was restarting docker for an update
2024-08-28 19:09:57 +0200 <geekosaur> (actually you're fine, matrix-side gets held and sent when the bot returns, it's irc that gets dropped but there wasn't any activity)
2024-08-28 19:10:23 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-08-28 19:13:08 +0200athan_(~athan@syn-098-153-145-140.biz.spectrum.com)
2024-08-28 19:13:27 +0200Fooo(~Square@user/square)
2024-08-28 19:14:00 +0200 <EvanR> the internet duct tape held
2024-08-28 19:16:09 +0200 <monochrom> combinational logic : feedback circuit :: pure function : mutable state :)
2024-08-28 19:16:11 +0200Square2(~Square4@user/square) (Ping timeout: 252 seconds)
2024-08-28 19:16:52 +0200 <[exa]> thirdofmay18081814goya byorgey: oh wow a nice package. Other than that, highly recommend to just smash one together in prolog, it's a 30 minute exercise with lots of edu value
2024-08-28 19:17:58 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com)
2024-08-28 19:19:10 +0200raehik(~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net)
2024-08-28 19:20:13 +0200 <monochrom> in which 29 minutes are spent on just emulating haskell ADT by prolog function symbols. >:)
2024-08-28 19:21:00 +0200hc(~hc@mail.hce.li) (Remote host closed the connection)
2024-08-28 19:21:01 +0200EvanR(~EvanR@user/evanr) (Quit: Leaving)
2024-08-28 19:24:28 +0200Smiles(uid551636@id-551636.lymington.irccloud.com) (Quit: Connection closed for inactivity)
2024-08-28 19:25:28 +0200spew(~spew@2806:2a0:1522:8662::cebf)
2024-08-28 19:25:56 +0200EvanR(~EvanR@user/evanr)
2024-08-28 19:26:15 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 246 seconds)
2024-08-28 19:35:46 +0200ft(~ft@p4fc2a393.dip0.t-ipconnect.de)
2024-08-28 19:37:29 +0200alexdarcy(63afa1753d@2a03:6000:1812:100::12da) ()
2024-08-28 19:41:43 +0200 <[exa]> monochrom: educative on all fronts!
2024-08-28 19:48:30 +0200a_s_(~a_s_@host-79-17-226-217.retail.telecomitalia.it)
2024-08-28 19:48:38 +0200alexherbo2(~alexherbo@2a02-8440-321d-f69f-8812-29e0-6ff8-c8ac.rev.sfr.net) (Remote host closed the connection)
2024-08-28 20:02:27 +0200zeroyin
2024-08-28 20:08:02 +0200itaipu(~itaipu@168.121.98.169)
2024-08-28 20:09:13 +0200 <haskellbridge> <thirdofmay18081814goya> hm
2024-08-28 20:09:18 +0200 <haskellbridge> <thirdofmay18081814goya> how do I evaluate types with https://hackage.haskell.org/package/compare-type-0.1.1/docs/Type-Compare.html?
2024-08-28 20:10:44 +0200a_s_(~a_s_@host-79-17-226-217.retail.telecomitalia.it) (Quit: Client closed)
2024-08-28 20:19:15 +0200machinedgod(~machinedg@d50-99-47-73.abhsia.telus.net)
2024-08-28 20:23:18 +0200raehik(~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) (Ping timeout: 246 seconds)
2024-08-28 20:25:54 +0200 <tomsmeding> what do you mean with "evaluate"?
2024-08-28 20:26:07 +0200neuroevolutus(~neuroevol@37.19.200.161)
2024-08-28 20:27:51 +0200 <haskellbridge> <thirdofmay18081814goya> tomsmeding: how do I get "Compare LT LT" to produce "EQ"?
2024-08-28 20:28:28 +0200 <tomsmeding> is _is_ the same, i.e. if you write `Compare LT LT` in a Haskell file, then that will be the same as if you'd written `EQ` there
2024-08-28 20:28:36 +0200 <tomsmeding> but if you want to "see it happen": try `:k! Compare LT LT` in ghci
2024-08-28 20:29:18 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-08-28 20:30:24 +0200 <haskellbridge> <thirdofmay18081814goya> tomsmeding: ah! that's it, thanks!
2024-08-28 20:31:07 +0200 <haskellbridge> <thirdofmay18081814goya> tomsmeding: what exactly is the difference between ":k" and ":k!"? I see it clearly, but what is it doing?
2024-08-28 20:31:55 +0200 <tomsmeding> https://downloads.haskell.org/ghc/latest/docs/users_guide/ghci.html#ghci-cmd-:kind
2024-08-28 20:32:19 +0200 <tomsmeding> there have been ghc versions where the ! didn't do anything; that regressed at some point and got fixed later again
2024-08-28 20:32:24 +0200 <tomsmeding> I believe that was before 9.0
2024-08-28 20:34:36 +0200 <haskellbridge> <thirdofmay18081814goya> tomsmeding: thanks a lot! had googled variations of "ghci commands"and never found this, or found results without"!` explanation
2024-08-28 20:34:43 +0200 <haskellbridge> <thirdofmay18081814goya> * commands" and never found this, or found results without"!\"
2024-08-28 20:34:52 +0200 <haskellbridge> <thirdofmay18081814goya> * without"!"
2024-08-28 20:34:53 +0200 <tomsmeding> hint: bookmark the GHC user guide, there's lots of good info in there :)
2024-08-28 20:35:04 +0200 <haskellbridge> <thirdofmay18081814goya> will do
2024-08-28 20:35:09 +0200 <tomsmeding> in particular I've also bookmarked this page specifically https://downloads.haskell.org/ghc/latest/docs/users_guide/exts/table.html
2024-08-28 20:35:27 +0200Tuplanolla(~Tuplanoll@91-159-69-59.elisa-laajakaista.fi)
2024-08-28 20:37:52 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-08-28 20:39:41 +0200neuroevolutus(~neuroevol@37.19.200.161) (Ping timeout: 256 seconds)
2024-08-28 20:43:49 +0200raehik(~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net)
2024-08-28 20:47:43 +0200neuroevolutus(~neuroevol@37.19.200.161)
2024-08-28 20:54:10 +0200athan_(~athan@syn-098-153-145-140.biz.spectrum.com) (Ping timeout: 272 seconds)
2024-08-28 21:03:59 +0200sourcetarius(~sourcetar@user/sourcetarius) (Quit: sourcetarius)
2024-08-28 21:04:21 +0200 <monochrom> I just use /usr/local/ghcup/ghc/9.4.8/share/doc/ghc-9.4.8/html/users_guide/index.html
2024-08-28 21:04:40 +0200 <monochrom> (I told ghcup to put itself in /usr/local instead of $HOME)
2024-08-28 21:06:47 +0200L29Ah(~L29Ah@wikipedia/L29Ah) ()
2024-08-28 21:17:22 +0200 <haskellbridge> <Bowuigi> [exa] re:prolog I definitely recommend trying to model every type system you care about in a logic lang (Prolog, miniKanren or anything similar), not just HM. I was actually doing a tool for this (using natural deduction syntax like in papers) but I got stuck in the "interpret pure prolog-like rules but with complete search and some constraints" part. An idea was to try to adapt miniKanren with interleaving search...
2024-08-28 21:17:28 +0200 <haskellbridge> ... and constraints into a static setting, but no idea how to do that
2024-08-28 21:18:12 +0200 <haskellbridge> <Bowuigi> The other hard part was mixfix parsing, but I got a decent grammar distilled from the "Parsing mixfix expressions" paper. Fun stuff
2024-08-28 21:18:27 +0200 <[exa]> mixfix is fun
2024-08-28 21:19:32 +0200 <[exa]> I'm normally just parsing lists of whatever properly parenthesized first, and then run a shunting-yardish algorithm over that to actually resolve operators
2024-08-28 21:20:43 +0200 <haskellbridge> <Bowuigi> Parsing it without bactracking dozens of times is a challenge, that's why I modified the algo in the paper to my preffered syntax conventions
2024-08-28 21:21:54 +0200 <haskellbridge> <Bowuigi> I could drop all that into megaparsec and have a natural deduction (with actually natural syntax) parser, but I still can't do the "cooler prolog" part
2024-08-28 21:24:05 +0200ZharMeny(~ZharMeny@user/ZharMeny) (Quit: have you tried logging out and back in?)
2024-08-28 21:24:15 +0200 <haskellbridge> <Bowuigi> Unlike with prolog, miniKanren has straightforward and easily accesible algorithms for search and constraints. Most of what I could find on prolog was either too vague or unrelated to the implementation. So now I want to know how to those miniKanren algos statically
2024-08-28 21:26:18 +0200 <[exa]> yeah I want to learn enough kanren once to do something like so
2024-08-28 21:26:57 +0200 <[exa]> in prolog all the constrainty libraries are quite macro-heavy
2024-08-28 21:28:54 +0200 <[exa]> (macros as in term_expansion/2)
2024-08-28 21:33:10 +0200 <monochrom> I should learn miniKaren too. Prolog is becoming archaic and feeling like poorly designed.
2024-08-28 21:34:23 +0200 <haskellbridge> <thirdofmay18081814goya> ghc will throw an ambiguous variable error iff ":k! expression" has no normal form right?
2024-08-28 21:34:46 +0200 <haskellbridge> <thirdofmay18081814goya> * implies
2024-08-28 21:35:10 +0200 <haskellbridge> <thirdofmay18081814goya> uh i mean
2024-08-28 21:35:32 +0200 <haskellbridge> <thirdofmay18081814goya> if ghc throws an ambiguous variable error then will follow that ":k! expression" has no normal form right?
2024-08-28 21:36:08 +0200 <haskellbridge> <thirdofmay18081814goya> uh, "then it follows that ":k! expression" has not been resolved to a normal form..?
2024-08-28 21:36:21 +0200 <haskellbridge> <thirdofmay18081814goya> what am I even saying
2024-08-28 21:37:37 +0200rvalue(~rvalue@user/rvalue) (Read error: Connection reset by peer)
2024-08-28 21:38:01 +0200L29Ah(~L29Ah@wikipedia/L29Ah)
2024-08-28 21:38:10 +0200rvalue(~rvalue@user/rvalue)
2024-08-28 21:38:13 +0200 <haskellbridge> <thirdofmay18081814goya> : with respect to the annotation rules of the haskell type system, what rule produces the ambiguous type error?
2024-08-28 21:39:52 +0200 <haskellbridge> <Bowuigi> AFAIK when no rule allows GHC to instance a type variable when trying to evaluate an expression
2024-08-28 21:40:08 +0200 <haskellbridge> <Bowuigi> So it isn't a rule what triggers this, but rather the lack of them
2024-08-28 21:40:57 +0200 <haskellbridge> <Bowuigi> No wait that was when solving constraints
2024-08-28 21:41:11 +0200 <haskellbridge> <Bowuigi> It still about type variables though
2024-08-28 21:41:57 +0200ZharMeny(~ZharMeny@user/ZharMeny)
2024-08-28 21:41:59 +0200 <geekosaur> I think you were right the first time. Constraints come into it as the primary means of instancing otherwise-unknown type variables
2024-08-28 21:42:07 +0200 <geekosaur> aiui
2024-08-28 21:44:12 +0200waleee(~waleee@h-176-10-144-38.NA.cust.bahnhof.se)
2024-08-28 21:44:21 +0200 <haskellbridge> <Bowuigi> Why does "Nothing :: Maybe a" not toggle it but "empty :: Collection ce e -> ce" does (assuming Collection is a type class without fundeps representing, well, collections)?
2024-08-28 21:45:02 +0200 <haskellbridge> <Bowuigi> Is it because it can't know what to execute until "e" is instanced?
2024-08-28 21:45:34 +0200 <geekosaur> I think so
2024-08-28 21:46:18 +0200 <haskellbridge> <Bowuigi> So the ambiguous variable error in kinds has a similar origin
2024-08-28 21:46:29 +0200 <monochrom> Monomorphism restriction disallows "var = expr" to have a type-class-polymorphic type.
2024-08-28 21:46:30 +0200 <geekosaur> also, under what circumstances? I think ghci has extended typing rules that allow Nothing and [] to be typed, but won't work for something like Collection?
2024-08-28 21:46:55 +0200 <haskellbridge> <Bowuigi> The trick here is probably defaulting
2024-08-28 21:47:29 +0200 <haskellbridge> <Bowuigi> Specially if there isn't an instance for "Collection [something] ()"
2024-08-28 21:47:46 +0200 <geekosaur> (ExtendedDefaultRules, which you can turn on for compiled programs but is disrecommended there)
2024-08-28 21:48:50 +0200target_i(~target_i@user/target-i/x-6023099)
2024-08-28 21:49:18 +0200 <haskellbridge> <Bowuigi> If normal form evaluation doesn't halt at the type level in any language you either get a "max recursion depth exceeded" (like with type classes) or compilation never fails to terminate. Not sure which one does GHC but it likely is one of those
2024-08-28 21:58:51 +0200 <[exa]> thirdofmay18081814goya: iirc ambiguity errors were normally triggered when a forall binds an unused variable, e.g. `show . read :: (Read a, Show a) => String -> String`. (Normally that would get defaulted to ().)
2024-08-28 22:00:41 +0200 <[exa]> (in your previous examples, `Nothing :: forall a. Maybe a` is perfectly okay, but the other thing lacks the knowledge of `e`
2024-08-28 22:01:16 +0200aljazmc(~aljazmc@user/aljazmc) (Remote host closed the connection)
2024-08-28 22:01:47 +0200aljazmc(~aljazmc@user/aljazmc)
2024-08-28 22:06:02 +0200ash3en(~Thunderbi@2a01:c23:9513:f100:2722:ccdf:9653:5d23)
2024-08-28 22:10:05 +0200ash3en(~Thunderbi@2a01:c23:9513:f100:2722:ccdf:9653:5d23) (Client Quit)
2024-08-28 22:10:18 +0200ZharMeny(~ZharMeny@user/ZharMeny) (Read error: Connection reset by peer)
2024-08-28 22:10:37 +0200ZharMeny(~ZharMeny@user/ZharMeny)
2024-08-28 22:13:27 +0200 <tomsmeding> Bowugi: thirdofmay: type class constraints can result in ambiguity errors because a type class constraint is an _implicit argument_: if you have a function `foo :: Collection ce e => ce`, then that `Collection ce e` part is an _argument_ of foo
2024-08-28 22:13:47 +0200 <tomsmeding> but it's not an argument that you supply: GHC infers what the argument should be, and supplies it for you
2024-08-28 22:13:57 +0200 <tomsmeding> but that means that GHC must be able to figure out what it should pass!
2024-08-28 22:15:18 +0200 <tomsmeding> and that means that the type variables must be instantiated _enough_ that precisely one instance matches; when that is so, GHC knows it should take that instance dictionary (a record containing the definitions of the class methods in that instance) and pass it for you
2024-08-28 22:16:40 +0200 <tomsmeding> well, either that, or there must be some other place for GHC to get that implicit argument from; if that `foo` was called inside some other function (say `bar`) that itself has a constraint, then GHC can use the implicit argument of `bar` to pass as the implicit argument to `foo`
2024-08-28 22:16:52 +0200 <tomsmeding> this is a very operational way of seeing things, but I find it helpful
2024-08-28 22:17:38 +0200 <EvanR> this story makes typeclass constraints sound like implicit parameters
2024-08-28 22:17:58 +0200 <EvanR> meanwhile there's another feature which is literally called implicit parameters, and I'm wondering what the difference is
2024-08-28 22:18:17 +0200 <[exa]> EvanR: wasn't there a library that actually implemented this
2024-08-28 22:18:25 +0200 <[exa]> I'd say acme-something
2024-08-28 22:18:58 +0200 <geekosaur> EvanR, not much aiui
2024-08-28 22:19:11 +0200 <geekosaur> they even use constraint syntax
2024-08-28 22:19:45 +0200Natch(~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se) (Read error: Connection reset by peer)
2024-08-28 22:20:10 +0200Natch(~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se)
2024-08-28 22:22:35 +0200 <tomsmeding> EvanR: -XImplicitParams implicit parameters you can override manually
2024-08-28 22:22:39 +0200 <dmj`> Bowuigi: are you working on implementing LSS in Haskell
2024-08-28 22:22:45 +0200 <tomsmeding> you can't provide a local overriding instance
2024-08-28 22:22:55 +0200 <tomsmeding> (well, you can with `withDict`, but that's black magic)
2024-08-28 22:23:14 +0200 <tomsmeding> hence, conversely, type classes give you confluence whereas implicit parameters don't
2024-08-28 22:23:52 +0200 <haskellbridge> <Bowuigi> dmj` not yet, I have to actually make a lang before that lol
2024-08-28 22:24:09 +0200 <dmj`> Bowuigi: you can start bottom up, why not
2024-08-28 22:25:16 +0200 <haskellbridge> <Bowuigi> Because I want the lang itself rather than the optimization
2024-08-28 22:25:51 +0200 <dmj`> well you'll need both eventually, plus the elaboration will take 100% of the time
2024-08-28 22:26:27 +0200 <haskellbridge> <Bowuigi> Roc implements both LSS and Perceus if you want to see it in action ASAP. Not Haskell but close enough
2024-08-28 22:26:54 +0200 <haskellbridge> <Bowuigi> Koka and Lean both implement Perceus but not LSS. Morphic implements both
2024-08-28 22:27:17 +0200 <dmj`> Bowuigi: I think Roc wants to use it, but doesn't, https://github.com/roc-lang/roc/issues/5969
2024-08-28 22:27:27 +0200 <haskellbridge> <thirdofmay18081814goya> thanks a lot for all the comments! very helpful stuff
2024-08-28 22:27:40 +0200 <dmj`> I don't think those languages have package managers either
2024-08-28 22:27:50 +0200 <dmj`> maybe Lean does
2024-08-28 22:28:15 +0200arahael(~arahael@user/arahael) (Ping timeout: 252 seconds)
2024-08-28 22:29:28 +0200 <haskellbridge> <Bowuigi> dmj` Roc doesn't have it at the type level, but it is present at the value level (it's on the main page as well)
2024-08-28 22:32:40 +0200alioguzhan(~Thunderbi@78.173.89.238)
2024-08-28 22:32:45 +0200 <dmj`> hmm, unless you're accumulating the lambda sets as part of the type system, I don't think you have it
2024-08-28 22:33:53 +0200 <haskellbridge> <Bowuigi> Also Lean has lake (a package manager) IIRC
2024-08-28 22:34:31 +0200michalz(~michalz@185.246.207.215) (Remote host closed the connection)
2024-08-28 22:35:51 +0200alexherbo2(~alexherbo@2a02-8440-3213-485a-19d1-8cee-281e-732c.rev.sfr.net)
2024-08-28 22:38:02 +0200 <dmj`> Bowuigi: does Lean allow for cyclic data structures? I think this ref. counting technique requires the heap to be a DAG. Or something fancy is going on
2024-08-28 22:39:15 +0200neuroevolutus(~neuroevol@37.19.200.161) (Ping timeout: 256 seconds)
2024-08-28 22:40:22 +0200CrunchyFlakes(~CrunchyFl@ip-109-42-114-71.web.vodafone.de) (Read error: Connection reset by peer)
2024-08-28 22:41:37 +0200sroso(~sroso@user/SrOso)
2024-08-28 22:47:12 +0200madjestic(~madjestic@103-135-99-95.ftth.glasoperator.nl)
2024-08-28 22:55:16 +0200pavonia(~user@user/siracusa)
2024-08-28 22:58:55 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-08-28 23:05:19 +0200FoooSquare
2024-08-28 23:05:53 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com)
2024-08-28 23:08:21 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-08-28 23:10:24 +0200dysthesis(~dysthesis@user/dysthesis)
2024-08-28 23:12:21 +0200oo_miguel(~Thunderbi@78.10.207.45) (Ping timeout: 276 seconds)
2024-08-28 23:12:58 +0200 <haskellbridge> <thirdofmay18081814goya> do people use something else than a small anonymous function for this? "(\x f -> f x) val lambdaCaseExpression"?
2024-08-28 23:13:15 +0200 <tomsmeding> :t (&)
2024-08-28 23:13:16 +0200 <lambdabot> a -> (a -> b) -> b
2024-08-28 23:13:20 +0200 <tomsmeding> (Data.Function)
2024-08-28 23:13:51 +0200 <tomsmeding> but I tend to just 'case val of' ;)
2024-08-28 23:17:06 +0200 <haskellbridge> <thirdofmay18081814goya> neato ty!
2024-08-28 23:17:16 +0200alexherbo2(~alexherbo@2a02-8440-3213-485a-19d1-8cee-281e-732c.rev.sfr.net) (Remote host closed the connection)
2024-08-28 23:17:21 +0200 <haskellbridge> <thirdofmay18081814goya> tomsmeding: might have multiple arguments hehe
2024-08-28 23:17:31 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 23:17:48 +0200 <mauke> :t flip id
2024-08-28 23:17:49 +0200 <lambdabot> b -> (b -> c) -> c
2024-08-28 23:18:05 +0200 <tomsmeding> ($) = id
2024-08-28 23:18:39 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 246 seconds)
2024-08-28 23:19:08 +0200target_i(~target_i@user/target-i/x-6023099) (Quit: leaving)
2024-08-28 23:19:11 +0200 <mauke> :t [id, ($), ask, asks]
2024-08-28 23:19:12 +0200 <lambdabot> [(a -> b) -> a -> b]
2024-08-28 23:21:48 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-08-28 23:22:43 +0200 <tomsmeding> :t ask `fmap` id
2024-08-28 23:22:44 +0200 <lambdabot> b -> b
2024-08-28 23:23:07 +0200troydm(~troydm@user/troydm)
2024-08-28 23:26:42 +0200mrmr155334346318(~mrmr@user/mrmr) (Quit: Ping timeout (120 seconds))
2024-08-28 23:27:04 +0200mrmr155334346318(~mrmr@user/mrmr)
2024-08-28 23:27:33 +0200sp1ff`(~user@c-73-11-70-111.hsd1.wa.comcast.net)
2024-08-28 23:32:31 +0200AlexZenon(~alzenon@178.34.150.250) (Ping timeout: 264 seconds)
2024-08-28 23:32:53 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 23:33:05 +0200machinedgod(~machinedg@d50-99-47-73.abhsia.telus.net) (Ping timeout: 248 seconds)
2024-08-28 23:37:34 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 272 seconds)
2024-08-28 23:38:34 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-08-28 23:40:39 +0200AlexZenon(~alzenon@178.34.150.250)
2024-08-28 23:48:18 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-08-28 23:52:53 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds)
2024-08-28 23:54:09 +0200waleee(~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 260 seconds)
2024-08-28 23:56:01 +0200waleee(~waleee@h-176-10-144-38.NA.cust.bahnhof.se)
2024-08-28 23:56:50 +0200ec(~ec@gateway/tor-sasl/ec) (Remote host closed the connection)
2024-08-28 23:57:30 +0200ec(~ec@gateway/tor-sasl/ec)