2024/07/06

2024-07-06 00:00:40 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-07-06 00:08:17 +0200rdcdr(~rdcdr@user/rdcdr)
2024-07-06 00:18:11 +0200rdcdr(~rdcdr@user/rdcdr) (Quit: ZNC 1.8.2+deb3.1 - https://znc.in)
2024-07-06 00:18:35 +0200rdcdr(~rdcdr@user/rdcdr)
2024-07-06 00:19:17 +0200 <monochrom> Nice algorithm :)
2024-07-06 00:27:46 +0200 <int-e> It even has names attached to it: https://en.wikipedia.org/wiki/Fisher%E2%80%93Yates_shuffle
2024-07-06 00:29:57 +0200rdcdr(~rdcdr@user/rdcdr) (Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in)
2024-07-06 00:31:09 +0200rdcdr(~rdcdr@user/rdcdr)
2024-07-06 00:50:02 +0200takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2024-07-06 00:56:19 +0200acidjnk_new3(~acidjnk@p200300d6e72cfb277d28f4d2e7a5b949.dip0.t-ipconnect.de) (Ping timeout: 268 seconds)
2024-07-06 01:02:51 +0200Square(~Square@user/square)
2024-07-06 01:03:37 +0200rdcdr(~rdcdr@user/rdcdr) (Read error: Connection reset by peer)
2024-07-06 01:03:48 +0200rdcdr_(~rdcdr@75-172-0-68.tukw.qwest.net)
2024-07-06 01:21:52 +0200robotsnowfall(~robotsnow@user/robotsnowfall) (Quit: ZNC 1.9.1 - https://znc.in)
2024-07-06 01:22:04 +0200rdcdr_(~rdcdr@75-172-0-68.tukw.qwest.net) (Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in)
2024-07-06 01:22:31 +0200robotsnowfall(~robotsnow@user/robotsnowfall)
2024-07-06 01:26:00 +0200 <hololeap> I've got a little utility I made which runs an external program, and it's supposed to dump the output of stdout and stderr directly to the terminal. it works, but is only outputting in real time if I run it with `cabal repl src-exe/Main.hs`
2024-07-06 01:26:15 +0200 <hololeap> I tried putting this as the first line of main: forM_ [stdout,stderr] (`hSetBuffering` NoBuffering)
2024-07-06 01:26:35 +0200 <hololeap> but it still only works properly in the repl
2024-07-06 01:30:21 +0200 <hololeap> does that mean that something else (perhaps a library I'm using) is undoing my hSetBuffering, or is there something else I should be aware of?
2024-07-06 01:30:51 +0200 <geekosaur> the program you run itself might be buffering; see `man 1 stdbuf`
2024-07-06 01:31:05 +0200sawilagar(~sawilagar@user/sawilagar) (Ping timeout: 256 seconds)
2024-07-06 01:33:19 +0200 <mauke> how are you running the program?
2024-07-06 01:37:35 +0200 <hololeap> it doesn't seem like /usr/bin/stdbuf -o0 -e0 ... made a difference
2024-07-06 01:38:34 +0200 <hololeap> mauke: I've tried sourceProcessWithStreams from conduit-extra, and readProcessWithExitCode from System.Process
2024-07-06 01:39:23 +0200 <hololeap> I'm using { std_out = UseHandle stdout, std_err = UseHandle stderr }
2024-07-06 01:40:18 +0200 <mauke> ok, that's the inner layer. how are you running the haskell program?
2024-07-06 01:40:44 +0200 <hololeap> $(cabal list-bin exe:vid-dl)
2024-07-06 01:41:09 +0200 <hololeap> should I try stdbuf on that?
2024-07-06 01:41:27 +0200 <hololeap> stdbuf -o0 -e0 $(cabal list-bin exe:vid-dl)
2024-07-06 01:41:44 +0200 <mauke> readProcessWithExitCode captures output
2024-07-06 01:41:56 +0200 <mauke> I don't see how that would write directly to the terminal
2024-07-06 01:42:19 +0200 <hololeap> oh, good point. that wouldn't help
2024-07-06 01:42:34 +0200rdcdr(~rdcdr@user/rdcdr)
2024-07-06 01:43:02 +0200 <mauke> sourceProcessWithStreams also captures output
2024-07-06 01:43:03 +0200 <geekosaur> stdbuf won't work (or won't work well) with Haskell programs because they don't use C's stdio layer
2024-07-06 01:43:04 +0200 <hololeap> I probably wanted createProcess
2024-07-06 01:44:04 +0200 <hololeap> I was obviously confused when I wrote this
2024-07-06 01:44:11 +0200 <mauke> createProcess also captures output
2024-07-06 01:44:32 +0200 <mauke> ok, that's actually optional
2024-07-06 01:44:36 +0200 <mauke> but why not just callProcess?
2024-07-06 01:45:38 +0200 <hololeap> simply because I don't want to have an exception raised if it's a non-zero exit
2024-07-06 01:46:01 +0200 <hololeap> I want to print the exit code and continue a loop
2024-07-06 01:46:21 +0200 <mauke> ah, I see
2024-07-06 01:46:36 +0200ystael(~ystael@user/ystael) (Ping timeout: 252 seconds)
2024-07-06 01:47:38 +0200 <mauke> rawSystem it is
2024-07-06 01:48:52 +0200 <mauke> I like how rawSystem is "deprecated", but has no equivalent elsewhere in System.Process
2024-07-06 01:50:11 +0200 <mauke> and the semantics of CmdSpec are undocumented
2024-07-06 01:54:50 +0200 <mauke> I wonder if manually importing posix_spawn via the FFI would be actually easier
2024-07-06 01:58:08 +0200 <hololeap> ok, I got it working. it's literally this simple: (\exe args -> withCreateProcess (proc exe args) (\_ _ _ -> waitForProcess)) :: FilePath -> [String] -> IO ExitCode
2024-07-06 01:58:13 +0200 <geekosaur> have you looked in System.Posix.Process?
2024-07-06 01:59:15 +0200 <hololeap> I didn't need conduit or stdbuf
2024-07-06 01:59:57 +0200 <hololeap> or even modifying the CreateProcess record
2024-07-06 02:00:11 +0200ystael(~ystael@user/ystael)
2024-07-06 02:00:28 +0200rdcdr(~rdcdr@user/rdcdr) (Ping timeout: 256 seconds)
2024-07-06 02:01:03 +0200rdcdr(~rdcdr@user/rdcdr)
2024-07-06 02:05:49 +0200 <mauke> geekosaur: that's a bit too low-level
2024-07-06 02:06:55 +0200 <geekosaur> I know a lot of System.Process has proved to be problematic on Windows and OS X (apparently has a very broken posix_spawn)
2024-07-06 02:18:20 +0200ystael(~ystael@user/ystael) (Ping timeout: 268 seconds)
2024-07-06 02:45:29 +0200bilegeek(~bilegeek@2600:1008:b020:db13:a3c9:729:3fa4:976b)
2024-07-06 03:01:24 +0200waleee(~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 252 seconds)
2024-07-06 03:04:16 +0200tabemann__(~tabemann@2600:1700:7990:24e0:2727:c00:50bb:6a1f) (Remote host closed the connection)
2024-07-06 03:04:31 +0200tabemann__(~tabemann@2600:1700:7990:24e0:bdf5:2044:ddb4:b631)
2024-07-06 03:09:23 +0200Tuplanolla(~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) (Quit: Leaving.)
2024-07-06 03:15:29 +0200benjaminl(~benjaminl@user/benjaminl) (Remote host closed the connection)
2024-07-06 03:16:20 +0200benjaminl(~benjaminl@user/benjaminl)
2024-07-06 03:29:47 +0200puke(~puke@user/puke) (Remote host closed the connection)
2024-07-06 03:30:34 +0200puke(~puke@user/puke)
2024-07-06 03:52:38 +0200 <dmj`> geekosaur: libuv would be nice to fix that
2024-07-06 03:53:30 +0200 <geekosaur> I don't think ghc hq is in a big hurry to rewrite the entire I/O manager around libuv
2024-07-06 04:11:39 +0200EvanR(~EvanR@user/evanr) (Ping timeout: 264 seconds)
2024-07-06 04:16:23 +0200gmg(~user@user/gehmehgeh) (Quit: Leaving)
2024-07-06 04:27:52 +0200 <dmj`> geekosaur: yea, probably not possible at this point
2024-07-06 04:37:27 +0200td_(~td@i53870914.versanet.de) (Ping timeout: 264 seconds)
2024-07-06 04:38:56 +0200td_(~td@i53870914.versanet.de)
2024-07-06 04:40:07 +0200nitrix(~nitrix@user/meow/nitrix) (Quit: ZNC 1.8.2 - https://znc.in)
2024-07-06 04:41:33 +0200nitrix(~nitrix@user/meow/nitrix)
2024-07-06 04:47:53 +0200EvanR(~EvanR@user/evanr)
2024-07-06 04:49:17 +0200Nosrep(~Nosrep@user/nosrep)
2024-07-06 04:58:30 +0200dysthesis(~dysthesis@user/dysthesis) (Ping timeout: 260 seconds)
2024-07-06 05:02:21 +0200 <elevenkb> (psu
2024-07-06 05:02:26 +0200 <elevenkb> sorry, that was a mistake
2024-07-06 05:14:24 +0200aforemny_(~aforemny@i59F516DC.versanet.de) (Ping timeout: 255 seconds)
2024-07-06 05:14:43 +0200aforemny(~aforemny@i59F516F8.versanet.de)
2024-07-06 05:50:48 +0200joeyadams(~joeyadams@2603:6010:5100:2ed:1747:e0ef:9722:78b4)
2024-07-06 06:00:15 +0200machinedgod(~machinedg@d173-183-246-216.abhsia.telus.net)
2024-07-06 06:19:11 +0200img(~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in)
2024-07-06 06:19:31 +0200img(~img@user/img)
2024-07-06 06:21:54 +0200img(~img@user/img) (Client Quit)
2024-07-06 06:23:13 +0200img(~img@user/img)
2024-07-06 06:55:09 +0200Square(~Square@user/square) (Ping timeout: 252 seconds)
2024-07-06 07:03:50 +0200RedFlamingos(~RedFlamin@user/RedFlamingos)
2024-07-06 07:06:50 +0200tcard_(~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303)
2024-07-06 07:07:08 +0200tcard(~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303) (Read error: Connection reset by peer)
2024-07-06 07:08:38 +0200joeyadams(~joeyadams@2603:6010:5100:2ed:1747:e0ef:9722:78b4) (Quit: Leaving)
2024-07-06 07:37:13 +0200bilegeek(~bilegeek@2600:1008:b020:db13:a3c9:729:3fa4:976b) (Quit: Leaving)
2024-07-06 07:41:07 +0200machinedgod(~machinedg@d173-183-246-216.abhsia.telus.net) (Ping timeout: 256 seconds)
2024-07-06 07:46:39 +0200Nosrep(~Nosrep@user/nosrep) (Remote host closed the connection)
2024-07-06 07:46:58 +0200Nosrep(~Nosrep@user/nosrep)
2024-07-06 08:08:47 +0200mikess(~mikess@user/mikess) (Ping timeout: 260 seconds)
2024-07-06 08:14:44 +0200Hobbyboy(Hobbyboy@hobbyboy.co.uk) (Quit: The BNC has broken!)
2024-07-06 08:16:24 +0200Hobbyboy(Hobbyboy@hobbyboy.co.uk)
2024-07-06 08:35:25 +0200takuan(~takuan@178-116-218-225.access.telenet.be)
2024-07-06 08:55:10 +0200Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2024-07-06 09:02:35 +0200rosco(~rosco@175.136.155.137)
2024-07-06 09:15:03 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-07-06 09:17:33 +0200euphores(~SASL_euph@user/euphores) (Quit: Leaving.)
2024-07-06 09:19:40 +0200cheater_(~Username@user/cheater)
2024-07-06 09:20:08 +0200misterfish(~misterfis@84.53.85.146) (Ping timeout: 268 seconds)
2024-07-06 09:20:46 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com)
2024-07-06 09:24:10 +0200cheater(~Username@user/cheater) (Ping timeout: 256 seconds)
2024-07-06 09:24:46 +0200cheater__(~Username@user/cheater)
2024-07-06 09:24:46 +0200cheater__cheater
2024-07-06 09:25:22 +0200euphores(~SASL_euph@user/euphores)
2024-07-06 09:26:03 +0200cheater_(~Username@user/cheater) (Ping timeout: 264 seconds)
2024-07-06 09:27:49 +0200acidjnk_new3(~acidjnk@p200300d6e72cfb095950fe712033b3ec.dip0.t-ipconnect.de)
2024-07-06 09:43:11 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 272 seconds)
2024-07-06 09:53:24 +0200asdf(~asdf@2001:e68:5402:cc8c:dc3e:2139:d601:c4e1)
2024-07-06 09:55:54 +0200KaitoDaumoto(~asdf@user/kaitodaumoto) (Ping timeout: 268 seconds)
2024-07-06 10:03:41 +0200paddymahoney(~paddymaho@pool-99-250-30-88.cpe.net.cable.rogers.com) (Remote host closed the connection)
2024-07-06 10:14:14 +0200paddymahoney(~paddymaho@pool-99-250-30-88.cpe.net.cable.rogers.com)
2024-07-06 10:27:29 +0200paddymahoney(~paddymaho@pool-99-250-30-88.cpe.net.cable.rogers.com) (Quit: Leaving)
2024-07-06 10:34:30 +0200tolt(~weechat-h@li219-154.members.linode.com) (Quit: WeeChat 4.2.2)
2024-07-06 10:34:40 +0200gmg(~user@user/gehmehgeh)
2024-07-06 10:34:54 +0200tolt(~weechat-h@li219-154.members.linode.com)
2024-07-06 10:38:05 +0200rvalue-(~rvalue@user/rvalue)
2024-07-06 10:38:46 +0200rvalue(~rvalue@user/rvalue) (Ping timeout: 268 seconds)
2024-07-06 10:42:07 +0200rvalue-rvalue
2024-07-06 10:42:45 +0200kmein(~weechat@user/kmein) (Quit: ciao kakao)
2024-07-06 10:44:53 +0200kmein(~weechat@user/kmein)
2024-07-06 10:54:29 +0200dysthesis(~dysthesis@user/dysthesis)
2024-07-06 11:05:01 +0200L29Ah(~L29Ah@wikipedia/L29Ah) (Read error: Connection reset by peer)
2024-07-06 11:10:50 +0200tabaqui(~root@87.201.238.61) (Ping timeout: 268 seconds)
2024-07-06 11:12:20 +0200Tuplanolla(~Tuplanoll@91-159-69-59.elisa-laajakaista.fi)
2024-07-06 11:20:30 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-07-06 11:21:50 +0200FragByte(~christian@user/fragbyte)
2024-07-06 11:24:51 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 264 seconds)
2024-07-06 11:25:24 +0200euleritian(~euleritia@dynamic-176-002-128-025.176.2.pool.telefonica.de)
2024-07-06 11:26:00 +0200comonad(~comonad@p200300d02713e4006c810324fa66ca70.dip0.t-ipconnect.de) (Ping timeout: 256 seconds)
2024-07-06 11:26:58 +0200FragByte(~christian@user/fragbyte) (Quit: Quit)
2024-07-06 11:27:35 +0200comonad(~comonad@p200300d027032c0082816d0f21936a9a.dip0.t-ipconnect.de)
2024-07-06 11:28:04 +0200tabaqui(~root@87.200.123.114)
2024-07-06 11:41:57 +0200L29Ah(~L29Ah@wikipedia/L29Ah)
2024-07-06 11:43:06 +0200califax(~califax@user/califx) (Remote host closed the connection)
2024-07-06 11:44:32 +0200califax(~califax@user/califx)
2024-07-06 11:46:37 +0200pie_(~pie_bnc@user/pie/x-2818909) (Remote host closed the connection)
2024-07-06 11:54:38 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-07-06 12:06:07 +0200sawilagar(~sawilagar@user/sawilagar)
2024-07-06 12:10:21 +0200rosco(~rosco@175.136.155.137) (Quit: Lost terminal)
2024-07-06 12:10:38 +0200lxsameer(~lxsameer@Serene/lxsameer)
2024-07-06 12:13:03 +0200wootehfoot(~wootehfoo@user/wootehfoot)
2024-07-06 12:15:09 +0200wootehfoot(~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer)
2024-07-06 12:15:35 +0200wootehfoot(~wootehfoo@user/wootehfoot)
2024-07-06 12:17:38 +0200wootehfoot(~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer)
2024-07-06 12:21:21 +0200wootehfoot(~wootehfoo@user/wootehfoot)
2024-07-06 12:25:46 +0200wootehfoot(~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer)
2024-07-06 12:50:11 +0200pie_(~pie_bnc@user/pie/x-2818909)
2024-07-06 12:56:35 +0200pie_(~pie_bnc@user/pie/x-2818909) (Remote host closed the connection)
2024-07-06 12:59:10 +0200pie_(~pie_bnc@user/pie/x-2818909)
2024-07-06 13:04:12 +0200asdf(~asdf@2001:e68:5402:cc8c:dc3e:2139:d601:c4e1) (Remote host closed the connection)
2024-07-06 13:06:02 +0200target_i(~target_i@user/target-i/x-6023099)
2024-07-06 13:28:52 +0200euleritian(~euleritia@dynamic-176-002-128-025.176.2.pool.telefonica.de) (Read error: Connection reset by peer)
2024-07-06 13:29:09 +0200euleritian(~euleritia@77.22.252.56)
2024-07-06 13:35:48 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-07-06 13:36:02 +0200dysthesis(~dysthesis@user/dysthesis) (Ping timeout: 260 seconds)
2024-07-06 13:38:50 +0200tomboy64(~tomboy64@user/tomboy64) (Ping timeout: 268 seconds)
2024-07-06 13:42:48 +0200tomboy64(~tomboy64@user/tomboy64)
2024-07-06 13:42:49 +0200euleritian(~euleritia@77.22.252.56) (Read error: Connection reset by peer)
2024-07-06 13:43:33 +0200euleritian(~euleritia@77.22.252.56)
2024-07-06 13:52:48 +0200danza(~francesco@151.47.223.172)
2024-07-06 14:06:54 +0200euleritian(~euleritia@77.22.252.56) (Ping timeout: 252 seconds)
2024-07-06 14:07:12 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-07-06 14:21:15 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
2024-07-06 14:22:11 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-07-06 14:22:24 +0200nek0(~nek0@user/nek0) (Quit: The Lounge - https://thelounge.chat)
2024-07-06 14:26:37 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 268 seconds)
2024-07-06 14:27:15 +0200lxsameer(~lxsameer@Serene/lxsameer) (Ping timeout: 264 seconds)
2024-07-06 14:28:27 +0200euleritian(~euleritia@77.22.252.56)
2024-07-06 14:29:45 +0200waleee(~waleee@h-176-10-144-38.NA.cust.bahnhof.se)
2024-07-06 14:32:51 +0200euleritian(~euleritia@77.22.252.56) (Ping timeout: 260 seconds)
2024-07-06 14:33:49 +0200euleritian(~euleritia@77.22.252.56)
2024-07-06 14:38:48 +0200rdcdr(~rdcdr@user/rdcdr) (Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in)
2024-07-06 14:38:53 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-07-06 14:50:21 +0200rdcdr(~rdcdr@user/rdcdr)
2024-07-06 14:53:58 +0200waleee(~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 256 seconds)
2024-07-06 15:03:13 +0200rdcdr(~rdcdr@user/rdcdr) (Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in)
2024-07-06 15:03:39 +0200rdcdr(~rdcdr@user/rdcdr)
2024-07-06 15:05:34 +0200Ashkan(~Ashkan@147.161.173.72)
2024-07-06 15:16:01 +0200Ashkan(~Ashkan@147.161.173.72) (Quit: Client closed)
2024-07-06 15:28:32 +0200euleritian(~euleritia@77.22.252.56) (Ping timeout: 256 seconds)
2024-07-06 15:29:27 +0200euleritian(~euleritia@dynamic-176-007-151-089.176.7.pool.telefonica.de)
2024-07-06 15:34:51 +0200xdminsy(~xdminsy@117.147.70.231) (Quit: Konversation terminated!)
2024-07-06 15:35:23 +0200xdminsy(~xdminsy@117.147.70.231)
2024-07-06 15:36:38 +0200euleritian(~euleritia@dynamic-176-007-151-089.176.7.pool.telefonica.de) (Read error: Connection reset by peer)
2024-07-06 15:36:56 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-07-06 15:43:54 +0200misterfish(~misterfis@84.53.85.146)
2024-07-06 15:47:19 +0200danza(~francesco@151.47.223.172) (Quit: Leaving)
2024-07-06 15:52:40 +0200cpressey(~weechat@176.254.71.203)
2024-07-06 15:57:54 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 255 seconds)
2024-07-06 15:58:24 +0200euleritian(~euleritia@dynamic-176-007-151-089.176.7.pool.telefonica.de)
2024-07-06 16:01:35 +0200cpressey(~weechat@176.254.71.203) (Ping timeout: 268 seconds)
2024-07-06 16:03:31 +0200rdcdr(~rdcdr@user/rdcdr) (Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in)
2024-07-06 16:12:27 +0200euleritian(~euleritia@dynamic-176-007-151-089.176.7.pool.telefonica.de) (Read error: Connection reset by peer)
2024-07-06 16:12:49 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-07-06 16:46:23 +0200euphores(~SASL_euph@user/euphores) (Quit: Leaving.)
2024-07-06 16:48:46 +0200mikess(~mikess@user/mikess)
2024-07-06 16:52:50 +0200cpressey(~weechat@176.254.71.203)
2024-07-06 16:56:41 +0200euphores(~SASL_euph@user/euphores)
2024-07-06 17:00:15 +0200hammond(proscan@user/hammond2) (Remote host closed the connection)
2024-07-06 17:05:39 +0200acidjnk_new3(~acidjnk@p200300d6e72cfb095950fe712033b3ec.dip0.t-ipconnect.de) (Ping timeout: 264 seconds)
2024-07-06 17:16:43 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
2024-07-06 17:17:30 +0200euleritian(~euleritia@dynamic-176-007-151-089.176.7.pool.telefonica.de)
2024-07-06 17:17:54 +0200euleritian(~euleritia@dynamic-176-007-151-089.176.7.pool.telefonica.de) (Read error: Connection reset by peer)
2024-07-06 17:18:11 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-07-06 17:18:18 +0200ubert1(~Thunderbi@p200300ecdf008f0f0a6872e022c3958c.dip0.t-ipconnect.de)
2024-07-06 17:18:59 +0200ubert(~Thunderbi@p200300ecdf008f96cbf35d83d33dbb30.dip0.t-ipconnect.de) (Ping timeout: 268 seconds)
2024-07-06 17:18:59 +0200ubert1ubert
2024-07-06 17:19:04 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
2024-07-06 17:19:45 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-07-06 17:32:31 +0200 <Nosrep> what should tagToEnum# do when it receives an invalid tag (e.g. 3 for Bool)? I feel like it should crash but there's so many cases where it just doesn't and they're so common I feel like if it's not intentional someone should have noticed
2024-07-06 17:32:41 +0200 <Nosrep> or am I completely misunderstanding what tags do
2024-07-06 17:37:39 +0200tinjamin(~tinjamin@banshee.h4x0r.space) (Quit: The Lounge - https://thelounge.chat)
2024-07-06 17:38:44 +0200tinjamin(~tinjamin@banshee.h4x0r.space)
2024-07-06 17:40:52 +0200leah2(~leah@vuxu.org) (Ping timeout: 246 seconds)
2024-07-06 17:58:05 +0200 <monochrom> I believe that it is just unsafe but zero-cost type coercion.
2024-07-06 17:58:13 +0200acidjnk_new3(~acidjnk@p200300d6e72cfb093425c6d62513a139.dip0.t-ipconnect.de)
2024-07-06 17:58:27 +0200 <monochrom> I mean the very intention.
2024-07-06 18:03:40 +0200 <Nosrep> unsafe as in it might segfault or unsafe as in c-style undefined behavior where it might not do what you'd expect
2024-07-06 18:04:34 +0200 <monochrom> undefined behaviour
2024-07-06 18:06:17 +0200 <Nosrep> oof
2024-07-06 18:07:44 +0200machinedgod(~machinedg@d173-183-246-216.abhsia.telus.net)
2024-07-06 18:11:05 +0200pavonia(~user@user/siracusa) (Quit: Bye!)
2024-07-06 18:19:43 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 268 seconds)
2024-07-06 18:20:50 +0200euleritian(~euleritia@dynamic-176-007-151-089.176.7.pool.telefonica.de)
2024-07-06 18:22:09 +0200soverysour(~soverysou@81.196.150.219)
2024-07-06 18:22:10 +0200soverysour(~soverysou@81.196.150.219) (Changing host)
2024-07-06 18:22:10 +0200soverysour(~soverysou@user/soverysour)
2024-07-06 18:24:31 +0200euleritian(~euleritia@dynamic-176-007-151-089.176.7.pool.telefonica.de) (Read error: Connection reset by peer)
2024-07-06 18:25:04 +0200euleritian(~euleritia@dynamic-176-007-151-089.176.7.pool.telefonica.de)
2024-07-06 18:25:31 +0200 <probie> Does anyone have strong opinions on pretty printing libraries? Is there a reason to not just use use prettyprinter?
2024-07-06 18:29:59 +0200 <haskellbridge> <sm> I don't know prettyprinter, but the ones I've tried have/had limitations. pretty-show was easy but couldn't print Day values. pretty-simple is what I currently use, its layout is sometimes not optimal
2024-07-06 18:30:12 +0200yin(~yin@user/zero)
2024-07-06 18:38:01 +0200leah2(~leah@vuxu.org)
2024-07-06 18:42:48 +0200 <monochrom> I just use prettyprinter. If it does what you want, you can just use it too.
2024-07-06 18:43:29 +0200 <monochrom> But evidently everyone has a strong opinion on everything, this is why there are so many alternatives for everything on hackage.
2024-07-06 18:43:58 +0200Square(~Square@user/square)
2024-07-06 18:44:02 +0200jjnkn(~jjnkn@46.150.73.156.lvv.nat.volia.net)
2024-07-06 18:44:03 +0200 <monochrom> Like even lenses have 3 offerings for what is supposed to be very difficult to offer.
2024-07-06 18:45:51 +0200 <monochrom> <--- Waiting for someone to upload a competitor to Agda to hackage to complete my point >:)
2024-07-06 18:47:11 +0200 <probie> Agda is the competitor, they just uploaded it to hackage instead of opam
2024-07-06 18:47:28 +0200 <monochrom> Sorry, what is opam?
2024-07-06 18:47:49 +0200 <monochrom> Ah Ocaml's. heh
2024-07-06 18:48:16 +0200 <monochrom> But I side with Lean.
2024-07-06 18:49:40 +0200cpressey(~weechat@176.254.71.203) (Ping timeout: 256 seconds)
2024-07-06 18:50:18 +0200euleritian(~euleritia@dynamic-176-007-151-089.176.7.pool.telefonica.de) (Read error: Connection reset by peer)
2024-07-06 18:50:35 +0200euleritian(~euleritia@77.22.252.56)
2024-07-06 18:51:28 +0200 <jjnkn> I'm having a little trouble with quantified data constructors. Please see the attached snippet. I don't understand why `h` is universally quantified with `k1`, but not `k` which is present in the return type. https://plaster.tymoon.eu/view/4479#4479
2024-07-06 18:54:08 +0200 <monochrom> Yes Haskell 2010 (and before) requires that the two k's are unrelated, just because they are in different sigs. The solution is ScopedTypeVariables (enabled by default with recent GHC versions), and you say "g :: forall k. M k => k Fun".
2024-07-06 18:57:13 +0200 <jjnkn> I changed the signature of `g` to what you proposed (with explicit quantification) and it compiled even without ScopedTypeVariables. That's surprising. I thought universal quantification is implicit...
2024-07-06 18:57:16 +0200econo_(uid147250@id-147250.tinside.irccloud.com)
2024-07-06 18:57:51 +0200 <monochrom> Yes, universal quantification is implicit. That proves, not contradicts, why the two k's are unrelated.
2024-07-06 18:58:38 +0200cpressey(~weechat@176.254.71.203)
2024-07-06 18:58:54 +0200 <jjnkn> Why did explicit quantification make it compile, then?
2024-07-06 18:59:31 +0200 <monochrom> "g :: ∀k ... " and "h :: ∀k ..." therefore two independent k's.
2024-07-06 19:02:22 +0200euleritian(~euleritia@77.22.252.56) (Ping timeout: 264 seconds)
2024-07-06 19:02:23 +0200 <jjnkn> So there are 4 combinations of explicit/implicit quant. for `g` and `h`, but only one compiles - explicit `g` and implicit `h`. I don't see why implicit `g` doesn't.
2024-07-06 19:02:25 +0200leah2(~leah@vuxu.org) (Ping timeout: 246 seconds)
2024-07-06 19:02:31 +0200 <monochrom> The designer of ScopedTypeVariables decided to use an explict quantifier syntax to activate scoped type variables so that there is backward compatibility with still using Haskell 2010 rules on older code.
2024-07-06 19:02:33 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-07-06 19:03:31 +0200 <jjnkn> As I mentioned, I did not enable ScopedTypeVariables
2024-07-06 19:03:37 +0200 <monochrom> I will just refer you to https://downloads.haskell.org/ghc/latest/docs/users_guide/exts/scoped_type_variables.html
2024-07-06 19:04:13 +0200 <jjnkn> Ah, now I see that you mentioned it's enabled by default in recent GHC versions
2024-07-06 19:05:46 +0200Tisoxin(~Ikosit@user/ikosit) (Quit: The Lounge - https://thelounge.chat)
2024-07-06 19:05:58 +0200Tisoxin(~Ikosit@user/ikosit)
2024-07-06 19:12:33 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 272 seconds)
2024-07-06 19:13:14 +0200euleritian(~euleritia@dynamic-176-007-151-089.176.7.pool.telefonica.de)
2024-07-06 19:14:11 +0200lxsameer(~lxsameer@Serene/lxsameer)
2024-07-06 19:16:40 +0200euphores(~SASL_euph@user/euphores) (Quit: Leaving.)
2024-07-06 19:20:29 +0200euleritian(~euleritia@dynamic-176-007-151-089.176.7.pool.telefonica.de) (Read error: Connection reset by peer)
2024-07-06 19:20:48 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-07-06 19:22:08 +0200L29Ah(~L29Ah@wikipedia/L29Ah) ()
2024-07-06 19:22:41 +0200cpressey(~weechat@176.254.71.203) (Ping timeout: 272 seconds)
2024-07-06 19:26:36 +0200puke(~puke@user/puke) (Remote host closed the connection)
2024-07-06 19:27:12 +0200euphores(~SASL_euph@user/euphores)
2024-07-06 19:27:18 +0200puke(~puke@user/puke)
2024-07-06 19:27:19 +0200Square(~Square@user/square) (Ping timeout: 260 seconds)
2024-07-06 19:29:04 +0200emm(~emm@user/edmeme)
2024-07-06 19:29:20 +0200rdcdr(~rdcdr@user/rdcdr)
2024-07-06 19:29:49 +0200rdcdr(~rdcdr@user/rdcdr) (Client Quit)
2024-07-06 19:32:29 +0200soverysour(~soverysou@user/soverysour) (Ping timeout: 268 seconds)
2024-07-06 19:32:39 +0200phma(phma@2001:5b0:210f:75d8:5712:dd76:7969:de0f) (Read error: Connection reset by peer)
2024-07-06 19:32:56 +0200rdcdr(~rdcdr@user/rdcdr)
2024-07-06 19:33:33 +0200phma(~phma@host-67-44-208-74.hnremote.net)
2024-07-06 19:34:39 +0200soverysour(~soverysou@user/soverysour)
2024-07-06 19:40:42 +0200emm(~emm@user/edmeme) (Ping timeout: 256 seconds)
2024-07-06 19:43:35 +0200TactfulCitrus(~al@2a02:8012:87a6:0:fbe0:6116:6e30:e047) (Ping timeout: 268 seconds)
2024-07-06 19:44:09 +0200rdcdr(~rdcdr@user/rdcdr) (Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in)
2024-07-06 19:46:23 +0200rdcdr(~rdcdr@user/rdcdr)
2024-07-06 19:47:11 +0200leah2(~leah@vuxu.org)
2024-07-06 19:47:11 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
2024-07-06 19:47:49 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-07-06 19:48:38 +0200soverysour(~soverysou@user/soverysour) (Ping timeout: 256 seconds)
2024-07-06 19:48:59 +0200L29Ah(~L29Ah@wikipedia/L29Ah)
2024-07-06 19:51:37 +0200rdcdr(~rdcdr@user/rdcdr) (Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in)
2024-07-06 19:55:50 +0200Sgeo(~Sgeo@user/sgeo)
2024-07-06 19:57:21 +0200rdcdr(~rdcdr@user/rdcdr)
2024-07-06 20:14:26 +0200yin(~yin@user/zero) (Ping timeout: 268 seconds)
2024-07-06 20:17:03 +0200xerox(~edi@user/edi) (Ping timeout: 252 seconds)
2024-07-06 20:17:50 +0200xerox(~edi@user/edi)
2024-07-06 20:20:03 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 264 seconds)
2024-07-06 20:20:09 +0200cpressey(~weechat@176.254.71.203)
2024-07-06 20:22:26 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2024-07-06 20:24:34 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 264 seconds)
2024-07-06 20:25:02 +0200euleritian(~euleritia@dynamic-176-007-151-089.176.7.pool.telefonica.de)
2024-07-06 20:26:04 +0200jjnkn(~jjnkn@46.150.73.156.lvv.nat.volia.net) (Ping timeout: 246 seconds)
2024-07-06 20:27:24 +0200emm(~emm@user/edmeme)
2024-07-06 20:28:54 +0200__monty__(~toonn@user/toonn)
2024-07-06 20:29:01 +0200codaraxis(~codaraxis@user/codaraxis)
2024-07-06 20:31:19 +0200female_student_5(~female_st@host-80-42-135-218.as13285.net)
2024-07-06 20:31:31 +0200 <female_student_5> Hi, im trying to run this haskell code
2024-07-06 20:31:36 +0200 <female_student_5> https://stackoverflow.com/questions/55635083/how-to-make-an-infinite-list-of-a-z-concatenated-with…
2024-07-06 20:31:43 +0200 <female_student_5> I literally put this into cmd
2024-07-06 20:31:49 +0200 <female_student_5> https://stackoverflow.com/questions/55635083/how-to-make-an-infinite-list-of-a-z-concatenated-with…
2024-07-06 20:31:51 +0200 <female_student_5> wait
2024-07-06 20:31:57 +0200 <female_student_5> this into cmd: Prelude> let variables = [l:show x | x <- [1..], l <- ['a'..'z']]
2024-07-06 20:32:02 +0200 <female_student_5> And it just says indentation error
2024-07-06 20:32:05 +0200 <female_student_5> I dont get why
2024-07-06 20:32:39 +0200codaraxis__(~codaraxis@user/codaraxis) (Ping timeout: 264 seconds)
2024-07-06 20:34:32 +0200cpressey(~weechat@176.254.71.203) (Quit: WeeChat 4.3.0)
2024-07-06 20:34:36 +0200 <ncf> hopefully you didn't literally type Prelude> at the REPL
2024-07-06 20:35:33 +0200 <__monty__> female_student_5: Cmd as in the Windows command prompt?
2024-07-06 20:35:40 +0200 <female_student_5> even when I dont do Prelude> it doesnt work
2024-07-06 20:35:54 +0200 <female_student_5> __monty__ yes
2024-07-06 20:36:32 +0200 <__monty__> female_student_5: Did you install Haskell? Probably in the form of the Haskell Platform, since you're on Windows.
2024-07-06 20:36:51 +0200 <__monty__> Or is ghcup recommended on Windows too nowadays?
2024-07-06 20:37:09 +0200 <female_student_5> yes I have haskell
2024-07-06 20:37:17 +0200 <female_student_5> I tried it for another function in my code and it works
2024-07-06 20:37:40 +0200 <female_student_5> Prelude> let variables = [l:show x | x <- [1..], l <- ['a'..'z']]
2024-07-06 20:37:40 +0200 <female_student_5> Prelude> take 100 variables - this line just doesnt work at all
2024-07-06 20:37:48 +0200 <female_student_5> <interactive>:1:73: error:
2024-07-06 20:37:49 +0200 <female_student_5>     parse error (possibly incorrect indentation or mismatched brackets)
2024-07-06 20:37:55 +0200 <female_student_5> I just get this same error all the time
2024-07-06 20:38:33 +0200 <__monty__> Oh, so in GHCi, not just on the Windows command prompt, gotcha.
2024-07-06 20:38:59 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
2024-07-06 20:39:01 +0200 <__monty__> Try `take 3 [1..]`.
2024-07-06 20:39:48 +0200 <female_student_5> yeah that works
2024-07-06 20:40:17 +0200 <female_student_5> YES THAT WORKS THANK YOU
2024-07-06 20:40:25 +0200TMA(tma@twin.jikos.cz) (Ping timeout: 246 seconds)
2024-07-06 20:40:41 +0200 <__monty__> Do you get a result if you simply enter `variables`?
2024-07-06 20:41:55 +0200soverysour(~soverysou@81.196.150.219)
2024-07-06 20:41:56 +0200soverysour(~soverysou@81.196.150.219) (Changing host)
2024-07-06 20:41:56 +0200soverysour(~soverysou@user/soverysour)
2024-07-06 20:42:18 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com)
2024-07-06 20:42:22 +0200TMA(tma@twin.jikos.cz)
2024-07-06 20:43:02 +0200 <female_student_5> no
2024-07-06 20:43:29 +0200 <female_student_5> ghci> variables
2024-07-06 20:43:30 +0200 <female_student_5> ghci> take 100 variables
2024-07-06 20:43:30 +0200 <female_student_5> <interactive>:5:10: error: Variable not in scope: variables :: [a]
2024-07-06 20:43:47 +0200 <__monty__> So it hasn't been defined for some reason.
2024-07-06 20:44:13 +0200 <__monty__> Maybe you had a syntax error in the definition?
2024-07-06 20:47:12 +0200 <female_student_5> let me reload the file
2024-07-06 20:47:16 +0200 <female_student_5> I adjusted the code a bit
2024-07-06 20:47:54 +0200 <female_student_5> noe
2024-07-06 20:47:55 +0200 <female_student_5> nope
2024-07-06 20:47:56 +0200 <__monty__> If you pastebin the code it'd be a lot easier to help.
2024-07-06 20:47:58 +0200 <female_student_5> Still throws an error