2024/05/25

2024-05-25 00:01:27 +0000TheCoffeMaker(~TheCoffeM@user/thecoffemaker) (Excess Flood)
2024-05-25 00:02:07 +0000TheCoffeMaker(~TheCoffeM@user/thecoffemaker)
2024-05-25 00:02:09 +0000fizbin__(~fizbin@user/fizbin)
2024-05-25 00:04:36 +0000TheCoffeMaker(~TheCoffeM@user/thecoffemaker) (Excess Flood)
2024-05-25 00:05:23 +0000Luj(~Luj@2a01:e0a:de4:a0e1:be24:11ff:febc:b5b5) (Quit: The Lounge - https://thelounge.chat)
2024-05-25 00:05:48 +0000TheCoffeMaker(~TheCoffeM@user/thecoffemaker)
2024-05-25 00:06:07 +0000Luj(~Luj@2a01:e0a:de4:a0e1:be24:11ff:febc:b5b5)
2024-05-25 00:09:51 +0000justsomeguy(~justsomeg@user/justsomeguy)
2024-05-25 00:12:45 +0000gmg(~user@user/gehmehgeh) (Quit: Leaving)
2024-05-25 00:18:47 +0000Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 260 seconds)
2024-05-25 00:19:02 +0000Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2024-05-25 00:21:43 +0000Luj(~Luj@2a01:e0a:de4:a0e1:be24:11ff:febc:b5b5) (Quit: The Lounge - https://thelounge.chat)
2024-05-25 00:22:10 +0000diagnostics0(~diagnosti@38.22.211.237)
2024-05-25 00:22:18 +0000Luj(~Luj@2a01:e0a:de4:a0e1:be24:11ff:febc:b5b5)
2024-05-25 00:22:36 +0000diagnostics0(~diagnosti@38.22.211.237) (Quit: diagnostics0)
2024-05-25 00:23:04 +0000diagnostics0(~diagnosti@38.22.211.237)
2024-05-25 00:36:13 +0000TheCoffeMaker_(~TheCoffeM@200.114.213.75)
2024-05-25 00:36:29 +0000TheCoffeMaker(~TheCoffeM@user/thecoffemaker) (Ping timeout: 240 seconds)
2024-05-25 00:46:59 +0000diagnostics0(~diagnosti@38.22.211.237) (Quit: diagnostics0)
2024-05-25 00:51:21 +0000terrorjack(~terrorjac@2a01:4f8:c17:87f8::) (Quit: The Lounge - https://thelounge.chat)
2024-05-25 00:54:16 +0000terrorjack(~terrorjac@2a01:4f8:c17:87f8::)
2024-05-25 01:00:04 +0000TheCoffeMaker_(~TheCoffeM@200.114.213.75) (Read error: Connection reset by peer)
2024-05-25 01:00:50 +0000talismanick(~user@2601:644:937c:ed10::ae5)
2024-05-25 01:01:34 +0000TheCoffeMaker(~TheCoffeM@user/thecoffemaker)
2024-05-25 01:03:01 +0000CrunchyFlakes(~CrunchyFl@146.52.130.128) (Ping timeout: 255 seconds)
2024-05-25 01:04:09 +0000CrunchyFlakes(~CrunchyFl@ip92348280.dynamic.kabel-deutschland.de)
2024-05-25 01:06:29 +0000Square2(~Square@user/square) (Ping timeout: 240 seconds)
2024-05-25 01:24:04 +0000diagnostics0(~diagnosti@38.22.211.237)
2024-05-25 01:24:15 +0000diagnostics0(~diagnosti@38.22.211.237) (Remote host closed the connection)
2024-05-25 01:24:36 +0000diagnostics0(~diagnosti@38.22.211.237)
2024-05-25 01:26:05 +0000RedFlamingos(~RedFlamin@user/RedFlamingos) (Quit: RedFlamingos)
2024-05-25 01:29:23 +0000diagnostics0(~diagnosti@38.22.211.237) (Ping timeout: 264 seconds)
2024-05-25 01:30:54 +0000waleee(~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 268 seconds)
2024-05-25 01:42:28 +0000Midjak(~MarciZ@82.66.147.146) (Quit: This computer has gone to sleep)
2024-05-25 01:53:38 +0000raehik(~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net)
2024-05-25 01:57:25 +0000otto_s(~user@p5de2f772.dip0.t-ipconnect.de) (Ping timeout: 268 seconds)
2024-05-25 01:58:55 +0000otto_s(~user@p5de2f67f.dip0.t-ipconnect.de)
2024-05-25 02:00:02 +0000fliife(~fliife@user/fliife) (Quit: ZNC 1.8.2+deb2build5 - https://znc.in)
2024-05-25 02:00:49 +0000fliife(~fliife@user/fliife)
2024-05-25 02:07:58 +0000 <cpli> is there some (define-syntax prepend-a- [...] ) which transforms (prepend-a- proc) into (a-proc)?
2024-05-25 02:08:40 +0000 <glguy> In Haskell?
2024-05-25 02:38:40 +0000dolio(~dolio@130.44.134.54) (Quit: ZNC 1.8.2 - https://znc.in)
2024-05-25 02:43:03 +0000troydm(~troydm@user/troydm) (Ping timeout: 268 seconds)
2024-05-25 02:44:26 +0000dolio(~dolio@130.44.134.54)
2024-05-25 02:44:47 +0000dolio(~dolio@130.44.134.54) (Client Quit)
2024-05-25 02:48:09 +0000dolio(~dolio@130.44.134.54)
2024-05-25 02:52:55 +0000fizbin__(~fizbin@user/fizbin) (Ping timeout: 268 seconds)
2024-05-25 02:56:59 +0000ystael(~ystael@user/ystael) (Ping timeout: 260 seconds)
2024-05-25 02:59:46 +0000td_(~td@i53870918.versanet.de) (Ping timeout: 256 seconds)
2024-05-25 03:01:45 +0000td_(~td@i53870937.versanet.de)
2024-05-25 03:06:42 +0000dolio(~dolio@130.44.134.54) (Quit: ZNC 1.8.2 - https://znc.in)
2024-05-25 03:14:25 +0000dolio(~dolio@130.44.134.54)
2024-05-25 03:25:19 +0000philopsos1(~caecilius@user/philopsos)
2024-05-25 03:28:40 +0000fizbin__(~fizbin@user/fizbin)
2024-05-25 03:31:25 +0000dolio(~dolio@130.44.134.54) (Quit: ZNC 1.8.2 - https://znc.in)
2024-05-25 03:40:37 +0000dolio(~dolio@130.44.134.54)
2024-05-25 03:46:24 +0000xigua(~xigua@user/xigua) (Read error: Connection reset by peer)
2024-05-25 03:46:38 +0000xigua(~xigua@user/xigua)
2024-05-25 03:51:35 +0000dolio(~dolio@130.44.134.54) (Quit: ZNC 1.8.2 - https://znc.in)
2024-05-25 03:53:53 +0000dolio(~dolio@130.44.134.54)
2024-05-25 04:05:17 +0000philopsos1(~caecilius@user/philopsos) (Ping timeout: 240 seconds)
2024-05-25 04:08:24 +0000dolio(~dolio@130.44.134.54) (Quit: ZNC 1.8.2 - https://znc.in)
2024-05-25 04:10:41 +0000dolio(~dolio@130.44.134.54)
2024-05-25 04:21:58 +0000phma(~phma@host-67-44-208-17.hnremote.net) (Read error: Connection reset by peer)
2024-05-25 04:27:41 +0000fizbin__(~fizbin@user/fizbin) (Ping timeout: 240 seconds)
2024-05-25 04:30:12 +0000phma(~phma@host-67-44-208-55.hnremote.net)
2024-05-25 04:45:07 +0000peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com)
2024-05-25 04:53:59 +0000raehik(~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) (Ping timeout: 264 seconds)
2024-05-25 04:55:41 +0000takuan(~takuan@178-116-218-225.access.telenet.be)
2024-05-25 05:01:20 +0000machinedgod(~machinedg@d173-183-246-216.abhsia.telus.net) (Ping timeout: 260 seconds)
2024-05-25 05:15:12 +0000peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Remote host closed the connection)
2024-05-25 05:19:22 +0000peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com)
2024-05-25 05:29:23 +0000quark17(~quark17@125-237-181-192-adsl.sparkbb.co.nz)
2024-05-25 05:31:07 +0000peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Remote host closed the connection)
2024-05-25 05:33:44 +0000peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com)
2024-05-25 05:56:23 +0000oo_miguel(~Thunderbi@78-11-181-16.static.ip.netia.com.pl)
2024-05-25 06:03:41 +0000jle`(~jle`@2603:8001:3b02:84d4:f1eb:615d:e4c3:d09c) (Ping timeout: 240 seconds)
2024-05-25 06:04:48 +0000jle`(~jle`@2603:8001:3b02:84d4:f047:2251:133c:1d1c)
2024-05-25 06:17:29 +0000burnsidesLlama(~burnsides@119247164140.ctinets.com)
2024-05-25 06:17:30 +0000burnsidesLlama(~burnsides@119247164140.ctinets.com) (Client Quit)
2024-05-25 06:18:14 +0000quark17(~quark17@125-237-181-192-adsl.sparkbb.co.nz) (Quit: Connection closed)
2024-05-25 06:20:52 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-05-25 06:32:29 +0000peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 240 seconds)
2024-05-25 06:33:49 +0000Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2024-05-25 06:42:54 +0000euphores(~SASL_euph@user/euphores) (Quit: Leaving.)
2024-05-25 06:44:15 +0000oo_miguel(~Thunderbi@78-11-181-16.static.ip.netia.com.pl) (Ping timeout: 260 seconds)
2024-05-25 06:53:42 +0000euphores(~SASL_euph@user/euphores)
2024-05-25 06:56:42 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-05-25 06:58:11 +0000rvalue(~rvalue@user/rvalue) (Ping timeout: 264 seconds)
2024-05-25 07:04:11 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 264 seconds)
2024-05-25 07:04:33 +0000euleritian(~euleritia@dynamic-176-006-195-061.176.6.pool.telefonica.de)
2024-05-25 07:10:41 +0000troydm(~troydm@user/troydm)
2024-05-25 07:16:49 +0000rvalue(~rvalue@user/rvalue)
2024-05-25 07:17:23 +0000poscat(~poscat@user/poscat) (Ping timeout: 264 seconds)
2024-05-25 07:18:33 +0000jrm(~jrm@user/jrm) (Quit: ciao)
2024-05-25 07:18:56 +0000jrm(~jrm@user/jrm)
2024-05-25 07:19:21 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-05-25 07:20:02 +0000ChaiTRex(~ChaiTRex@user/chaitrex) (Remote host closed the connection)
2024-05-25 07:20:56 +0000ChaiTRex(~ChaiTRex@user/chaitrex)
2024-05-25 07:21:55 +0000euleritian(~euleritia@dynamic-176-006-195-061.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
2024-05-25 07:22:37 +0000euleritian(~euleritia@77.22.252.56)
2024-05-25 07:24:55 +0000euleritian(~euleritia@77.22.252.56) (Read error: Connection reset by peer)
2024-05-25 07:25:14 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-05-25 07:26:06 +0000ChaiTRex(~ChaiTRex@user/chaitrex) (Remote host closed the connection)
2024-05-25 07:26:31 +0000acidjnk(~acidjnk@p200300d6e714dc042020e32aab5643b9.dip0.t-ipconnect.de)
2024-05-25 07:27:23 +0000ChaiTRex(~ChaiTRex@user/chaitrex)
2024-05-25 07:30:36 +0000poscat(~poscat@user/poscat)
2024-05-25 07:31:17 +0000Pixi(~Pixi@user/pixi) (Ping timeout: 240 seconds)
2024-05-25 07:40:40 +0000tzh(~tzh@c-76-115-131-146.hsd1.or.comcast.net) (Quit: zzz)
2024-05-25 07:51:59 +0000Pixi(~Pixi@user/pixi)
2024-05-25 07:53:58 +0000titibandit(~user@user/titibandit)
2024-05-25 07:59:18 +0000__monty__(~toonn@user/toonn)
2024-05-25 07:59:18 +0000Tuplanolla(~Tuplanoll@91-159-69-59.elisa-laajakaista.fi)
2024-05-25 08:00:59 +0000gmg(~user@user/gehmehgeh)
2024-05-25 08:15:48 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-05-25 08:17:14 +0000gmg(~user@user/gehmehgeh) (Ping timeout: 260 seconds)
2024-05-25 08:17:56 +0000gmg(~user@user/gehmehgeh)
2024-05-25 08:18:35 +0000Maxdamantus(~Maxdamant@user/maxdamantus) (Ping timeout: 264 seconds)
2024-05-25 08:21:17 +0000 <tomsmeding> cpli: there is template haskell, with which you could define a thing so that $(prependA 'proc) becomes a reference to `aProc`
2024-05-25 08:22:51 +0000 <tomsmeding> prependA name = return (VarE (mkName ("a" ++ nameBase name))) -- using `import Language.Haskell.TH` from "template-haskell"
2024-05-25 08:22:55 +0000Maxdamantus(~Maxdamant@user/maxdamantus)
2024-05-25 08:23:05 +0000 <tomsmeding> of course that doesn't capitalise the 'P' but that's an exercise to the reader :)
2024-05-25 08:33:35 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
2024-05-25 08:34:14 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-05-25 08:35:47 +0000 <ski> (`define-syntax' is Scheme, fwiw)
2024-05-25 08:54:14 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
2024-05-25 09:06:12 +0000euleritian(~euleritia@77.22.252.56)
2024-05-25 09:07:14 +0000euphores(~SASL_euph@user/euphores) (Ping timeout: 268 seconds)
2024-05-25 09:08:46 +0000L29Ah(~L29Ah@wikipedia/L29Ah)
2024-05-25 09:10:52 +0000mreh(~matthew@host86-160-168-107.range86-160.btcentralplus.com)
2024-05-25 09:13:01 +0000 <mreh> I was looking for a canonical example of concurrent haskell and I've just tried running the `Synchronisation with locks` example in here https://wiki.haskell.org/Haskell_for_multicores but I don't see any speedup at all. In fact it's slower for me.
2024-05-25 09:13:43 +0000 <sm> sounds about right :)
2024-05-25 09:14:25 +0000 <mreh> It's also slower than if I run it single threaded and fork subshells to run it.
2024-05-25 09:15:14 +0000 <Rembane> mreh: Can you show us your code?
2024-05-25 09:15:43 +0000 <mreh> Rembane: it's there under the heading `Synchronisation with locks`.
2024-05-25 09:15:49 +0000 <mreh> I've just cut and paste
2024-05-25 09:16:11 +0000 <Rembane> mreh: Thank you!
2024-05-25 09:16:36 +0000 <mreh> I dumped it into a stack project. Maybe I need to look and see what compile flags precisely stack is using..
2024-05-25 09:17:48 +0000 <mreh> I've got `-threaded -rtsopts -with-rtsopts=-N` in my package.yaml for the executable.
2024-05-25 09:18:33 +0000lxsameer(~lxsameer@Serene/lxsameer)
2024-05-25 09:18:36 +0000 <mreh> CPU utilisation goes up to X00% where X is roughly equal to the number of threads spawned (= to the number of arguments passed)
2024-05-25 09:19:06 +0000 <mreh> GC time in the output of `+RTS -s` is practically nothing.
2024-05-25 09:21:31 +0000ChaiTRex(~ChaiTRex@user/chaitrex) (Remote host closed the connection)
2024-05-25 09:22:03 +0000ChaiTRex(~ChaiTRex@user/chaitrex)
2024-05-25 09:25:22 +0000 <mreh> Okay, I just tried again and removed a modification I forgot I made. I had removed the bang pattern and stuck in h `seq` putMVar str (f ++ ": " ++ h)
2024-05-25 09:25:39 +0000 <mreh> did I need to use `evaluate` there?
2024-05-25 09:27:37 +0000 <tomsmeding> inside IO it's always prudent to use `evaluate`
2024-05-25 09:28:12 +0000 <tomsmeding> mreh: how long is that process running?
2024-05-25 09:28:17 +0000rvalue(~rvalue@user/rvalue) (Ping timeout: 252 seconds)
2024-05-25 09:28:33 +0000 <tomsmeding> if it's too short, GHC might not get the opportunity to reschedule the forkIO'd threads to separate cores
2024-05-25 09:29:13 +0000 <tomsmeding> oh you said that cpu utilisation goes up to X00%
2024-05-25 09:29:34 +0000 <tomsmeding> that is odd in combination with the rest
2024-05-25 09:30:27 +0000 <mreh> yeah, which is why I never suspected and strictness problem
2024-05-25 09:30:39 +0000 <mreh> or, laziness problem.. ahem
2024-05-25 09:31:08 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-05-25 09:35:29 +0000ACuriousMoose0(~ACuriousM@142.68.181.38)
2024-05-25 09:35:33 +0000ACuriousMoose(~ACuriousM@142.68.181.38) (Ping timeout: 255 seconds)
2024-05-25 09:35:33 +0000ACuriousMoose0ACuriousMoose
2024-05-25 09:38:17 +0000rvalue(~rvalue@user/rvalue)
2024-05-25 09:45:22 +0000 <mreh> Okay, so it scales well while I add more than 2 threads, but there's a huge jump in mutator time between +RTS -N1 and +RTS -N2
2024-05-25 09:45:37 +0000 <mreh> It goes from 2s to 6 seconds
2024-05-25 09:45:56 +0000wootehfoot(~wootehfoo@user/wootehfoot)
2024-05-25 09:47:45 +0000 <mreh> This is running the code under `Synchronisation with locks` as it was written on here https://wiki.haskell.org/Haskell_for_multicores
2024-05-25 09:55:57 +0000euleritian(~euleritia@77.22.252.56) (Read error: Connection reset by peer)
2024-05-25 09:56:04 +0000euleritian(~euleritia@77.22.252.56)
2024-05-25 10:08:59 +0000econo_(uid147250@id-147250.tinside.irccloud.com) (Quit: Connection closed for inactivity)
2024-05-25 10:13:19 +0000target_i(~target_i@user/target-i/x-6023099)
2024-05-25 10:19:08 +0000euleritian(~euleritia@77.22.252.56) (Read error: Connection reset by peer)
2024-05-25 10:19:47 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-05-25 10:26:48 +0000L29Ah(~L29Ah@wikipedia/L29Ah) (Read error: Connection reset by peer)
2024-05-25 10:48:48 +0000emmanuelux(~emmanuelu@user/emmanuelux)
2024-05-25 10:53:03 +0000danza(~francesco@151.57.252.139)
2024-05-25 10:54:50 +0000danza(~francesco@151.57.252.139) (Remote host closed the connection)
2024-05-25 10:55:14 +0000danza(~francesco@151.57.252.139)
2024-05-25 10:57:56 +0000mreh(~matthew@host86-160-168-107.range86-160.btcentralplus.com) (Ping timeout: 252 seconds)
2024-05-25 11:07:00 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
2024-05-25 11:07:41 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-05-25 11:08:47 +0000danza(~francesco@151.57.252.139) (Remote host closed the connection)
2024-05-25 11:08:54 +0000danza(~francesco@151.57.252.139)
2024-05-25 11:12:05 +0000justsomeguy(~justsomeg@user/justsomeguy) (Ping timeout: 240 seconds)
2024-05-25 11:14:21 +0000L29Ah(~L29Ah@wikipedia/L29Ah)
2024-05-25 11:16:55 +0000patrl(~patrl@user/patrl) (Read error: Connection reset by peer)
2024-05-25 11:17:09 +0000patrl(~patrl@user/patrl)
2024-05-25 11:21:27 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 260 seconds)
2024-05-25 11:21:27 +0000L29Ah(~L29Ah@wikipedia/L29Ah) (Read error: Connection reset by peer)
2024-05-25 11:21:34 +0000euleritian(~euleritia@dynamic-176-006-195-061.176.6.pool.telefonica.de)
2024-05-25 11:41:03 +0000acidjnk(~acidjnk@p200300d6e714dc042020e32aab5643b9.dip0.t-ipconnect.de) (Ping timeout: 256 seconds)
2024-05-25 11:41:12 +0000waleee(~waleee@h-176-10-144-38.NA.cust.bahnhof.se)
2024-05-25 11:41:23 +0000Square2(~Square@user/square)
2024-05-25 11:41:26 +0000Midjak(~MarciZ@82.66.147.146)
2024-05-25 11:43:26 +0000Midjak(~MarciZ@82.66.147.146) (Remote host closed the connection)
2024-05-25 11:44:59 +0000tremon(~tremon@83.80.159.219)
2024-05-25 12:08:30 +0000zetef(~quassel@5.14.129.80)
2024-05-25 12:17:10 +0000waleee(~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 268 seconds)
2024-05-25 12:30:30 +0000mei(~mei@user/mei) (Quit: mei)
2024-05-25 12:32:05 +0000mei(~mei@user/mei)
2024-05-25 12:43:06 +0000Luj(~Luj@2a01:e0a:de4:a0e1:be24:11ff:febc:b5b5) (Quit: The Lounge - https://thelounge.chat)
2024-05-25 12:43:41 +0000Luj(~Luj@2a01:e0a:de4:a0e1:be24:11ff:febc:b5b5)
2024-05-25 12:46:52 +0000Luj(~Luj@2a01:e0a:de4:a0e1:be24:11ff:febc:b5b5) (Client Quit)
2024-05-25 12:47:31 +0000Luj(~Luj@2a01:e0a:de4:a0e1:be24:11ff:febc:b5b5)
2024-05-25 12:50:02 +0000acidjnk(~acidjnk@p200300d6e714dc042020e32aab5643b9.dip0.t-ipconnect.de)
2024-05-25 13:02:27 +0000causal(~eric@50.35.88.207) (Quit: WeeChat 4.1.1)
2024-05-25 13:12:16 +0000Square2(~Square@user/square) (Ping timeout: 260 seconds)
2024-05-25 13:33:05 +0000Luj(~Luj@2a01:e0a:de4:a0e1:be24:11ff:febc:b5b5) (Quit: The Lounge - https://thelounge.chat)
2024-05-25 13:33:41 +0000Luj(~Luj@2a01:e0a:de4:a0e1:be24:11ff:febc:b5b5)
2024-05-25 14:07:39 +0000__monty__(~toonn@user/toonn) (Quit: leaving)
2024-05-25 14:08:30 +0000zetef(~quassel@5.14.129.80) (Remote host closed the connection)
2024-05-25 14:10:02 +0000ChaiTRex(~ChaiTRex@user/chaitrex) (Ping timeout: 260 seconds)
2024-05-25 14:12:15 +0000ChaiTRex(~ChaiTRex@user/chaitrex)
2024-05-25 14:18:43 +0000danza_(~francesco@151.37.228.150)
2024-05-25 14:21:17 +0000danza(~francesco@151.57.252.139) (Read error: Connection reset by peer)
2024-05-25 14:25:07 +0000justsomeguy(~justsomeg@user/justsomeguy)
2024-05-25 14:31:39 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-05-25 14:44:23 +0000AlexZenon(~alzenon@5.139.233.209) (Read error: Connection reset by peer)
2024-05-25 14:44:45 +0000AlexZenon(~alzenon@5.139.233.209)
2024-05-25 14:52:40 +0000billchenchina(~billchenc@103.152.35.21)
2024-05-25 14:53:45 +0000diagnostics0(~diagnosti@38.22.211.237)
2024-05-25 14:56:00 +0000euleritian(~euleritia@dynamic-176-006-195-061.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
2024-05-25 14:56:17 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-05-25 14:57:08 +0000edrx(~Eduardo@179-191-223-123.static.sumicity.net.br)
2024-05-25 14:58:44 +0000diagnostics0(~diagnosti@38.22.211.237) (Ping timeout: 268 seconds)
2024-05-25 14:59:35 +0000 <edrx> hi all! I am a basic user of both Haskell and Lean4, and this question originated on Lean, but I would like to know how it can be handled in Haskell too...
2024-05-25 14:59:36 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-05-25 15:01:34 +0000 <edrx> Lean4 has lots of tools for metaprogramming - for example, we can put that in a line a lean program
2024-05-25 15:01:40 +0000 <edrx> run_cmd Lean.logInfo (← Lean.getCurrNamespace)
2024-05-25 15:03:45 +0000 <edrx> and run_cmd will have access to the monads that hold the parsers, the current definitions, etc - and that line will print the current namespace at that point in the window with the logs, warnings, and errors.
2024-05-25 15:04:38 +0000 <edrx> I was trying to use run_cmd to inspect these data structures but they have many fields and many classes
2024-05-25 15:04:50 +0000cawfee(~root@2406:3003:2077:1c50::babe)
2024-05-25 15:05:21 +0000cawfee(~root@2406:3003:2077:1c50::babe) (Client Quit)
2024-05-25 15:05:31 +0000cawfee(~root@2406:3003:2077:1c50::babe)
2024-05-25 15:05:42 +0000cawfee(~root@2406:3003:2077:1c50::babe) (Client Quit)
2024-05-25 15:05:51 +0000cawfee(~root@2406:3003:2077:1c50::babe)
2024-05-25 15:06:32 +0000 <edrx> now the question - that applies to both Lean and Haskell
2024-05-25 15:07:22 +0000 <edrx> suppose that I am trying to debug a program, and I need to inspect an object at a certain point.
2024-05-25 15:09:56 +0000 <edrx> that object has "fields", "subfields", and "subsubfields" - at that point that object, that is ot type Syntax, is of the form "node info kind args", where the constructor "node" is this one...
2024-05-25 15:12:15 +0000 <edrx> oops, sorry - here are links to the definition of the type Syntax and to its constructor node:
2024-05-25 15:12:20 +0000 <edrx> https://github.com/leanprover/lean4/blob/master/src/Init/Prelude.lean#L3685
2024-05-25 15:12:20 +0000 <edrx> https://github.com/leanprover/lean4/blob/master/src/Init/Prelude.lean#L3708
2024-05-25 15:13:18 +0000 <edrx> and I want to inspect the "info" field, that it of type SourceInfo
2024-05-25 15:14:18 +0000 <edrx> and that field is of the form "original leading pos trailing endPos"
2024-05-25 15:14:46 +0000 <edrx> and I want to inspect its field "leading", that is of type Substring
2024-05-25 15:14:54 +0000 <edrx> etc etc
2024-05-25 15:16:47 +0000 <edrx> I do these things a lot in the languages that I use most, that are Lua and Emacs Lisp... but in Haskell and Lean I don't have any idea of how to that in a way that is not very clumsy - like a series of lets and ifs in a do block
2024-05-25 15:17:57 +0000 <edrx> any suggestion? I mean, besides "this is exactly the wrong way of debugging in Haskell"?
2024-05-25 15:20:07 +0000danza_(~francesco@151.37.228.150) (Read error: Connection reset by peer)
2024-05-25 15:37:54 +0000bjorkintosh(~bjork@user/bjorkintosh)
2024-05-25 15:42:26 +0000bitdex(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 260 seconds)
2024-05-25 15:44:25 +0000Luj(~Luj@2a01:e0a:de4:a0e1:be24:11ff:febc:b5b5) (Quit: The Lounge - https://thelounge.chat)
2024-05-25 15:45:02 +0000Luj(~Luj@2a01:e0a:de4:a0e1:be24:11ff:febc:b5b5)
2024-05-25 15:54:24 +0000machinedgod(~machinedg@d173-183-246-216.abhsia.telus.net)
2024-05-25 16:00:43 +0000tremon(~tremon@83.80.159.219) (Remote host closed the connection)
2024-05-25 16:02:38 +0000tremon(~tremon@83.80.159.219)
2024-05-25 16:10:30 +0000 <mauke> edrx: is your question how to access a deeply nested field that may not even exist?
2024-05-25 16:10:56 +0000 <mauke> due to the intermediate structures being sum types
2024-05-25 16:14:39 +0000waleee(~waleee@h-176-10-144-38.NA.cust.bahnhof.se)
2024-05-25 16:15:07 +0000 <mauke> if it's just a one-off thing, you can pattern match arbitrarily deep: case x of { Node (Original s _ _ _) _ _ -> Just s; _ -> Nothing }
2024-05-25 16:15:29 +0000philopsos1(~caecilius@user/philopsos)
2024-05-25 16:15:37 +0000 <mauke> otherwise I'd probably look at lenses/prisms because they're bound to have some operators for this
2024-05-25 16:19:05 +0000L29Ah(~L29Ah@wikipedia/L29Ah)
2024-05-25 16:19:06 +0000L29Ah(~L29Ah@wikipedia/L29Ah) (Read error: Connection reset by peer)
2024-05-25 16:22:11 +0000philopsos1(~caecilius@user/philopsos) (Ping timeout: 264 seconds)
2024-05-25 16:32:56 +0000 <edrx> mauke: yes - formally they may not exist, but I'm in a case in which I know that they exist, so I'd like to reduce the error handling to a mininum...
2024-05-25 16:33:57 +0000 <edrx> mauke: about "case x of { Node (Original s _ _ _) _ _ -> Just s; _ -> Nothing }" - thanks, I had not written the code yet!
2024-05-25 16:35:50 +0000 <mauke> you can also use a pattern on the LHS of a let binding, but if it doesn't actually match at runtime, it'll error
2024-05-25 16:36:16 +0000philopsos1(~caecilius@user/philopsos)
2024-05-25 16:36:31 +0000 <edrx> mauke: in Lean it should be possible to write macros for that, but that's above my skills ATM, so I need to start doing everything by hand
2024-05-25 16:37:23 +0000 <edrx> mauke: so the let acts as a "case" thing with two cases, and the second - that yield an error - is implicit?
2024-05-25 16:38:03 +0000 <mauke> pretty much, but IIRC it's lazy
2024-05-25 16:38:12 +0000 <edrx> mauke: if you have an example of that that will help me a lot
2024-05-25 16:38:21 +0000 <mauke> > let (Just x) = Nothing in length [x, x, x]
2024-05-25 16:38:22 +0000 <lambdabot> 3
2024-05-25 16:38:25 +0000 <mauke> > let (Just x) = Nothing in x
2024-05-25 16:38:27 +0000 <lambdabot> *Exception: <interactive>:3:5-22: Non-exhaustive patterns in Just x
2024-05-25 16:38:33 +0000 <edrx> thanks!!!
2024-05-25 16:39:14 +0000 <edrx> I need to go to a place without internet now but I'll try to digest that =) thanks a lot!!! =)
2024-05-25 16:39:20 +0000edrx(~Eduardo@179-191-223-123.static.sumicity.net.br) (Killed buffer)
2024-05-25 16:40:12 +0000 <mauke> heh, IRCing from emacs
2024-05-25 16:40:19 +0000 <mauke> and/or brazil
2024-05-25 16:40:50 +0000mreh(~matthew@host86-160-168-107.range86-160.btcentralplus.com)
2024-05-25 16:42:44 +0000philopsos1(~caecilius@user/philopsos) (Ping timeout: 260 seconds)
2024-05-25 16:53:45 +0000 <ski> they're an emacser, has advertized some convenience (?) mode in #emacs
2024-05-25 16:55:53 +0000gdown(~gavin@h69-11-149-109.kndrid.broadband.dynamic.tds.net)
2024-05-25 16:56:32 +0000ystael(~ystael@user/ystael)
2024-05-25 17:03:41 +0000mreh(~matthew@host86-160-168-107.range86-160.btcentralplus.com) (Ping timeout: 252 seconds)
2024-05-25 17:04:28 +0000raehik(~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net)
2024-05-25 17:07:48 +0000mud(~mud@user/kadoban) (Quit: quit)
2024-05-25 17:08:35 +0000troydm(~troydm@user/troydm) (Ping timeout: 272 seconds)
2024-05-25 17:11:38 +0000econo_(uid147250@id-147250.tinside.irccloud.com)
2024-05-25 17:14:05 +0000ystael(~ystael@user/ystael) (Ping timeout: 240 seconds)
2024-05-25 17:16:04 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-05-25 17:17:51 +0000Square2(~Square@user/square)
2024-05-25 17:24:06 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-05-25 17:31:26 +0000tzh(~tzh@c-76-115-131-146.hsd1.or.comcast.net)
2024-05-25 18:05:58 +0000pavonia(~user@user/siracusa) (Quit: Bye!)
2024-05-25 18:09:26 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-05-25 18:10:06 +0000gdown(~gavin@h69-11-149-109.kndrid.broadband.dynamic.tds.net) (Remote host closed the connection)
2024-05-25 18:16:50 +0000raehik(~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) (Ping timeout: 252 seconds)
2024-05-25 18:17:14 +0000euphores(~SASL_euph@user/euphores)
2024-05-25 18:19:18 +0000bitdex(~bitdex@gateway/tor-sasl/bitdex)
2024-05-25 18:29:17 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-05-25 18:37:05 +0000tabemann(~tabemann@2600:1700:7990:24e0:1adf:6622:dda2:d177) (Remote host closed the connection)
2024-05-25 18:37:25 +0000tabemann(~tabemann@2600:1700:7990:24e0:ed03:9e52:504:2b59)
2024-05-25 18:43:28 +0000raehik(~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net)
2024-05-25 18:44:27 +0000califax(~califax@user/califx) (Remote host closed the connection)
2024-05-25 18:44:49 +0000califax(~califax@user/califx)
2024-05-25 18:57:23 +0000destituion(~destituio@2a02:2121:607:127a:4f91:ebdf:f515:bca9) (Ping timeout: 256 seconds)
2024-05-25 18:57:45 +0000destituion(~destituio@2001:4644:c37:0:6086:64f4:a213:b80d)
2024-05-25 19:18:21 +0000waleee(~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 268 seconds)
2024-05-25 19:35:03 +0000billchenchina(~billchenc@103.152.35.21) (Remote host closed the connection)
2024-05-25 19:36:53 +0000waleee(~waleee@h-176-10-144-38.NA.cust.bahnhof.se)
2024-05-25 20:14:32 +0000takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2024-05-25 20:16:04 +0000michalz(~michalz@185.246.207.215)
2024-05-25 20:18:28 +0000paddymahoney(~paddymaho@pool-99-250-26-190.cpe.net.cable.rogers.com) (Ping timeout: 256 seconds)
2024-05-25 20:22:11 +0000paddymahoney(~paddymaho@pool-99-250-26-190.cpe.net.cable.rogers.com)
2024-05-25 20:24:26 +0000diagnostics0(~diagnosti@38.22.211.237)
2024-05-25 20:24:41 +0000diagnostics0(~diagnosti@38.22.211.237) (Remote host closed the connection)
2024-05-25 20:25:02 +0000diagnostics0(~diagnosti@38.22.211.237)
2024-05-25 20:25:23 +0000diagnostics0(~diagnosti@38.22.211.237) (Read error: Connection reset by peer)
2024-05-25 20:25:44 +0000diagnostics0(~diagnosti@38.22.211.237)
2024-05-25 20:26:11 +0000diagnostics0(~diagnosti@38.22.211.237) (Remote host closed the connection)
2024-05-25 20:26:28 +0000diagnostics0(~diagnosti@38.22.211.237)
2024-05-25 20:26:49 +0000diagnostics0(~diagnosti@38.22.211.237) (Read error: Connection reset by peer)
2024-05-25 20:26:58 +0000tremon(~tremon@83.80.159.219) (Remote host closed the connection)
2024-05-25 20:27:07 +0000diagnostics0(~diagnosti@38.22.211.237)
2024-05-25 20:27:58 +0000diagnostics0(~diagnosti@38.22.211.237) (Read error: Connection reset by peer)
2024-05-25 20:43:55 +0000lxsameer(~lxsameer@Serene/lxsameer) (Ping timeout: 256 seconds)
2024-05-25 20:43:56 +0000Eoco(~ian@128.101.131.218) (Quit: WeeChat 4.1.1)
2024-05-25 20:50:54 +0000phma_(phma@2001:5b0:2144:1aa8:afa6:899b:a052:d2db)
2024-05-25 20:52:42 +0000phma(~phma@host-67-44-208-55.hnremote.net) (Read error: Connection reset by peer)
2024-05-25 20:58:29 +0000mreh(~mreh@2a00:23c7:2803:ef01:d717:6c61:accb:b053)
2024-05-25 21:00:14 +0000mreh(~mreh@2a00:23c7:2803:ef01:d717:6c61:accb:b053) (Client Quit)
2024-05-25 21:10:10 +0000phma_(phma@2001:5b0:2144:1aa8:afa6:899b:a052:d2db) (Read error: Connection reset by peer)
2024-05-25 21:10:54 +0000phma_(~phma@host-67-44-208-128.hnremote.net)
2024-05-25 21:12:47 +0000lbseale_(~quassel@user/ep1ctetus) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
2024-05-25 21:23:37 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-05-25 21:25:21 +0000pavonia(~user@user/siracusa)
2024-05-25 21:26:13 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-05-25 21:28:35 +0000michalz(~michalz@185.246.207.215) (Quit: ZNC 1.9.0 - https://znc.in)
2024-05-25 21:29:11 +0000peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com)
2024-05-25 21:31:26 +0000Eoco(~ian@128.101.131.218)
2024-05-25 21:33:44 +0000peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 252 seconds)
2024-05-25 21:37:45 +0000destituion(~destituio@2001:4644:c37:0:6086:64f4:a213:b80d) (Ping timeout: 272 seconds)
2024-05-25 21:37:46 +0000peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com)
2024-05-25 21:38:17 +0000destituion(~destituio@2a02:2121:607:127a:8ad9:5c0a:45fb:3e09)
2024-05-25 21:39:04 +0000rvalue(~rvalue@user/rvalue) (Read error: Connection reset by peer)
2024-05-25 21:39:35 +0000rvalue(~rvalue@user/rvalue)
2024-05-25 21:53:59 +0000raehik(~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) (Ping timeout: 264 seconds)
2024-05-25 21:56:23 +0000paddymahoney(~paddymaho@pool-99-250-26-190.cpe.net.cable.rogers.com) (Ping timeout: 264 seconds)
2024-05-25 22:03:13 +0000paddymahoney(~paddymaho@pool-99-250-26-190.cpe.net.cable.rogers.com)
2024-05-25 22:09:21 +0000misterfish(~misterfis@84.53.85.146) (Remote host closed the connection)
2024-05-25 22:11:08 +0000peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 252 seconds)
2024-05-25 22:13:41 +0000kadir(~kadir@88.251.51.100)
2024-05-25 22:15:59 +0000peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com)
2024-05-25 22:22:00 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 260 seconds)
2024-05-25 22:22:40 +0000euleritian(~euleritia@dynamic-176-006-185-100.176.6.pool.telefonica.de)
2024-05-25 22:25:32 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-05-25 22:29:07 +0000phma_phma
2024-05-25 22:30:45 +0000peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 268 seconds)
2024-05-25 22:34:10 +0000causal(~eric@50.35.88.207)
2024-05-25 22:34:54 +0000peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com)
2024-05-25 22:42:53 +0000titibandit(~user@user/titibandit) (Ping timeout: 240 seconds)
2024-05-25 22:45:35 +0000peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 264 seconds)
2024-05-25 22:50:01 +0000peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com)
2024-05-25 23:06:20 +0000peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 260 seconds)
2024-05-25 23:12:24 +0000acidjnk(~acidjnk@p200300d6e714dc042020e32aab5643b9.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2024-05-25 23:12:59 +0000wootehfoot(~wootehfoo@user/wootehfoot) (Quit: Leaving)
2024-05-25 23:13:14 +0000ChaiTRex(~ChaiTRex@user/chaitrex) (Ping timeout: 260 seconds)
2024-05-25 23:15:35 +0000ChaiTRex(~ChaiTRex@user/chaitrex)
2024-05-25 23:17:47 +0000target_i(~target_i@user/target-i/x-6023099) (Quit: leaving)
2024-05-25 23:24:43 +0000kadir(~kadir@88.251.51.100) (Quit: WeeChat 4.2.2)
2024-05-25 23:26:22 +0000gmg(~user@user/gehmehgeh) (Quit: Leaving)
2024-05-25 23:33:13 +0000hiredman(~hiredman@frontier1.downey.family) (Quit: Lost terminal)
2024-05-25 23:55:47 +0000waleee(~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 264 seconds)