Home liberachat/#haskell: Logs Calendar

Logs on 2022-06-17 (liberachat/#haskell)

00:05:49 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
00:08:17 gurkenglas joins (~gurkengla@dslb-084-057-085-111.084.057.pools.vodafone-ip.de)
00:11:45 × ec quits (~ec@gateway/tor-sasl/ec) (Quit: ec)
00:13:37 × bontaq quits (~user@ool-45779fe5.dyn.optonline.net) (Ping timeout: 260 seconds)
00:15:59 <Axman6> @pl (\l a b -> a:l b (a+b))
00:15:59 <lambdabot> liftM2 (.) (:) . (. (+)) . ap
00:19:34 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
00:23:43 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
00:24:08 × vicfred quits (~vicfred@user/vicfred) (Quit: Leaving)
00:28:34 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
00:34:24 × Topsi quits (~Topsi@dyndsl-095-033-088-230.ewe-ip-backbone.de) (Read error: Connection reset by peer)
00:34:41 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
00:39:23 × Alleria quits (~AllahuAkb@DN2lk43bh.stanford.edu) (Quit: My MacBook has gone to sleep. ZZZzzz…)
00:40:10 gnyeki_ is now known as gnyeki
00:42:34 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
00:48:37 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
00:49:47 × notzmv quits (~zmv@user/notzmv) (Ping timeout: 260 seconds)
00:54:38 jargon joins (~jargon@184.101.186.108)
00:57:10 × werneta quits (~werneta@137.79.230.15) (Ping timeout: 240 seconds)
00:59:16 werneta joins (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
01:07:31 Alleria joins (~AllahuAkb@68.65.161.35)
01:08:25 littlebo1eep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
01:08:30 × werneta quits (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 240 seconds)
01:08:46 werneta joins (~werneta@137.79.224.184)
01:09:04 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
01:11:47 × albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
01:16:34 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Ping timeout: 240 seconds)
01:17:54 albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8)
01:17:55 ChaiTRex joins (~ChaiTRex@user/chaitrex)
01:18:04 × littlebo1eep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
01:20:03 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:1834:2996:45d4:5368) (Remote host closed the connection)
01:22:31 notzmv joins (~zmv@user/notzmv)
01:24:12 × waleee quits (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 260 seconds)
01:25:49 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:1834:2996:45d4:5368)
01:37:15 × Unicorn_Princess quits (~Unicorn_P@93-103-228-248.dynamic.t-2.net) (Quit: Leaving)
01:38:25 × gurkenglas quits (~gurkengla@dslb-084-057-085-111.084.057.pools.vodafone-ip.de) (Ping timeout: 246 seconds)
01:40:42 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
01:42:26 frost joins (~frost@user/frost)
01:45:05 × Alleria quits (~AllahuAkb@68.65.161.35) (Quit: Textual IRC Client: www.textualapp.com)
01:50:54 × notzmv quits (~zmv@user/notzmv) (Ping timeout: 258 seconds)
01:53:00 quarkyalice joins (~textual@user/quarkyalice)
01:58:30 × machinedgod quits (~machinedg@66.244.246.252) (Ping timeout: 240 seconds)
01:59:04 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
02:01:49 × quarkyalice quits (~textual@user/quarkyalice) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
02:03:38 quarkyalice joins (~textual@user/quarkyalice)
02:05:01 × werneta quits (~werneta@137.79.224.184) (Ping timeout: 246 seconds)
02:05:58 <Axman6> unclechu: I can't see an easy way of doing that sadly
02:06:51 werneta joins (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
02:09:14 × td_ quits (~td@muedsl-82-207-238-107.citykom.de) (Ping timeout: 246 seconds)
02:09:51 <Axman6> unclechu: actually, I take that back, there is a way - if you use a monad which is an instance of https://hackage.haskell.org/package/servant-client-core-0.19/docs/Servant-Client-Core-RunClient.html#t:RunClient then you get access to the request itself - so if your app uses a monad transformer the ClientM monad, then you can intercept the Requests (and the responses) and use that for logging
02:10:56 <Axman6> Then I think you just need to use `hoistClient` to take the accessor functions returned by `client` to hoist those into your monad
02:11:09 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
02:11:15 td_ joins (~td@muedsl-82-207-238-251.citykom.de)
02:11:40 × Kaiepi quits (~Kaiepi@156.34.47.253) (Ping timeout: 260 seconds)
02:12:18 <Axman6> Personally I would use something like ReaderT ClientEnv ClientM a
02:15:06 × quarkyalice quits (~textual@user/quarkyalice) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
02:18:19 sayola joins (~vekto@dslb-088-078-152-210.088.078.pools.vodafone-ip.de)
02:19:46 littlebo1eep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
02:22:04 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
02:29:25 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
02:30:19 dyeplexer joins (~dyeplexer@user/dyeplexer)
02:31:34 × littlebo1eep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
02:32:01 jakalx parts (~jakalx@base.jakalx.net) (Error from remote client)
02:33:04 notzmv joins (~zmv@user/notzmv)
02:34:05 jakalx joins (~jakalx@base.jakalx.net)
02:36:10 × [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection)
02:37:13 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija)))
02:37:13 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
02:47:23 bontaq joins (~user@ool-45779fe5.dyn.optonline.net)
02:49:13 prolic joins (~prolic@2803:2a00:2c0f:b96d:e9c0:2cb6:9306:f094)
02:49:39 <prolic> hi there. I have some troubles with stack's docker integration, and wonder if somebody can help.
02:50:08 <prolic> I have a Dockerfile from which I build, there is some extra C lib compiled from source inside, that I need for my project
02:50:44 <prolic> when I run `stack --docker-image=mynewimage build` - it complains about my C lib not being found.
02:51:14 <prolic> when I enter the container with `docker run` I can verify that my c-lib is installed and available
02:51:18 <prolic> what am I missing?
02:57:18 causal joins (~user@50.35.83.177)
02:58:21 <c_wraith> I think pkg-config is used to locate system libraries - is it registered in the pkg-config database?
03:00:01 × haasn quits (~nand@haasn.dev) (Quit: ZNC 1.7.5+deb4 - https://znc.in)
03:00:12 <prolic> nope, but I have `extra-lib-dirs:   /usr/local/lib` specified in my package.yaml file, and this is sufficient to build without docker
03:00:53 <c_wraith> Darn. You're deep into docker stuff then.
03:01:22 haasn joins (~nand@haasn.dev)
03:01:58 <prolic> checking `pkg-config --list-all` from inside the container lists my c-lib
03:02:05 <prolic> so it's there
03:02:29 machinedgod joins (~machinedg@66.244.246.252)
03:02:55 <prolic> I can even build the thing from inside the container manually, but since it's a GUI application, it's not that easy to run from inside, lol
03:07:19 × yauhsien quits (~yauhsien@61-231-59-135.dynamic-ip.hinet.net) (Remote host closed the connection)
03:09:56 yauhsien joins (~yauhsien@61-231-59-135.dynamic-ip.hinet.net)
03:10:24 quarkyalice joins (~textual@user/quarkyalice)
03:12:01 <prolic> ok I think I got it
03:12:16 <prolic> it seems like it's not respecting the extra-lib-dirs at all, when in docker-mode
03:12:31 <prolic> symlinking the file to /usr/lib and it can find it
03:14:10 × yauhsien quits (~yauhsien@61-231-59-135.dynamic-ip.hinet.net) (Ping timeout: 240 seconds)
03:26:36 <prolic> I raised an issue here, if somebody is interessted: https://github.com/commercialhaskell/stack/issues/5768
03:31:28 × prolic quits (~prolic@2803:2a00:2c0f:b96d:e9c0:2cb6:9306:f094) (Ping timeout: 252 seconds)
03:33:27 × slack1256 quits (~slack1256@191.125.99.209) (Read error: Connection reset by peer)
03:33:31 slack2736 joins (~slack1256@181.43.227.189)
03:35:14 × zebrag quits (~chris@user/zebrag) (Quit: Konversation terminated!)
03:36:53 × quarkyalice quits (~textual@user/quarkyalice) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
03:38:08 quarkyalice joins (~textual@user/quarkyalice)
03:39:15 × quarkyalice quits (~textual@user/quarkyalice) (Client Quit)
03:39:45 zebrag joins (~chris@user/zebrag)
03:41:16 × zebrag quits (~chris@user/zebrag) (Client Quit)
03:43:34 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
03:43:49 × liz quits (~liz@cpc84585-newc17-2-0-cust60.16-2.cable.virginm.net) (Quit: Lost terminal)
03:46:55 nate4 joins (~nate@98.45.169.16)
03:50:08 quarkyalice joins (~textual@user/quarkyalice)
03:51:00 ec joins (~ec@gateway/tor-sasl/ec)
03:52:39 × quarkyalice quits (~textual@user/quarkyalice) (Client Quit)
03:52:56 × jargon quits (~jargon@184.101.186.108) (Remote host closed the connection)
03:53:10 × nate4 quits (~nate@98.45.169.16) (Ping timeout: 246 seconds)
03:58:41 × slack2736 quits (~slack1256@181.43.227.189) (Ping timeout: 256 seconds)
04:00:56 yauhsien joins (~yauhsien@61-231-59-135.dynamic-ip.hinet.net)
04:02:26 leeb joins (~leeb@KD106155004098.au-net.ne.jp)
04:05:46 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
04:08:08 × yauhsien quits (~yauhsien@61-231-59-135.dynamic-ip.hinet.net) (Ping timeout: 258 seconds)
04:09:01 × dyeplexer quits (~dyeplexer@user/dyeplexer) (Ping timeout: 244 seconds)
04:09:38 yauhsien joins (~yauhsien@61-231-59-135.dynamic-ip.hinet.net)
04:09:43 × Vajb quits (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer)
04:09:50 × adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
04:10:15 adanwan joins (~adanwan@gateway/tor-sasl/adanwan)
04:10:34 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
04:10:48 Vajb joins (~Vajb@2001:999:40:4c50:1b24:879c:6df3:1d06)
04:11:30 dyeplexer joins (~dyeplexer@user/dyeplexer)
04:13:57 × machinedgod quits (~machinedg@66.244.246.252) (Ping timeout: 276 seconds)
04:15:49 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
04:22:34 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
04:23:19 Kaiepi joins (~Kaiepi@156.34.47.253)
04:26:56 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
04:28:43 × Kaiepi quits (~Kaiepi@156.34.47.253) (Ping timeout: 256 seconds)
04:36:20 quarkyalice joins (~textual@user/quarkyalice)
04:36:34 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
04:36:37 × quarkyalice quits (~textual@user/quarkyalice) (Client Quit)
04:40:06 quarkyalice joins (~textual@user/quarkyalice)
04:43:55 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
04:44:49 × quarkyalice quits (~textual@user/quarkyalice) (Client Quit)
04:45:01 coot joins (~coot@213.134.190.95)
04:49:34 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
04:56:02 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
04:56:06 × vglfr quits (~vglfr@coupling.penchant.volia.net) (Ping timeout: 272 seconds)
05:02:57 × yauhsien quits (~yauhsien@61-231-59-135.dynamic-ip.hinet.net) (Remote host closed the connection)
05:03:39 yauhsien joins (~yauhsien@61-231-59-135.dynamic-ip.hinet.net)
05:05:04 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
05:06:07 × Cupcakus quits (~Cupcakus@c-73-205-77-141.hsd1.fl.comcast.net) (Ping timeout: 256 seconds)
05:08:23 × yauhsien quits (~yauhsien@61-231-59-135.dynamic-ip.hinet.net) (Ping timeout: 256 seconds)
05:11:37 benin joins (~benin@183.82.28.222)
05:15:56 tromp joins (~textual@dhcp-077-249-230-040.chello.nl)
05:16:51 vglfr joins (~vglfr@88.155.72.144)
05:21:02 × vglfr quits (~vglfr@88.155.72.144) (Ping timeout: 246 seconds)
05:23:41 michalz joins (~michalz@185.246.204.105)
05:24:40 vglfr joins (~vglfr@88.155.72.144)
05:25:07 gurkenglas joins (~gurkengla@dslb-084-057-085-111.084.057.pools.vodafone-ip.de)
05:28:44 × tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
05:29:21 × vglfr quits (~vglfr@88.155.72.144) (Ping timeout: 256 seconds)
05:30:47 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
05:33:47 _ht joins (~quassel@231-169-21-31.ftth.glasoperator.nl)
05:34:59 × koz quits (~koz@121.99.240.58) (Ping timeout: 255 seconds)
05:35:55 × leeb quits (~leeb@KD106155004098.au-net.ne.jp) (Ping timeout: 258 seconds)
05:37:46 leeb joins (~leeb@KD106154142206.au-net.ne.jp)
05:42:34 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
05:44:25 bilegeek joins (~bilegeek@2600:1008:b013:d550:35ea:13c7:a563:2c3e)
05:44:44 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
05:47:10 littlebo1eep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
05:48:37 <zero> newtype State s a where State { runState :: s -> (s,a) } :: State s a
05:48:56 <zero> why is this a parse error on "{" ?
05:49:25 tromp joins (~textual@dhcp-077-249-230-040.chello.nl)
05:49:34 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
05:52:19 <jackdk> Do you have `{-# LANGUAGE GADTSyntax #-}` or anything which implies it?
05:52:37 <zero> i have GADTs
05:54:04 × littlebo1eep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
05:55:14 <[Leary]> zero: State :: { ... }
05:55:27 <[Leary]> -> State s a
05:55:29 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
05:56:59 × alexhandy2 quits (~trace@user/trace) (Read error: Connection reset by peer)
05:57:17 alexhandy joins (~trace@user/trace)
06:02:31 <zero> [Leary]: that syntax actually makes more sense. was it updated?
06:02:42 <zero> it works
06:04:54 <zero> http://downloads.haskell.org/~ghc/6.6/docs/html/users_guide/gadt.html
06:05:55 <zero> or am i missing something?
06:06:29 × geekosaur quits (~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b)))
06:06:29 allbery_b joins (~geekosaur@xmonad/geekosaur)
06:06:32 allbery_b is now known as geekosaur
06:07:26 <[Leary]> Oh, so that used to be valid syntax. Honestly, I wasn't aware. (ghc 6.6 is ancient history)
06:08:04 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
06:10:27 × mvk quits (~mvk@2607:fea8:5ce3:8500::4588) (Ping timeout: 240 seconds)
06:11:09 Me-me joins (~me-me@tunnel690570-pt.tunnel.tserv12.mia1.ipv6.he.net)
06:11:13 × raym quits (~raym@user/raym) (Quit: leaving)
06:12:22 × tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
06:14:51 <Axman6> I thingk GHC 6.6 was my first compiler, possibly 6.4
06:16:41 × Hash quits (~Hash@tunnel686959-pt.tunnel.tserv15.lax1.ipv6.he.net) (Quit: ZNC - https://znc.in)
06:20:32 × bontaq quits (~user@ool-45779fe5.dyn.optonline.net) (Ping timeout: 246 seconds)
06:23:24 tromp joins (~textual@dhcp-077-249-230-040.chello.nl)
06:24:23 × tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Client Quit)
06:27:13 × coot quits (~coot@213.134.190.95) (Quit: coot)
06:29:05 quarkyalice joins (~textual@user/quarkyalice)
06:29:44 acidjnk joins (~acidjnk@p200300d0c7068b05152244a3055ced6a.dip0.t-ipconnect.de)
06:31:04 coot joins (~coot@213.134.190.95)
06:31:19 × _ht quits (~quassel@231-169-21-31.ftth.glasoperator.nl) (Remote host closed the connection)
06:36:41 × quarkyalice quits (~textual@user/quarkyalice) (Quit: Textual IRC Client: www.textualapp.com)
06:36:58 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
06:37:01 quarkyalice joins (~quarkyali@user/quarkyalice)
06:39:21 Hash joins (~Hash@tunnel686959-pt.tunnel.tserv15.lax1.ipv6.he.net)
06:41:26 × merijn quits (~merijn@c-001-001-018.client.esciencecenter.eduvpn.nl) (Ping timeout: 244 seconds)
06:43:56 vglfr joins (~vglfr@88.155.72.144)
06:44:12 yauhsien joins (~yauhsien@61-231-59-135.dynamic-ip.hinet.net)
06:44:47 <tomsmeding> zero: why are you looking at the docs for ghc 6.6 :p
06:44:51 littlebo1eep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
06:45:34 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
06:48:56 jakalx parts (~jakalx@base.jakalx.net) (Error from remote client)
06:49:35 jakalx joins (~jakalx@base.jakalx.net)
06:53:04 × littlebo1eep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
06:58:24 × yauhsien quits (~yauhsien@61-231-59-135.dynamic-ip.hinet.net) (Ping timeout: 276 seconds)
07:02:37 × quarkyalice quits (~quarkyali@user/quarkyalice) (Quit: quarkyalice)
07:03:03 quarkyalice joins (~quarkyali@user/quarkyalice)
07:03:42 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
07:05:57 <zero> oh my bad
07:07:51 merijn joins (~merijn@c-001-001-018.client.esciencecenter.eduvpn.nl)
07:15:22 kimjetwav joins (~user@2607:fea8:2340:da00:710e:91e2:da2a:278a)
07:16:11 × Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer)
07:18:20 vpan joins (~0@212.117.1.172)
07:18:34 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
07:21:46 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
07:24:38 koz joins (~koz@121.99.240.58)
07:35:17 × aarchi quits (sid486183@id-486183.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
07:35:21 jgeerds joins (~jgeerds@55d45f48.access.ecotel.net)
07:36:45 gmg joins (~user@user/gehmehgeh)
07:44:44 yauhsien joins (~yauhsien@61-231-59-135.dynamic-ip.hinet.net)
07:44:47 × vglfr quits (~vglfr@88.155.72.144) (Remote host closed the connection)
07:45:28 × FragByte quits (~christian@user/fragbyte) (Quit: Quit)
07:47:30 FragByte joins (~christian@user/fragbyte)
07:50:52 × quarkyalice quits (~quarkyali@user/quarkyalice) (Quit: quarkyalice)
07:51:17 quarkyalice joins (~quarkyali@user/quarkyalice)
07:52:22 machinedgod joins (~machinedg@66.244.246.252)
07:52:46 zeenk joins (~zeenk@2a02:2f04:a013:9000:e45d:7fb3:ec71:e806)
07:53:21 × quarkyalice quits (~quarkyali@user/quarkyalice) (Client Quit)
07:57:50 × yauhsien quits (~yauhsien@61-231-59-135.dynamic-ip.hinet.net) (Ping timeout: 246 seconds)
07:58:17 MajorBiscuit joins (~MajorBisc@wlan-145-94-167-213.wlan.tudelft.nl)
08:01:10 × benin quits (~benin@183.82.28.222) (Ping timeout: 240 seconds)
08:01:17 benin0 joins (~benin@183.82.28.222)
08:02:00 fserucas joins (~fserucas@119.65.114.89.rev.vodafone.pt)
08:02:07 × jtmar quits (~james@jtmar.me) (Quit: ZNC 1.8.2+deb2+b1 - https://znc.in)
08:02:16 jamestmartin joins (~james@jtmar.me)
08:02:44 × xff0x quits (~xff0x@2405:6580:b080:900:f5db:151e:7d9e:c4bc) (Ping timeout: 248 seconds)
08:03:25 xff0x joins (~xff0x@2405:6580:b080:900:f5db:151e:7d9e:c4bc)
08:03:43 × m1dnight quits (~christoph@78-22-9-5.access.telenet.be) (Quit: WeeChat 3.5)
08:04:47 × tzh quits (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz)
08:08:22 × sayola quits (~vekto@dslb-088-078-152-210.088.078.pools.vodafone-ip.de) (Read error: Connection reset by peer)
08:08:27 × Colere quits (~colere@about/linux/staff/sauvin) (Remote host closed the connection)
08:09:21 sayola joins (~vekto@dslb-088-078-152-210.088.078.pools.vodafone-ip.de)
08:09:23 × elkcl quits (~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru) (Ping timeout: 246 seconds)
08:09:35 × matijja quits (~matijja@193.77.181.201) (Quit: ZNC 1.8.2 - https://znc.in)
08:09:43 elkcl joins (~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru)
08:09:50 Colere joins (~colere@about/linux/staff/sauvin)
08:09:50 matijja joins (~matijja@193.77.181.201)
08:09:56 m1dnight joins (~christoph@78-22-9-5.access.telenet.be)
08:10:04 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
08:11:47 takuan joins (~takuan@178-116-218-225.access.telenet.be)
08:12:05 × wolfshappen quits (~waff@irc.furworks.de) (Quit: later)
08:12:05 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
08:21:57 arthur joins (~arthur@163.5.10.3)
08:23:59 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:1834:2996:45d4:5368) (Remote host closed the connection)
08:25:24 arthur is now known as arthurs115
08:25:34 × arthurs115 quits (~arthur@163.5.10.3) (Client Quit)
08:26:11 arthurs115 joins (~arthurs11@163.5.10.3)
08:26:27 × arthurs115 quits (~arthurs11@163.5.10.3) (Client Quit)
08:26:52 arthurs115 joins (~arthurs11@163.5.10.3)
08:27:25 yauhsien joins (~yauhsien@61-231-59-135.dynamic-ip.hinet.net)
08:28:11 lagash_ joins (lagash@lagash.shelltalk.net)
08:28:53 × lagash quits (lagash@lagash.shelltalk.net) (Quit: ZNC - https://znc.in)
08:29:07 mattil joins (~mattil@helsinki.portalify.com)
08:29:07 × Katarushisu quits (~Katarushi@cpc147334-finc20-2-0-cust27.4-2.cable.virginm.net) (Quit: The Lounge - https://thelounge.chat)
08:29:11 × feetwind quits (~mike@user/feetwind) (Ping timeout: 258 seconds)
08:30:10 feetwind joins (~mike@user/feetwind)
08:30:20 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Remote host closed the connection)
08:30:45 ChaiTRex joins (~ChaiTRex@user/chaitrex)
08:31:18 CiaoSen joins (~Jura@p200300c9571294002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
08:32:46 alp joins (~alp@user/alp)
08:39:23 wolfshappen joins (~waff@irc.furworks.de)
08:39:42 × coot quits (~coot@213.134.190.95) (Quit: coot)
08:39:55 × yauhsien quits (~yauhsien@61-231-59-135.dynamic-ip.hinet.net) (Ping timeout: 258 seconds)
08:40:19 lottaquestions joins (~nick@2607:fa49:5041:a200:4b68:d7e8:c69e:f4bf)
08:43:16 × frost quits (~frost@user/frost) (Quit: Client closed)
08:52:34 pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
08:53:42 × notzmv quits (~zmv@user/notzmv) (Ping timeout: 244 seconds)
09:02:00 arjun joins (~arjun@user/arjun)
09:03:31 × arthurs115 quits (~arthurs11@163.5.10.3) (Ping timeout: 244 seconds)
09:07:04 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
09:08:02 arthurs115 joins (~arthurs11@163.5.10.3)
09:08:47 alp_ joins (~alp@user/alp)
09:09:26 × alp quits (~alp@user/alp) (Ping timeout: 258 seconds)
09:09:40 × MajorBiscuit quits (~MajorBisc@wlan-145-94-167-213.wlan.tudelft.nl) (Quit: WeeChat 3.5)
09:11:52 × dyeplexer quits (~dyeplexer@user/dyeplexer) (Ping timeout: 248 seconds)
09:12:02 × m1dnight quits (~christoph@78-22-9-5.access.telenet.be) (Read error: Connection reset by peer)
09:12:27 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
09:12:50 m1dnight joins (~christoph@78-22-9-5.access.telenet.be)
09:16:10 <sm> @where+ stack-system-ghc https://docs.haskellstack.org/en/stable/yaml_configuration/#system-ghc to use only system/ghcup GHC, configure system-ghc:true, install-ghc:false
09:16:10 <lambdabot> Done.
09:19:41 × econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity)
09:20:43 × zer0bitz quits (~zer0bitz@2001:2003:f748:2000:3d4c:9b16:2a18:880) (Read error: Connection reset by peer)
09:23:34 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
09:24:30 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:9528:58d5:850d:37ed)
09:25:34 dyeplexer joins (~dyeplexer@user/dyeplexer)
09:26:58 bilegeek_ joins (~bilegeek@2600:1008:b02f:e6dd:d72e:a9db:a0a5:ad3f)
09:29:14 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:9528:58d5:850d:37ed) (Ping timeout: 252 seconds)
09:29:22 × bilegeek quits (~bilegeek@2600:1008:b013:d550:35ea:13c7:a563:2c3e) (Ping timeout: 258 seconds)
09:30:21 × wolfshappen quits (~waff@irc.furworks.de) (Quit: later)
09:30:30 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
09:30:42 wolfshappen joins (~waff@irc.furworks.de)
09:40:37 Kaiepi joins (~Kaiepi@156.34.47.253)
09:43:28 coot joins (~coot@213.134.190.95)
09:44:08 × turlando quits (~turlando@user/turlando) ()
09:45:15 turlando joins (~turlando@93.51.40.51)
09:45:15 × turlando quits (~turlando@93.51.40.51) (Changing host)
09:45:15 turlando joins (~turlando@user/turlando)
09:45:34 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
09:46:01 yauhsien joins (~yauhsien@61-231-59-135.dynamic-ip.hinet.net)
09:47:06 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
09:47:38 bontaq joins (~user@ool-45779fe5.dyn.optonline.net)
09:55:03 × arthurs115 quits (~arthurs11@163.5.10.3) (Remote host closed the connection)
09:56:57 × pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Ping timeout: 260 seconds)
09:57:04 _xor joins (~xor@74.215.182.83)
09:57:17 Katarushisu joins (~Katarushi@cpc147334-finc20-2-0-cust27.4-2.cable.virginm.net)
09:57:36 pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
09:57:40 × pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Client Quit)
09:59:12 × azimut quits (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection)
09:59:42 azimut joins (~azimut@gateway/tor-sasl/azimut)
10:00:05 × alexhandy quits (~trace@user/trace) (Read error: Connection reset by peer)
10:00:23 alexhandy joins (~trace@user/trace)
10:00:48 × CiaoSen quits (~Jura@p200300c9571294002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 258 seconds)
10:04:56 Ether17 joins (~Ether17@2401:f40:100c:a5fe:1ac0:4dff:fe69:b9d5)
10:07:26 × Ether17 quits (~Ether17@2401:f40:100c:a5fe:1ac0:4dff:fe69:b9d5) (Client Quit)
10:10:41 jakalx parts (~jakalx@base.jakalx.net) ()
10:11:06 jakalx joins (~jakalx@base.jakalx.net)
10:14:34 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
10:14:53 × bilegeek_ quits (~bilegeek@2600:1008:b02f:e6dd:d72e:a9db:a0a5:ad3f) (Quit: Leaving)
10:20:00 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
10:23:27 frost joins (~frost@user/frost)
10:26:53 Unicorn_Princess joins (~Unicorn_P@93-103-228-248.dynamic.t-2.net)
10:28:40 × mattil quits (~mattil@helsinki.portalify.com) (Read error: Connection reset by peer)
10:31:00 × alexhandy quits (~trace@user/trace) (Read error: Connection reset by peer)
10:31:18 alexhandy joins (~trace@user/trace)
10:31:39 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
10:33:23 lisbeths joins (uid135845@id-135845.lymington.irccloud.com)
10:33:36 <lisbeths> is there an abstract machine at the core of haskell?
10:36:19 <tomsmeding> lisbeths: GHC has a number of intermediate languages between Haskell and machine code: Core, STG and Cmm. Core is a minimal functional language that is still haskell-like, and is where most optimisations happen. STG is probably most like an "abstract machine"; it is in a sense what assembly would have been if processors were purely functional. Cmm is really just high-level assembly.
10:36:54 <tomsmeding> STG is a weird thing though
10:37:12 <lisbeths> which one of those is closest to the SECD machine and also which one of those is the smallest in terms of file size and memory footprint
10:37:55 <tomsmeding> what even is SECD
10:38:13 <tomsmeding> ah
10:38:55 <tomsmeding> lisbeths: isn't SECD intended for _strict_ functional languages
10:39:29 <tomsmeding> I guess you could say that STG is the SECD for lazy functional languages, but I really don't know enough of either to say for sure
10:40:11 <tomsmeding> I liked this intro to STG, in case you're curious: https://github.com/quchen/stgi (note the bottom of the page: this STG is slightly different from the one that GHC actually uses)
10:40:12 littlebo1eep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
10:41:34 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
10:42:18 <tomsmeding> yes SECD sounds very much based on call-by-value on a cursory reading of wikipedia
10:43:15 pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
10:45:17 × arjun quits (~arjun@user/arjun) (Remote host closed the connection)
10:53:04 × dyeplexer quits (~dyeplexer@user/dyeplexer) (Read error: Connection reset by peer)
10:56:57 jfhector joins (~jfhector@82-71-30-223.dsl.in-addr.zen.co.uk)
10:57:53 × jfhector quits (~jfhector@82-71-30-223.dsl.in-addr.zen.co.uk) (Client Quit)
11:00:04 × littlebo1eep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
11:05:35 <lisbeths> what is the memory footprint of stg what is its filesize
11:07:03 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
11:08:07 <tomsmeding> I have no clue, why do you want to know?
11:08:39 heinz9 joins (~trace@user/trace)
11:08:42 <tomsmeding> also, those questions aren't even really well-defined; STG is an intermediate language without a fixed serialisation scheme
11:08:57 <heinz9> there seem not to be so many linux haskell programs
11:09:12 <heinz9> xmonad, git annex
11:09:36 <hpc> as opposed to cross-platform haskell programs?
11:09:46 <heinz9> in general
11:09:51 <gentauro_> what does this mean -> `Warning: Directory listed in elm-format.cabal file does not exist: generated` when `ls -l` -> `-rw-r--r-- 1 johndoe users 2161 Jun 17 13:05 elm-format.cabal`?
11:10:05 <gentauro_> did `cabal` go loco?
11:10:14 gentauro_ gñe
11:10:36 × gentauro_ quits (~gentauro@185.107.12.141) (Changing host)
11:10:36 gentauro_ joins (~gentauro@user/gentauro)
11:10:46 × coot quits (~coot@213.134.190.95) (Quit: coot)
11:10:56 <gentauro_> oh, my bad
11:11:12 <gentauro_> so there is some files in the `.cabal` file that are not part of the project got it …
11:11:15 <gentauro_> xD
11:12:03 × pavonia quits (~user@user/siracusa) (Quit: Bye!)
11:12:04 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
11:12:07 littlebo1eep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
11:12:19 dyeplexer joins (~dyeplexer@user/dyeplexer)
11:12:54 jakalx parts (~jakalx@base.jakalx.net) (Error from remote client)
11:13:32 MajorBiscuit joins (~MajorBisc@wlan-145-94-167-213.wlan.tudelft.nl)
11:16:45 CiaoSen joins (~Jura@p200300c9571294002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
11:17:26 littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
11:17:43 jakalx joins (~jakalx@base.jakalx.net)
11:18:16 × dyeplexer quits (~dyeplexer@user/dyeplexer) (Ping timeout: 248 seconds)
11:18:23 <sm> heinz9: https://news.ycombinator.com/item?id=31664490
11:20:04 × littlebo1eep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
11:20:57 <heinz9> can ghc convert any haskell program in C ?
11:21:28 <heinz9> so that gcc can compile it to all architectures it supports?
11:22:25 littlebo1eep joins (~alMalsamo@gateway/tor-sasl/almalsamo)
11:22:34 × littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
11:22:40 <turlando> You can emit LLVM IR and then use all the backends LLVM supports
11:22:56 <heinz9> is this a yes?
11:23:13 <turlando> I think there is or was a C backend but it is deprecated (maybe someone with better internals knowledge can tell)
11:23:17 × jgeerds quits (~jgeerds@55d45f48.access.ecotel.net) (Ping timeout: 260 seconds)
11:23:39 <heinz9> ah
11:23:49 <heinz9> so its not C but some whatsoever language
11:23:53 <turlando> If the question is "can I get C out of haskell code" the answer is probably no
11:24:11 <heinz9> but not human readable
11:24:24 <heinz9> and llvm can bring it to all architectures it supports. Right?
11:24:25 <turlando> If the answer is can I use any architecture LLVM supports the answer is theoretically maybe
11:24:33 <heinz9> ah
11:24:35 <turlando> s/answer/question
11:24:38 <heinz9> thx
11:25:16 <heinz9> what else can llvm do with it
11:26:08 <turlando> heinz9: https://downloads.haskell.org/~ghc/9.2.3/docs/html/users_guide/codegens.html
11:26:14 <int-e> Yeah, there's -keep-hc-file -fvia-C and I would expect it to be fairly bitrotten... never used it myself (except in pre-NCG days) though.
11:26:16 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:9528:58d5:850d:37ed)
11:30:04 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Ping timeout: 240 seconds)
11:30:51 notzmv joins (~zmv@user/notzmv)
11:30:53 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:9528:58d5:850d:37ed) (Ping timeout: 258 seconds)
11:31:20 ChaiTRex joins (~ChaiTRex@user/chaitrex)
11:32:23 jgeerds joins (~jgeerds@55d45f48.access.ecotel.net)
11:33:34 × littlebo1eep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
11:33:43 pleo joins (~pleo@user/pleo)
11:35:51 × _xor quits (~xor@74.215.182.83) (Quit: brb)
11:36:11 _xor joins (~xor@74.215.182.83)
11:39:24 × alp_ quits (~alp@user/alp) (Remote host closed the connection)
11:39:28 alp__ joins (~alp@user/alp)
11:47:03 × szkl quits (uid110435@id-110435.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
11:47:46 <kuribas> turlando: there is no LLVM IR for the runtime system, is there?
11:47:50 AlexZenon joins (~alzenon@178.34.150.200)
11:47:56 Alex_test joins (~al_test@178.34.150.200)
11:47:57 <kuribas> Will not be much use without that.
11:48:28 AlexNoo joins (~AlexNoo@178.34.150.200)
11:53:38 arthurs115 joins (~arthurs11@163.5.10.3)
11:53:50 [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470)
11:55:00 × jgeerds quits (~jgeerds@55d45f48.access.ecotel.net) (Ping timeout: 260 seconds)
11:55:11 × arthurs115 quits (~arthurs11@163.5.10.3) (Remote host closed the connection)
11:57:31 <tomsmeding> most of the RTS is C, but there is a little bit of assembly too, apparently
11:58:16 <tomsmeding> https://gitlab.haskell.org/ghc/ghc/-/blob/master/rts/adjustor/NativeAmd64Asm.S
12:02:37 pretty_d1 joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
12:02:37 × pretty_d1 quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Client Quit)
12:03:32 lyle joins (~lyle@104.246.145.85)
12:04:40 × MajorBiscuit quits (~MajorBisc@wlan-145-94-167-213.wlan.tudelft.nl) (Ping timeout: 248 seconds)
12:04:42 × pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Ping timeout: 260 seconds)
12:05:34 Everything joins (~Everythin@89.209.36.234)
12:06:40 × xff0x quits (~xff0x@2405:6580:b080:900:f5db:151e:7d9e:c4bc) (Ping timeout: 260 seconds)
12:06:56 Everything parts (~Everythin@89.209.36.234) ()
12:07:53 MajorBiscuit joins (~MajorBisc@wlan-145-94-167-213.wlan.tudelft.nl)
12:09:11 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Remote host closed the connection)
12:09:51 × joo-_ quits (~joo-_@fsf/member/joo--) (Quit: leaving)
12:10:11 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 246 seconds)
12:13:50 pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
12:14:45 ChaiTRex joins (~ChaiTRex@user/chaitrex)
12:18:37 × vpan quits (~0@212.117.1.172) (Quit: Leaving.)
12:29:16 xff0x joins (~xff0x@2405:6580:b080:900:1201:81ba:ce69:9f85)
12:33:41 Ether17 joins (~Ether17@2401:f40:100c:a5fe:1ac0:4dff:fe69:b9d5)
12:35:23 × Ether17 quits (~Ether17@2401:f40:100c:a5fe:1ac0:4dff:fe69:b9d5) (Client Quit)
12:38:39 <geekosaur> re getting C out of ghc, -fvia-C is long since gone. there's still unregisterised mode, which requires you to build ghc yourself (it's disabled in release builds)
12:39:32 <tomsmeding> geekosaur: do you happen to know why that's called "unregistered" mode? The name never made sense to me
12:40:14 <geekosaur> unregisterised nmode. because it doesn't use registers like native asm does, so it's significantly slower
12:40:24 <tomsmeding> oh
12:40:36 <tomsmeding> it stores everything on the stack?
12:40:52 <geekosaur> yes
12:41:19 <tomsmeding> well, unless the C compiler moves stuff to registers anyway
12:41:40 <tomsmeding> which I guess is unlikely maybe given the code that ghc produces
12:41:41 <sm> @where loginataka
12:41:41 <lambdabot> "The Loginataka: Dialogue between a Guru and a Newbie" (aka "So You Want To Be A Wizard?") by Eric S. Raymond at <http://www.catb.org/~esr/faqs/loginataka.html>
12:41:43 <geekosaur> which it does poorly for ghc because it's not optimized for Haskell code :)
12:41:51 <tomsmeding> geekosaur: right
12:42:06 sm proposes to delete the above (not haskell related, clutters up my faq search
12:42:35 <tomsmeding> sm: what keywords does it clutter
12:43:06 <sm> tomsmeding: I mean the https://haskell-links.org/?q=faq search
12:43:22 <tomsmeding> ah lol
12:43:39 <tomsmeding> the background colours there have become... opinionated :p
12:44:03 <sm> oh you don't like the purple ? :) Taken from haskell.org
12:44:34 <tomsmeding> the purple in itself is fine (though a bit strong, maybe), but the gradient at the top _really_ accentuates that it is purple
12:45:55 <sm> I got tired of endless anonymous white pages, wanted to make the page a little memorable. New designs welcome!
12:46:37 <tomsmeding> it's cool, I'm not complaining, was just surprised at the presence of actual personality on a tech page :p
12:49:42 <tomsmeding> sm: maybe I like this a bit better, not sure to be honest linear-gradient( rgb(234,229,237) 2em ,rgb(213,204,220) 10em ,rgb(194, 174, 205) )
12:49:57 <tomsmeding> but your call
12:50:13 × azimut quits (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection)
12:52:45 azimut joins (~azimut@gateway/tor-sasl/azimut)
12:56:27 <sm> tomsmeding: thanks! Now to debug deployment..
12:56:40 <sm> amazing how bits rot
12:56:45 <tomsmeding> :D
12:57:57 × frost quits (~frost@user/frost) (Quit: Client closed)
12:58:33 × winny quits (~weechat@user/winny) (Remote host closed the connection)
12:59:25 winny joins (~weechat@user/winny)
13:02:05 <sm> finally
13:02:19 <tomsmeding> yay
13:02:25 <tomsmeding> it's kinder
13:03:22 <tomsmeding> I even got credit in the css
13:03:38 <tomsmeding> be it positive or negative :D
13:04:23 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
13:04:59 <sm> 👍️
13:05:00 arthurs115 joins (~arthurs11@163.5.10.3)
13:08:29 alexhandy2 joins (~trace@user/trace)
13:10:02 × gmg quits (~user@user/gehmehgeh) (Remote host closed the connection)
13:10:53 gmg joins (~user@user/gehmehgeh)
13:11:11 × alexhandy quits (~trace@user/trace) (Ping timeout: 256 seconds)
13:11:57 frost joins (~frost@user/frost)
13:12:13 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Remote host closed the connection)
13:13:01 ChaiTRex joins (~ChaiTRex@user/chaitrex)
13:13:35 × acidjnk quits (~acidjnk@p200300d0c7068b05152244a3055ced6a.dip0.t-ipconnect.de) (Ping timeout: 244 seconds)
13:13:49 Ether17 joins (~Ether17@2401:f40:100c:a5fe:1ac0:4dff:fe69:b9d5)
13:14:56 × Ether17 quits (~Ether17@2401:f40:100c:a5fe:1ac0:4dff:fe69:b9d5) (Client Quit)
13:17:06 szkl joins (uid110435@id-110435.uxbridge.irccloud.com)
13:20:49 hololeap joins (~hololeap@user/hololeap)
13:21:07 BusConscious joins (~martin@95.90.207.249)
13:23:08 <BusConscious> Hello everyone I need functionality similar to openat(2): When I first open, then dupTo openedFd openatFd and finally close openedFd, ...
13:23:16 <BusConscious> will this behave similar?
13:24:34 <BusConscious> again more of a unix question
13:24:56 <geekosaur> you will probably need to bind to openat via FFI
13:27:03 Ether17 joins (~Ether17@2401:f40:100c:a5fe:1ac0:4dff:fe69:b9d5)
13:27:50 <BusConscious> oh no :(
13:28:15 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:9528:58d5:850d:37ed)
13:28:50 × Ether17 quits (~Ether17@2401:f40:100c:a5fe:1ac0:4dff:fe69:b9d5) (Client Quit)
13:29:03 Ether17 joins (~Ether17@2401:f40:100c:a5fe:1ac0:4dff:fe69:b9d5)
13:29:59 <BusConscious> So the issue with my approach is, that it's not creating openatFD out of thin air or is it also, that openatFd will be killed when I close openedFd?
13:30:27 <BusConscious> anyways would have been too good to be true
13:31:30 × Ether17 quits (~Ether17@2401:f40:100c:a5fe:1ac0:4dff:fe69:b9d5) (Client Quit)
13:32:27 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:9528:58d5:850d:37ed) (Ping timeout: 240 seconds)
13:33:27 <geekosaur> as long as you're working with fds, there';s no difference between doing it in haskell vs. doing it in C. just don't do fdToHandle until you're done playing at the fd level
13:34:48 <geekosaur> (which is also no different than in C, you don't fdopen() until you're done playing with the fds)
13:37:30 coot joins (~coot@213.134.190.95)
13:40:52 × frost quits (~frost@user/frost) (Ping timeout: 252 seconds)
13:47:50 × elkcl quits (~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru) (Ping timeout: 246 seconds)
13:57:10 × pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Ping timeout: 240 seconds)
14:07:58 × alexhandy2 quits (~trace@user/trace) (Read error: Connection reset by peer)
14:08:27 alexhandy joins (~trace@user/trace)
14:08:30 FY joins (~Thunderbi@218.89.242.114)
14:08:39 × alexhandy quits (~trace@user/trace) (Read error: Connection reset by peer)
14:09:06 alexhandy joins (~trace@user/trace)
14:10:06 × FY quits (~Thunderbi@218.89.242.114) (Client Quit)
14:10:39 × alexhandy quits (~trace@user/trace) (Read error: Connection reset by peer)
14:10:56 alexhandy joins (~trace@user/trace)
14:21:09 o-90 joins (~o-90@gateway/tor-sasl/o-90)
14:24:06 × o-90 quits (~o-90@gateway/tor-sasl/o-90) (Remote host closed the connection)
14:25:48 <BusConscious> So capi is the FFI I should use right?
14:26:15 <geekosaur> that's the recommended one these days, yes
14:26:47 <geekosaur> ccall is more direct but has a bunch of shortcomings since it's a raw asm call and all too often C functions are secretly macros or etc.
14:27:16 <geekosaur> (back in the day ghc compiled via C, so ccall was better behaved)
14:27:36 <BusConscious> Is there any minimal working example for calling a c library function using capi? In the wiki they document ccall ..
14:28:32 <geekosaur> it's what the wiki shows with "ccall" replaced by "capi", and "{-# LANGUAGE CApiFFI #-}" up in the pragmas
14:28:56 <geekosaur> because, as I just said, ccall used to be capi
14:30:02 <tomsmeding> geekosaur: is there any reason to use ccall nowadays?
14:30:26 <geekosaur> not really. ghc hq is strongly recommending that people use capi instead of ccall
14:30:39 <BusConscious> geekosaur: ok thank you CAPiFFi in addition to ForeignFunctionInterfaces?
14:30:43 <tomsmeding> yes
14:30:45 <geekosaur> yes
14:30:49 <tomsmeding> geekosaur: I see
14:31:52 alexhandy2 joins (~AndChat62@user/trace)
14:32:12 × yauhsien quits (~yauhsien@61-231-59-135.dynamic-ip.hinet.net) (Remote host closed the connection)
14:32:37 <alexhandy2> Sorry, I have a provoking thesis.
14:33:00 <alexhandy2> Isn't Haskell Programming the opposite of what clean code wants?
14:33:14 <alexhandy2> Please do not be angry 😠 at me for asking that
14:33:53 <alexhandy2> With Haskell you can create a lot acrobatic fancy fun code
14:33:53 × hololeap quits (~hololeap@user/hololeap) (Quit: Bye)
14:34:33 hololeap_ is now known as hololeap
14:34:33 <alexhandy2> But with clean code the result has often to become as boring as much, because at should become readable
14:34:33 <[exa]> alexhandy2: depends on what "clean code" wants -- precise aims of it are a bit obscure to me tbh
14:34:42 <geekosaur> you can but even in haskell it's not recommended to be too clever. we have the same problem of "if you don't understand what you wrote 6 months on, you've screwed yourself" that any other language does
14:35:36 <alexhandy2> Is haskell less readable as imperative code?
14:35:44 <[exa]> no
14:36:06 <[exa]> (^ doesn't imply that imperative code is less readable than haskell tho :D)
14:36:08 <geekosaur> any new language is less readable than what you're used to. as you learn haskell it'll become more readable
14:36:22 × pleo quits (~pleo@user/pleo) (Quit: quit)
14:37:50 <alexhandy2> Shouldn't you also learn haskell for if you switch back to, say 💭 c++, you are cleverer for it's functional part, when this becomes important - for example in parallisation, where functional programming is a great choice
14:40:33 × arthurs115 quits (~arthurs11@163.5.10.3) (Ping timeout: 276 seconds)
14:41:05 AndChat-624225 joins (~AndChat62@user/trace)
14:41:20 × AndChat-624225 quits (~AndChat62@user/trace) (Read error: Connection reset by peer)
14:41:22 <[exa]> alexhandy2: yeah it really helps with grasping various subtle or high-level constructions and code properties that are sometimes not very visible in the other languages
14:41:41 AndChat-624225 joins (~AndChat62@user/trace)
14:41:56 AndChat-624225 is now known as alexhandy3
14:42:00 × alexhandy2 quits (~AndChat62@user/trace) (Ping timeout: 248 seconds)
14:42:00 × alexhandy quits (~trace@user/trace) (Ping timeout: 248 seconds)
14:42:11 <hololeap> https://github.com/ekmett/semigroupoids/commit/b81b16b810fa5051fee0230588492c9acd627921#diff-77507da988cd1f93e6d2f259d07e37a2c0a7afa3982d555faeddb9a42b37ddb7R385-R388
14:42:27 <hololeap> why doesn't the Apply instance for CPS.WriterT at least require (Semigroup w)?
14:42:35 Sgeo joins (~Sgeo@user/sgeo)
14:44:04 <alexhandy3> I received no answers
14:44:29 <alexhandy3> had internet problems
14:45:00 <geekosaur> [17 14:41:22] <[exa]> alexhandy2: yeah it really helps with grasping various subtle or high-level constructions and code properties that are sometimes not very visible in the other languages
14:45:26 <geekosaur> alos see the channel topic for a log
14:45:40 <geekosaur> *also
14:47:58 acidjnk joins (~acidjnk@p200300d0c7068b05152244a3055ced6a.dip0.t-ipconnect.de)
14:55:08 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Remote host closed the connection)
14:55:08 × gmg quits (~user@user/gehmehgeh) (Remote host closed the connection)
14:55:08 × winny quits (~weechat@user/winny) (Read error: Connection reset by peer)
14:55:08 × stiell quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection)
14:55:08 × chexum quits (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
14:55:08 × HotblackDesiato quits (~HotblackD@gateway/tor-sasl/hotblackdesiato) (Read error: Connection reset by peer)
14:55:35 chexum joins (~quassel@gateway/tor-sasl/chexum)
14:55:37 HotblackDesiato joins (~HotblackD@gateway/tor-sasl/hotblackdesiato)
14:55:48 stiell joins (~stiell@gateway/tor-sasl/stiell)
14:56:05 ChaiTRex joins (~ChaiTRex@user/chaitrex)
14:56:21 gmg joins (~user@user/gehmehgeh)
14:56:28 <hololeap> huh, I guess CPS.WriterT only requires (Monoid w) when you run it
14:57:25 winny joins (~weechat@user/winny)
14:58:39 _ht joins (~quassel@231-169-21-31.ftth.glasoperator.nl)
14:59:09 elkcl joins (~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru)
14:59:23 × elkcl quits (~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru) (Remote host closed the connection)
14:59:44 arthurs115 joins (~arthurs11@163.5.10.3)
15:02:56 × alexhandy3 quits (~AndChat62@user/trace) (Read error: Connection reset by peer)
15:03:22 elkcl joins (~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru)
15:08:21 × stiell quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection)
15:08:58 stiell joins (~stiell@gateway/tor-sasl/stiell)
15:10:06 × MajorBiscuit quits (~MajorBisc@wlan-145-94-167-213.wlan.tudelft.nl) (Quit: WeeChat 3.5)
15:10:30 × cheater quits (~Username@user/cheater) (Ping timeout: 240 seconds)
15:11:13 haskell_apprenti joins (~haskell_a@cpe-74-71-248-39.nyc.res.rr.com)
15:11:54 <haskell_apprenti> Hi I have a question about understanding a foldl error
15:12:27 <haskell_apprenti> If I do > foldl (flip const) 0 "burritos" I get the error "No instance for (Num Char) arising from the literal ‘0’"
15:13:03 <haskell_apprenti> As I understand it, in the spine traversal before evalutation, the expression becomes foldl (flip const) 0 "burritos" = foldl (flip const) ((flip const) 0 'b') "urritos"
15:13:11 MajorBiscuit joins (~MajorBisc@wlan-145-94-167-213.wlan.tudelft.nl)
15:13:26 alexhandy joins (~AndChat62@user/trace)
15:13:58 <haskell_apprenti> so I thought if anything, the error would be that (flip const) takes type Num -> Char -> Char then takes the type Char -> Char -> Char in subsequent evalutation
15:14:16 × winny quits (~weechat@user/winny) (Remote host closed the connection)
15:14:40 winny joins (~weechat@user/winny)
15:14:49 × ccntrq quits (~Thunderbi@172.209.94.92.rev.sfr.net) (Remote host closed the connection)
15:14:52 <geekosaur> you have a misunderstanding of typeclasses
15:14:59 <geekosaur> there is no "type Num"
15:15:45 <geekosaur> the literal 0 has a type: `Num a => a`. so it can take on any type that is an instance of Num.
15:16:04 <geekosaur> the next thing it sees in that position is a Char, so it looks for a Num instance for Char and doesn't find it
15:16:10 <[exa]> shortest way to trigger the same error:
15:16:12 <[exa]> > 0 :: Char
15:16:14 <lambdabot> error:
15:16:14 <lambdabot> • No instance for (Num Char) arising from the literal ‘0’
15:16:14 <lambdabot> • In the expression: 0 :: Char
15:16:58 <haskell_apprenti> right Num is a typeclass, I knew that before. But there would still be an error if it expected a Num typeclass and got a Char
15:16:59 × benin0 quits (~benin@183.82.28.222) (Remote host closed the connection)
15:17:39 <geekosaur> there is. it's the error you got
15:17:51 <geekosaur> because typeclasses do not work the way you think
15:18:01 <haskell_apprenti> so @exa that's a case where it expects a Char but gets a Num a => a type
15:18:18 <[Leary]> haskell_apprenti: foldl wants an (a -> b -> a). You give it an (a -> b -> b). The conclusion is that a = b.
15:18:27 <geekosaur> you can define a Num instance for Char (not very usefully, but) and then it would work
15:18:35 <[Leary]> Hence 0 :: Char, and your error.
15:19:36 <haskell_apprenti> [Leary] ah interesting take ok. I'm curious where exactly the error would occur in execution though
15:20:06 <[Leary]> It's a type error; it doesn't reach execution?
15:20:11 <haskell_apprenti> seems to me the error should be when foldl gets to 'u'
15:20:45 <geekosaur> type errors happen at compile time. it doesn't have to wait until execution to realize there's a mismatch
15:21:03 <geekosaur> [Leary]'s first line shows you how that works
15:21:45 <[exa]> haskell_apprenti: it sees the problem right from the type -- the type dictates that the return value of the folding function, "zero seed" value and return value of the whole fold must have the same type. In your case, the seed value has type `Num a => a`, which haskell tries to unify with Char, getting `Num Char => Char`, which is unfortunately invalid because `Num Char` can't be satisfied as the instance
15:21:49 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:9528:58d5:850d:37ed)
15:21:51 <[exa]> is missing
15:22:07 <haskell_apprenti> ah ok - so for my own clarity, haskell compiler sees this - foldl wants an (a -> b -> a). You give it an (a -> b -> b) - so already knows both types must be Char, so throws an error immediately when given instance of Num typeclass>
15:22:09 <haskell_apprenti> ?
15:22:29 <geekosaur> after searching for a Num instance, yes
15:22:52 <geekosaur> there's nothing built into the compiler defining `Num`, you could in fact define a Num instance for Char
15:23:06 <geekosaur> it'd behave weirdly, but you could do it
15:24:19 <haskell_apprenti> [exa]: ah ok
15:24:23 <[exa]> spoiler: `0` in fact desugars to something like `fromInteger (0::Integer)`
15:24:36 <haskell_apprenti> all these comment's are clarifying, thanks for all of your input
15:24:44 <[exa]> and `fromInteger` is defined in the Num class. :]
15:25:25 <haskell_apprenti> (y)
15:32:56 cheater joins (~Username@user/cheater)
15:33:25 <BusConscious> How can I construct a Int32 from an Int?
15:33:35 <geekosaur> fromIntegral
15:35:29 <exarkun> watch out for overflow of course
15:37:09 <geekosaur> yes, fromIntegral does no testing for values fitting in the result
15:38:23 × arthurs115 quits (~arthurs11@163.5.10.3) (Remote host closed the connection)
15:39:09 jgeerds joins (~jgeerds@55d45f48.access.ecotel.net)
15:48:59 × coot quits (~coot@213.134.190.95) (Quit: coot)
15:50:47 pleo joins (~pleo@user/pleo)
15:50:59 __monty__ joins (~toonn@user/toonn)
15:52:00 jakalx parts (~jakalx@base.jakalx.net) (Error from remote client)
15:55:28 Tuplanolla joins (~Tuplanoll@91-159-68-181.elisa-laajakaista.fi)
15:55:48 tzh joins (~tzh@c-24-21-73-154.hsd1.wa.comcast.net)
15:56:52 × haskell_apprenti quits (~haskell_a@cpe-74-71-248-39.nyc.res.rr.com) (Quit: Client closed)
15:57:23 × alexhandy quits (~AndChat62@user/trace) (Read error: Connection reset by peer)
15:59:18 jakalx joins (~jakalx@base.jakalx.net)
16:00:28 × CiaoSen quits (~Jura@p200300c9571294002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 272 seconds)
16:02:21 kenran joins (~kenran@200116b82b5e4a009fbad6df2f61ab5d.dip.versatel-1u1.de)
16:02:37 alexhandy joins (~AndChat62@user/trace)
16:03:25 × alexhandy quits (~AndChat62@user/trace) (Read error: Connection reset by peer)
16:04:59 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:9528:58d5:850d:37ed) (Remote host closed the connection)
16:07:21 yauhsien joins (~yauhsien@61-231-59-135.dynamic-ip.hinet.net)
16:09:06 <BusConscious> exarkun: finally YOLOed all types into each other :P
16:09:19 <exarkun> :)
16:09:40 <exarkun> I heard about a nice library for type converstion a while ago ... on Haskell Weekly News podcast I think. I wonder if I can remember its name.
16:10:01 <exarkun> It had some magic-oriented theme. witches or casting or something.
16:10:18 <exarkun> https://hackage.haskell.org/package/witch-0.3.4.0/docs/Witch.html I guess
16:10:24 <exarkun> have no tried it
16:11:17 <tomsmeding> Witch?
16:11:21 <tomsmeding> ah you found it already
16:11:35 × kenran quits (~kenran@200116b82b5e4a009fbad6df2f61ab5d.dip.versatel-1u1.de) (Quit: WeeChat info:version)
16:11:59 <tomsmeding> there is also https://hackage.haskell.org/package/int-cast-0.2.0.0/docs/Data-IntCast.html
16:12:21 <BusConscious> Other question: How can I import macros in FFI? It doesn't link against those if I treat them like functions despite it saying that somewhere on the web
16:12:36 <tomsmeding> are you using capi?
16:12:41 <BusConscious> yes
16:13:18 <tomsmeding> have you defined the macro yourself or is it coming from a system header?
16:13:27 <BusConscious> system header fcntl.h
16:13:39 <geekosaur> then include that header in the declaration
16:14:59 <tomsmeding> like `foreign import capi "fcntl.h YOURMACRO" c_whatever :: Whatever`
16:15:15 <BusConscious> ah
16:15:23 tomsmeding doesn't like the syntax
16:17:27 <BusConscious> error: called object is not a function or function pointer
16:17:27 <BusConscious> 8 | HsInt32 ghczuwrapperZC0ZCmainZCExecZCOzuAPPEND(void) {return O_APPEND();}
16:17:37 × merijn quits (~merijn@c-001-001-018.client.esciencecenter.eduvpn.nl) (Ping timeout: 258 seconds)
16:18:03 <tomsmeding> ah sorry
16:18:12 <tomsmeding> "fcntl.h value O_APPEND"
16:18:15 <tomsmeding> docs: https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/exts/ffi.html#extension-CApiFFI
16:18:44 <BusConscious> aah
16:19:30 <BusConscious> thank you
16:25:15 hugo| is now known as hugo
16:25:36 <tomsmeding> quite a while ago someone in this channel pointed me to ghc's user guide, the existence of which I had up to that point only been faintly aware of
16:26:19 <tomsmeding> because in contrast to physical things, for software I'm usually not looking for user manuals -- I look for manpages, wikis, --help output, etc
16:27:01 <BusConscious> I had it open earlier this day and then lost the tab
16:27:09 <tomsmeding> but it turns out ghc's user guide is actually pretty great; especially the extension listing page is something I have in a very easily accessible bookmark. So thanks to that person, whoever it was :p
16:28:05 <c_wraith> that might have been me. I direct people there somewhat often, because it really does have a ton of good info.
16:28:26 <tomsmeding> yes it may well have been you indeed
16:28:46 <tomsmeding> I remember hpc or monochrom saying that they've read the whole thing front-to-back; I'm not likely to do that any time soon, but I know to reach for it now
16:28:58 <c_wraith> I certainly haven't done that!
16:29:37 <tomsmeding> I guess if you're a tenured professor you can indulge in such things :p
16:30:24 × jgeerds quits (~jgeerds@55d45f48.access.ecotel.net) (Ping timeout: 276 seconds)
16:32:37 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:9528:58d5:850d:37ed)
16:33:22 <tomsmeding> I wonder if `ghc --help` should put the user manual notice more to the top
16:37:15 Cupcakus joins (~Cupcakus@c-73-205-77-141.hsd1.fl.comcast.net)
16:42:34 × azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 240 seconds)
16:44:19 merijn joins (~merijn@c-001-001-018.client.esciencecenter.eduvpn.nl)
16:47:21 <BusConscious> general Haskell noob Q: Say I have functions f1::a->b and f2::a->c and f3: b -> c -> d. Now i want to concatenate f3 . f1xf2 :: a -> d
16:47:29 <BusConscious> How can idiomatically do this?
16:49:35 <tomsmeding> @pl \x y -> f3 (f1 x) (f2 x)
16:49:36 <lambdabot> const . liftM2 f3 f1 f2
16:49:41 <tomsmeding> answer, don't
16:49:51 <tomsmeding> just write f3 (f1 x) (f2 x)
16:50:02 <tomsmeding> oh um
16:50:07 <tomsmeding> @pl \x -> f3 (f1 x) (f2 x)
16:50:07 <lambdabot> liftM2 f3 f1 f2
16:50:09 <tomsmeding> that, of course
16:50:41 <tomsmeding> you _can_ write that, but for clarity's sake, you shouldn't -- that liftM is in the function monad, which is notorious for producing compact, unreadable code
16:50:57 raym joins (~raym@user/raym)
16:51:36 <BusConscious> I knew it would be something like that
16:52:07 <tomsmeding> if you're masochistic:
16:52:16 <tomsmeding> :t \f1 f2 f3 -> uncurry f3 . (f1 &&& f2)
16:52:18 <lambdabot> (a1 -> a2) -> (a1 -> b) -> (a2 -> b -> c) -> a1 -> c
16:52:32 <tomsmeding> but don't use that
16:52:40 × funsafe quits (~funsafe@2601:1c1:4200:9ac:84cb:185c:2a3c:c92c) (Ping timeout: 248 seconds)
16:53:29 <zero> uncurry f3 .
16:53:31 funsafe joins (~funsafe@2601:1c1:4200:9ac:84cb:185c:2a3c:c92c)
16:53:35 <BusConscious> So liftM2 f3 f1 f2 is about as short as it gets and \x y -> f3 (f1 x) (f2 x) is about as clear as it gets
16:53:47 <tomsmeding> BusConscious: yes, without the y, because that was a mistake on my part
16:54:06 <BusConscious> yes
16:54:11 <BusConscious> without the y
16:54:20 <tomsmeding> it's not even that much longer :)
16:54:53 <tomsmeding> f3<$>f1<*>f2 is technically 3 characters shorter
16:55:07 <tomsmeding> but not with proper spacing :p
17:00:41 pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
17:01:20 jinsun__ joins (~jinsun@user/jinsun)
17:03:47 × jinsun quits (~jinsun@user/jinsun) (Ping timeout: 240 seconds)
17:13:16 yuv4199 joins (~yuv4199@user/yuv4199)
17:13:35 × bliminse quits (~bliminse@host86-164-164-134.range86-164.btcentralplus.com) (Quit: leaving)
17:14:51 bliminse joins (~bliminse@host86-164-164-134.range86-164.btcentralplus.com)
17:18:09 × hugo quits (znc@verdigris.lysator.liu.se) (Quit: ZNC 1.8.2 - https://znc.in)
17:18:22 × taeaad quits (~taeaad@user/taeaad) (Quit: ZNC 1.7.5+deb4 - https://znc.in)
17:18:44 hugo joins (znc@verdigris.lysator.liu.se)
17:18:47 quarkyalice joins (~quarkyali@user/quarkyalice)
17:20:09 × hugo quits (znc@verdigris.lysator.liu.se) (Client Quit)
17:20:30 hugo joins (znc@verdigris.lysator.liu.se)
17:28:10 × werneta quits (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 240 seconds)
17:28:20 × MajorBiscuit quits (~MajorBisc@wlan-145-94-167-213.wlan.tudelft.nl) (Ping timeout: 246 seconds)
17:28:23 werneta joins (~werneta@137.79.237.183)
17:29:50 × quarkyalice quits (~quarkyali@user/quarkyalice) (Quit: quarkyalice)
17:31:05 taeaad joins (~taeaad@user/taeaad)
17:31:45 ph88 joins (~ph88@2a02:8109:9e00:71d0::f476)
17:33:30 × pleo quits (~pleo@user/pleo) (Ping timeout: 240 seconds)
17:34:38 × werneta quits (~werneta@137.79.237.183) (Ping timeout: 246 seconds)
17:34:55 quarkyalice joins (~quarkyali@user/quarkyalice)
17:35:26 econo joins (uid147250@user/econo)
17:36:38 werneta joins (~werneta@137.79.231.39)
17:37:06 <yuv4199> Hi, is there a way to trick GHC into resolving constraints from data kinds and type families like so: it figures out that `k ~ 'B` from context `'A ~ App k k'` (the type family `App` only has one equation with rhs `'A` like so: `App 'B 'B = 'A`)?
17:37:43 <yuv4199> At first I thought it was because the family was partial but it doesn't matter if I add another kind constructor `Illegal` it's the same. Small example: https://pastebin.com/Ax8Y4ynz
17:39:25 × quarkyalice quits (~quarkyali@user/quarkyalice) (Client Quit)
17:40:05 quarkyalice joins (~quarkyali@user/quarkyalice)
17:42:25 pleo joins (~pleo@user/pleo)
17:43:29 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 258 seconds)
17:43:59 × bgamari quits (~bgamari@70.16.104.230) (Ping timeout: 255 seconds)
17:45:08 × leeb quits (~leeb@KD106154142206.au-net.ne.jp) (Ping timeout: 246 seconds)
17:45:52 bgamari joins (~bgamari@2001:470:e438::1)
17:45:58 × averell quits (~averell@user/averell) (Quit: .)
17:48:55 alexhandy joins (~AndChat62@user/trace)
17:50:25 tromp joins (~textual@dhcp-077-249-230-040.chello.nl)
17:52:00 <[Leary]> yuv4199: https://ghc.gitlab.haskell.org/ghc/doc/users_guide/exts/type_families.html#injective-type-families
17:52:42 EvanR joins (~EvanR@user/evanr)
17:53:38 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
17:54:10 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
17:56:26 × yuv4199 quits (~yuv4199@user/yuv4199) (Ping timeout: 252 seconds)
18:00:15 × yauhsien quits (~yauhsien@61-231-59-135.dynamic-ip.hinet.net) (Remote host closed the connection)
18:00:50 yauhsien joins (~yauhsien@61-231-59-135.dynamic-ip.hinet.net)
18:04:20 × EvanR quits (~EvanR@user/evanr) (Remote host closed the connection)
18:05:10 EvanR joins (~EvanR@user/evanr)
18:05:10 × yauhsien quits (~yauhsien@61-231-59-135.dynamic-ip.hinet.net) (Ping timeout: 240 seconds)
18:07:50 yauhsien joins (~yauhsien@61-231-59-135.dynamic-ip.hinet.net)
18:16:48 jgeerds joins (~jgeerds@55d45f48.access.ecotel.net)
18:26:25 × alexhandy quits (~AndChat62@user/trace) (Read error: Connection reset by peer)
18:26:53 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
18:27:06 × quarkyalice quits (~quarkyali@user/quarkyalice) (Quit: quarkyalice)
18:27:10 × fserucas quits (~fserucas@119.65.114.89.rev.vodafone.pt) (Ping timeout: 240 seconds)
18:28:53 alexhandy joins (~AndChat62@user/trace)
18:28:59 quarkyalice joins (~quarkyali@user/quarkyalice)
18:36:57 × quarkyalice quits (~quarkyali@user/quarkyalice) (Quit: quarkyalice)
18:40:55 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
18:41:28 × alexhandy quits (~AndChat62@user/trace) (Read error: Connection reset by peer)
18:45:44 × pleo quits (~pleo@user/pleo) (Ping timeout: 248 seconds)
18:50:09 × tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
18:51:51 alexhandy joins (~AndChat62@user/trace)
18:53:42 × alexhandy quits (~AndChat62@user/trace) (Read error: Connection reset by peer)
18:54:24 dschrempf joins (~dominik@mobiledyn-62-240-134-11.mrsn.at)
19:02:11 alexhandy joins (~AndChat62@user/trace)
19:03:01 × alexhandy quits (~AndChat62@user/trace) (Read error: Connection reset by peer)
19:04:34 × winny quits (~weechat@user/winny) (Ping timeout: 240 seconds)
19:05:40 jakalx parts (~jakalx@base.jakalx.net) ()
19:05:49 jakalx joins (~jakalx@base.jakalx.net)
19:07:08 winny joins (~weechat@user/winny)
19:12:34 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 240 seconds)
19:12:42 × dschrempf quits (~dominik@mobiledyn-62-240-134-11.mrsn.at) (Quit: WeeChat 3.5)
19:13:13 × califax quits (~califax@user/califx) (Remote host closed the connection)
19:13:37 califax joins (~califax@user/califx)
19:16:13 tromp joins (~textual@dhcp-077-249-230-040.chello.nl)
19:17:30 × califax quits (~califax@user/califx) (Remote host closed the connection)
19:17:48 alexhandy joins (~AndChat62@user/trace)
19:17:53 × alexhandy quits (~AndChat62@user/trace) (Read error: Connection reset by peer)
19:17:54 califax joins (~califax@user/califx)
19:18:19 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Remote host closed the connection)
19:18:51 ChaiTRex joins (~ChaiTRex@user/chaitrex)
19:21:02 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
19:22:00 × acidjnk quits (~acidjnk@p200300d0c7068b05152244a3055ced6a.dip0.t-ipconnect.de) (Ping timeout: 248 seconds)
19:25:38 jmdaemon joins (~jmdaemon@user/jmdaemon)
19:28:00 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:9528:58d5:850d:37ed) (Remote host closed the connection)
19:33:49 sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
19:34:46 <BusConscious> are there any constants defined in haskell for possible values of FileMode in System.Posix.Types if I don't want to use FFI?
19:38:54 <EvanR> I see some here https://hackage.haskell.org/package/unix-2.7.2.2/docs/System-Posix-Files.html
19:39:36 × tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
19:40:59 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 246 seconds)
19:41:00 tromp joins (~textual@dhcp-077-249-230-040.chello.nl)
19:42:16 <BusConscious> EvanR thanks that's what i was looking for
19:47:42 zebrag joins (~chris@user/zebrag)
19:49:56 pleo joins (~pleo@user/pleo)
19:50:58 × jmdaemon quits (~jmdaemon@user/jmdaemon) (Quit: ZNC 1.8.2 - https://znc.in)
19:52:12 jmdaemon joins (~jmdaemon@user/jmdaemon)
19:55:41 alexhandy joins (~AndChat62@user/trace)
19:56:47 × heinz9 quits (~trace@user/trace) (Ping timeout: 252 seconds)
19:56:51 × alexhandy quits (~AndChat62@user/trace) (Read error: Connection reset by peer)
19:57:30 heinz9 joins (~trace@user/trace)
19:59:11 × bontaq quits (~user@ool-45779fe5.dyn.optonline.net) (Ping timeout: 258 seconds)
19:59:14 × _ht quits (~quassel@231-169-21-31.ftth.glasoperator.nl) (Remote host closed the connection)
19:59:30 heinz19 joins (~trace@user/trace)
20:01:45 × heinz9 quits (~trace@user/trace) (Ping timeout: 244 seconds)
20:03:50 × lyle quits (~lyle@104.246.145.85) (Quit: WeeChat 3.5)
20:05:07 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:9528:58d5:850d:37ed)
20:05:43 Midjak joins (~Midjak@82.66.147.146)
20:10:21 × tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
20:15:41 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:9528:58d5:850d:37ed) (Remote host closed the connection)
20:15:53 × takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
20:16:56 × sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Remote host closed the connection)
20:17:44 pretty_d1 joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
20:17:50 × pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Ping timeout: 240 seconds)
20:18:19 pavonia joins (~user@user/siracusa)
20:19:11 waleee joins (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340)
20:27:12 mixfix41 joins (~sdenynine@user/mixfix41)
20:27:39 kayvank joins (~user@52-119-115-185.PUBLIC.monkeybrains.net)
20:31:18 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
20:32:04 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:9528:58d5:850d:37ed)
20:39:31 × pretty_d1 quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.5)
20:39:47 pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
20:40:43 Guest27 joins (~Guest27@2601:281:d47f:1590::2df)
20:40:51 × Guest27 quits (~Guest27@2601:281:d47f:1590::2df) (Client Quit)
20:41:34 × jmdaemon quits (~jmdaemon@user/jmdaemon) (Quit: ZNC 1.8.2 - https://znc.in)
20:41:51 × lisbeths quits (uid135845@id-135845.lymington.irccloud.com) (Quit: Connection closed for inactivity)
20:46:34 nate4 joins (~nate@98.45.169.16)
20:46:37 slaydr joins (~slaydr@75.164.63.238)
20:50:45 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 256 seconds)
20:51:34 × bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 240 seconds)
20:56:52 × son0p quits (~ff@181.136.122.143) (Ping timeout: 272 seconds)
20:58:14 × slaydr quits (~slaydr@75.164.63.238) (Quit: Leaving)
20:58:40 quarkyalice joins (~quarkyali@user/quarkyalice)
20:59:59 × bliminse quits (~bliminse@host86-164-164-134.range86-164.btcentralplus.com) (Quit: leaving)
21:03:35 bliminse joins (~bliminse@host86-164-164-134.range86-164.btcentralplus.com)
21:05:02 × pleo quits (~pleo@user/pleo) (Quit: quit)
21:06:56 alexhandy joins (~AndChat62@user/trace)
21:08:18 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:9528:58d5:850d:37ed) (Remote host closed the connection)
21:09:11 × alexhandy quits (~AndChat62@user/trace) (Read error: Connection reset by peer)
21:11:19 × BusConscious quits (~martin@95.90.207.249) (Quit: leaving)
21:11:50 × alp__ quits (~alp@user/alp) (Ping timeout: 240 seconds)
21:15:02 × yrlnry quits (~yrlnry@pool-108-2-150-109.phlapa.fios.verizon.net) (Read error: Connection reset by peer)
21:15:08 \yrlnry joins (~yrlnry@pool-108-2-150-109.phlapa.fios.verizon.net)
21:15:55 Feuermagier joins (~Feuermagi@user/feuermagier)
21:16:59 tromp joins (~textual@dhcp-077-249-230-040.chello.nl)
21:20:50 × Cupcakus quits (~Cupcakus@c-73-205-77-141.hsd1.fl.comcast.net) (Ping timeout: 258 seconds)
21:22:09 jmdaemon joins (~jmdaemon@user/jmdaemon)
21:25:14 pleo joins (~pleo@user/pleo)
21:33:36 Cupcakus joins (~Cupcakus@c-73-205-77-141.hsd1.fl.comcast.net)
21:37:43 alexhandy joins (~AndChat62@user/trace)
21:40:16 jinsun joins (~jinsun@user/jinsun)
21:40:47 × jinsun quits (~jinsun@user/jinsun) (Read error: Connection reset by peer)
21:41:04 jinsun joins (~jinsun@user/jinsun)
21:41:25 jinsun___ joins (~jinsun@user/jinsun)
21:41:55 × jinsun___ quits (~jinsun@user/jinsun) (Read error: Connection reset by peer)
21:42:13 jinsun___ joins (~jinsun@user/jinsun)
21:43:07 Haskelytic joins (~Haskelyti@118.179.211.17)
21:44:22 × jinsun__ quits (~jinsun@user/jinsun) (Ping timeout: 272 seconds)
21:45:38 × jinsun quits (~jinsun@user/jinsun) (Ping timeout: 255 seconds)
21:46:48 jinsun joins (~jinsun@user/jinsun)
21:48:29 × geekosaur quits (~geekosaur@xmonad/geekosaur) (Quit: Leaving)
21:48:42 × nate4 quits (~nate@98.45.169.16) (Ping timeout: 244 seconds)
21:48:46 jinsun__ joins (~jinsun@user/jinsun)
21:49:09 × tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
21:49:46 geekosaur joins (~geekosaur@xmonad/geekosaur)
21:50:12 × jinsun___ quits (~jinsun@user/jinsun) (Ping timeout: 276 seconds)
21:51:29 × jinsun quits (~jinsun@user/jinsun) (Ping timeout: 255 seconds)
21:52:39 tfeb joins (~tfb@88.98.95.237)
21:52:50 × werneta quits (~werneta@137.79.231.39) (Ping timeout: 244 seconds)
21:53:49 × tfeb quits (~tfb@88.98.95.237) (Client Quit)
21:55:01 × __monty__ quits (~toonn@user/toonn) (Quit: leaving)
21:55:01 werneta joins (~werneta@137.79.237.183)
21:58:09 alp__ joins (~alp@user/alp)
21:59:36 × michalz quits (~michalz@185.246.204.105) (Remote host closed the connection)
22:03:13 <dsal> Does anyone know of a thing to asciify characters? e.g. ñ -> n ?
22:05:58 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:9528:58d5:850d:37ed)
22:07:30 <geekosaur> I think iconv has a mode to do that
22:07:50 <geekosaur> $ echo abc ß α € àḃç | iconv -f UTF-8 -t ASCII//TRANSLIT
22:07:50 <geekosaur> abc ss ? EUR abc
22:08:45 <dsal> Neat. Thanks.
22:10:24 <dsal> That makes ü -> "u
22:10:27 <dsal> But it's pretty close.
22:11:51 <geekosaur> surprised it's not ue, given what it does to ß
22:12:29 <dsal> Yeah. it was a bit weird.
22:13:20 <kaol> ü is used in more languages than DE and it may not be correct for them.
22:13:55 <geekosaur> but arguably "u is correct for none o them
22:13:56 <dsal> It's pretty close. I can always toss some special cases in before calling the lib.
22:13:58 <geekosaur> *of
22:14:31 × gmg quits (~user@user/gehmehgeh) (Quit: Leaving)
22:15:02 × Haskelytic quits (~Haskelyti@118.179.211.17) (Quit: Client closed)
22:16:31 <dsal> That gave me a pointer into my codebase that specifically avoids iconv on macos (where I tried it) for some reason. Might be related. In any case, turns out I've got a lib I need. :)
22:16:38 <EvanR> ñ -> n is also incorrect xD
22:18:04 <hpc> there's probably some locale thing you can do to make the necessary tweaks?
22:18:05 <geekosaur> you're going to lose regardless with any downconversion to ascii
22:18:36 <geekosaur> macos's iconv is different
22:18:42 <hpc> stuff that applies to unicode with a zillion ambiguous special cases always has locales involved somewhere
22:19:00 <geekosaur> it's an old bsd iconv, I don't know if it even supports this much less how well
22:23:34 × cls_ quits (~cls@chalk.lubutu.com) (Quit: leaving)
22:29:48 Pickchea joins (~private@user/pickchea)
22:31:44 × zeenk quits (~zeenk@2a02:2f04:a013:9000:e45d:7fb3:ec71:e806) (Quit: Konversation terminated!)
22:32:01 × Pickchea quits (~private@user/pickchea) (Remote host closed the connection)
22:35:36 × jgeerds quits (~jgeerds@55d45f48.access.ecotel.net) (Ping timeout: 248 seconds)
22:36:56 × ezzieyguywuf quits (~Unknown@user/ezzieyguywuf) (Ping timeout: 272 seconds)
22:44:26 × Alex_test quits (~al_test@178.34.150.200) (Quit: ;-)
22:45:45 × AlexZenon quits (~alzenon@178.34.150.200) (Quit: ;-)
22:46:00 × AlexNoo quits (~AlexNoo@178.34.150.200) (Quit: Leaving)
22:49:50 × Cupcakus quits (~Cupcakus@c-73-205-77-141.hsd1.fl.comcast.net) (Ping timeout: 240 seconds)
23:02:59 × pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.5)
23:04:37 son0p joins (~ff@181.136.122.143)
23:10:10 <sayola> is there some way to have ghc pick whatever works whenever types are ambiguous?
23:10:40 <sayola> like it does for some prelude classes like Show
23:12:14 fserucas joins (~fserucas@119.65.114.89.rev.vodafone.pt)
23:12:24 × alp__ quits (~alp@user/alp) (Ping timeout: 244 seconds)
23:12:48 <geekosaur> I presume yiou're talking about defaulting. ExtendedDefaultRules allows it to work for more typeclasses, but it still has to involve a typeclass and it still has to resolve to a type listed in a `default` declaration (defaulting to (Integer,Double))
23:13:36 <geekosaur> and giving ghc too much rope will cause it to default to something useless like unit/()
23:15:39 <EvanR> I'm afraid "whatever works" would act like javascript
23:16:06 <EvanR> because it would do something, I then "works" was a lie
23:16:11 <EvanR> and then
23:17:57 × dcoutts quits (~duncan@host86-167-216-251.range86-167.btcentralplus.com) (Ping timeout: 276 seconds)
23:19:22 <geekosaur> yep
23:19:41 <geekosaur> and no, there's no "escape to javascript" mode
23:20:10 × Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 240 seconds)
23:20:24 Lord_of_Life joins (~Lord@user/lord-of-life/x-2819915)
23:24:11 × jinsun__ quits (~jinsun@user/jinsun) (Ping timeout: 255 seconds)
23:25:12 × gurkenglas quits (~gurkengla@dslb-084-057-085-111.084.057.pools.vodafone-ip.de) (Ping timeout: 248 seconds)
23:25:29 <sayola> aww :>
23:27:16 dcoutts joins (~duncan@host86-150-18-15.range86-150.btcentralplus.com)
23:27:19 <sayola> i think i have to look into defaulting a bit more. so far, ExtendedDefaultRules picked defaults that didnt even work, even though there is at least one combination of types that do work.
23:27:39 <geekosaur> I did say it will probably pick (), which is useless
23:28:07 <geekosaur> it does not have every type in the program at its disposal, it has only what you declare in a `defaults` declaration, as I already said
23:28:16 <geekosaur> sorry,m `default` declaration
23:28:31 <sayola> yes, thats what i have to look into.
23:29:12 × Midjak quits (~Midjak@82.66.147.146) (Quit: This computer has gone to sleep)
23:30:41 <sayola> oh and with not work, i meant it picks types that then dont fit any instance anymore for a user-defined class. so it fails compiling, not just pick useless stuff.
23:32:22 <sayola> i wish it would at least pick useless stuff
23:34:00 <geekosaur> it's going to fail compiling anyway, because this is haskell
23:36:10 <sayola> it works just fine when i annotate all types D:
23:36:16 <geekosaur> yes
23:36:56 <geekosaur> most things can be inferred. some can't and you end up adding an annotation somewhere. you might show your code…
23:37:00 <geekosaur> @where paste
23:37:00 <lambdabot> Help us help you: please paste full code, input and/or output at e.g. https://paste.tomsmeding.com
23:42:27 × [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 240 seconds)
23:43:52 <sayola> nice paste site
23:43:56 <sayola> https://paste.tomsmeding.com/pubYHDCU
23:44:19 <sayola> its kinda madness. but wanna figure out how far i can take it.
23:46:05 × quarkyalice quits (~quarkyali@user/quarkyalice) (Quit: quarkyalice)
23:46:22 <sayola> also tried some fundeps, but it made the instances illegal, since they are not all implying much
23:46:37 [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470)
23:47:40 <sayola> the test is on purpose pointless. its just about whether it would compile at all.
23:48:02 × notzmv quits (~zmv@user/notzmv) (Ping timeout: 258 seconds)
23:49:44 <sayola> making the test work without all the type annotations is what i'm looking into right now
23:50:28 mvk joins (~mvk@2607:fea8:5ce3:8500::4588)
23:50:32 × pleo quits (~pleo@user/pleo) (Ping timeout: 260 seconds)
23:50:39 × chexum quits (~quassel@gateway/tor-sasl/chexum) (Quit: No Ping reply in 180 seconds.)
23:52:21 chexum joins (~quassel@gateway/tor-sasl/chexum)
23:52:59 × machinedgod quits (~machinedg@66.244.246.252) (Ping timeout: 246 seconds)
23:59:38 vicfred joins (~vicfred@user/vicfred)
23:59:47 × heinz19 quits (~trace@user/trace) (Remote host closed the connection)

All times are in UTC on 2022-06-17.