2022-10-25 00:00:37 +0200 | freeside | (~mengwong@103.252.202.193) (Ping timeout: 240 seconds) |
2022-10-25 00:02:27 +0200 | zmt00 | (~zmt00@user/zmt00) (Read error: Connection reset by peer) |
2022-10-25 00:02:55 +0200 | <gqplox> | hello again |
2022-10-25 00:03:21 +0200 | <gqplox> | I'm struggling to write my previous function with foldr |
2022-10-25 00:03:35 +0200 | <gqplox> | recursiveConcat :: [[a]] -> [a] |
2022-10-25 00:03:36 +0200 | <gqplox> | recursiveConcat [] = [] |
2022-10-25 00:03:36 +0200 | <gqplox> | recursiveConcat xxs = head xxs ++ recursiveConcat (tail xxs) |
2022-10-25 00:03:43 +0200 | zmt00 | (~zmt00@user/zmt00) |
2022-10-25 00:04:06 +0200 | merijn | (~merijn@c-001-001-011.client.esciencecenter.eduvpn.nl) |
2022-10-25 00:05:58 +0200 | <Rembane> | gqplox: How far do you get before you get stuck? |
2022-10-25 00:06:57 +0200 | <gqplox> | recursiveConcat' xs = foldr (\x xs' -> head xs' ++ tail xs') [] xs |
2022-10-25 00:06:58 +0200 | <gqplox> | i did something like this so far ik its stupid |
2022-10-25 00:07:08 +0200 | acidjnk | (~acidjnk@p54ad5adb.dip0.t-ipconnect.de) (Ping timeout: 276 seconds) |
2022-10-25 00:07:20 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2022-10-25 00:07:26 +0200 | <Hecate> | Hey Haskellers, I need people opinion on this: https://twitter.com/flora_haskell/status/1584665095627362305 |
2022-10-25 00:09:27 +0200 | <Rembane> | gqplox: What happens to x? |
2022-10-25 00:09:32 +0200 | axeman | (~quassel@2a02:8109:a380:78:967e:8a87:718a:1361) (Ping timeout: 272 seconds) |
2022-10-25 00:10:51 +0200 | <monochrom> | gqplox: My course notes http://www.cs.utoronto.ca/~trebla/CSCC24-2022-Summer/05-haskell-fold.html#foldr shows the general pattern. |
2022-10-25 00:11:42 +0200 | <gqplox> | thank you |
2022-10-25 00:11:54 +0200 | <gqplox> | oh oops |
2022-10-25 00:12:10 +0200 | <gqplox> | man Im so tired i think i should try again tomorrow :( |
2022-10-25 00:12:16 +0200 | <gqplox> | not going well |
2022-10-25 00:13:40 +0200 | freeside | (~mengwong@103.252.202.193) |
2022-10-25 00:13:51 +0200 | <monochrom> | Or in words, foldr (\x r -> x is already the head of the list, r is already the result of the recursive call) |
2022-10-25 00:14:17 +0200 | chomwitt | (~chomwitt@2a02:587:dc10:8200:1ac0:4dff:fedb:a3f1) (Ping timeout: 276 seconds) |
2022-10-25 00:14:19 +0200 | <monochrom> | So it's illogical to try to use head or tail yourself on x or r. |
2022-10-25 00:15:01 +0200 | <gqplox> | So for recursiveConcat [[1,2,3], [4,5]] first x would be [1,2,3] and r is []? |
2022-10-25 00:15:38 +0200 | <monochrom> | first x is [1,2,3], "first" r is [4,5]. |
2022-10-25 00:15:45 +0200 | ckiorrrrrrrrrrrs | (~ckiorrrrr@c-76-17-6-165.hsd1.ga.comcast.net) |
2022-10-25 00:16:27 +0200 | <monochrom> | r is [4,5] because the recursive call results in recursiveConcat [[4,5]] = [4,5]. |
2022-10-25 00:16:40 +0200 | <gqplox> | so it would be something like |
2022-10-25 00:16:40 +0200 | <gqplox> | recursiveConcat' xs = foldr (\x r -> x ++ r) [] xs |
2022-10-25 00:16:49 +0200 | <monochrom> | Yes, that simple. |
2022-10-25 00:18:56 +0200 | mmhat | (~mmh@2003:f1:c730:762d:ee08:6bff:fe09:5315) (Quit: WeeChat 3.7.1) |
2022-10-25 00:19:05 +0200 | comerijn | (~merijn@c-001-002-002.client.esciencecenter.eduvpn.nl) |
2022-10-25 00:20:06 +0200 | <Rembane> | darkside.se |
2022-10-25 00:20:14 +0200 | <gqplox> | great thank you :) |
2022-10-25 00:20:32 +0200 | <Rembane> | Sorry mischat |
2022-10-25 00:21:07 +0200 | <monochrom> | Yes I was wondering why you were advertising for darkside :) |
2022-10-25 00:21:33 +0200 | <monochrom> | I mean, let darkside advertise for themselves next time they come into the channel! |
2022-10-25 00:22:35 +0200 | merijn | (~merijn@c-001-001-011.client.esciencecenter.eduvpn.nl) (Ping timeout: 272 seconds) |
2022-10-25 00:23:34 +0200 | lisbeths | (uid135845@id-135845.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
2022-10-25 00:23:44 +0200 | <gqplox> | hmm for this function |
2022-10-25 00:24:05 +0200 | <gqplox> | recursiveReplicate :: Int -> a -> [a] |
2022-10-25 00:24:05 +0200 | <gqplox> | recursiveReplicate 0 _ = [] |
2022-10-25 00:24:05 +0200 | <gqplox> | recursiveReplicate n x = x : recursiveReplicate (n - 1) x |
2022-10-25 00:24:42 +0200 | <gqplox> | it's taking an integer right so you can't make express with foldr? |
2022-10-25 00:25:09 +0200 | <monochrom> | It doesn't take an input list either, so foldr is completely irrelevant. |
2022-10-25 00:25:19 +0200 | <gqplox> | yes thats whay i mean |
2022-10-25 00:25:21 +0200 | <gqplox> | ok thank you |
2022-10-25 00:25:42 +0200 | <monochrom> | Instead, you could look into unfoldr. That's when you output a list. |
2022-10-25 00:25:54 +0200 | <gqplox> | wow wtf |
2022-10-25 00:25:56 +0200 | <gqplox> | mind blown |
2022-10-25 00:26:13 +0200 | Tuplanolla | (~Tuplanoll@91-159-69-240.elisa-laajakaista.fi) (Quit: Leaving.) |
2022-10-25 00:26:30 +0200 | <gqplox> | wait is it actually in the prelude? |
2022-10-25 00:26:33 +0200 | <gqplox> | i cant see it |
2022-10-25 00:26:41 +0200 | <monochrom> | It is. |
2022-10-25 00:27:31 +0200 | <gqplox> | oh right i just ran ghci i needed to import Data.List |
2022-10-25 00:28:01 +0200 | <geekosaur> | @index unfoldr |
2022-10-25 00:28:01 +0200 | <lambdabot> | GHC.OldList, Data.List, Data.ByteString.Lazy.Char8, Data.ByteString.Lazy, Data.ByteString.Char8, Data.ByteString, Data.Sequence |
2022-10-25 00:28:06 +0200 | <monochrom> | Oh, it is not in Prelude. Sorry! |
2022-10-25 00:30:42 +0200 | <gqplox> | no worries |
2022-10-25 00:31:15 +0200 | <gqplox> | (!!!) :: [a] -> Int -> a |
2022-10-25 00:31:15 +0200 | <gqplox> | (!!!) (x : xs) 0 = x |
2022-10-25 00:31:15 +0200 | <gqplox> | (!!!) (x : xs) n = (!!!) xs (n - 1) |
2022-10-25 00:31:15 +0200 | <gqplox> | so can this be done with foldr? |
2022-10-25 00:31:27 +0200 | gurkenglas | (~gurkengla@p548ac72e.dip0.t-ipconnect.de) (Ping timeout: 272 seconds) |
2022-10-25 00:32:48 +0200 | <monochrom> | The base case is not "recfun [] = ???", and the recursive case is not simply "recfun (x:xs) = foo x (recfun xs)". So no. |
2022-10-25 00:33:13 +0200 | <gqplox> | Alright cool |
2022-10-25 00:33:32 +0200 | <gqplox> | well thank you for the help im tired now so ill head off but really thx for the help and the notes ill look into it tomorrow |
2022-10-25 00:36:33 +0200 | Axman6 | (~Axman6@user/axman6) |
2022-10-25 00:37:14 +0200 | polo | Guest5366 |
2022-10-25 00:37:57 +0200 | comerijn | (~merijn@c-001-002-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds) |
2022-10-25 00:37:57 +0200 | finsternis | (~X@23.226.237.192) (Read error: Connection reset by peer) |
2022-10-25 00:38:33 +0200 | gqplox | (~textual@147.188.245.207) (Quit: Textual IRC Client: www.textualapp.com) |
2022-10-25 00:41:26 +0200 | darkstardevx | (~darkstard@50.126.124.156) (Read error: Connection reset by peer) |
2022-10-25 00:46:56 +0200 | nate2 | (~nate@98.45.169.16) |
2022-10-25 00:50:14 +0200 | zeenk | (~zeenk@2a02:2f04:a105:5d00:c862:f190:2ea:d494) |
2022-10-25 00:50:41 +0200 | merijn | (~merijn@c-001-002-002.client.esciencecenter.eduvpn.nl) |
2022-10-25 00:51:37 +0200 | nate2 | (~nate@98.45.169.16) (Ping timeout: 240 seconds) |
2022-10-25 00:52:06 +0200 | talismanick | (~talismani@76.133.152.122) |
2022-10-25 00:52:22 +0200 | zebrag | (~chris@user/zebrag) (Quit: Konversation terminated!) |
2022-10-25 00:53:50 +0200 | <talismanick> | Are there options for <project>.cabal so I can declare an executable which automatically executes as if it had been called with +RTS -N? |
2022-10-25 00:54:31 +0200 | <Axman6> | you can add that to ghc-options |
2022-10-25 00:54:33 +0200 | <Axman6> | IIRC |
2022-10-25 00:54:34 +0200 | <talismanick> | `ghc-options: -threaded -rtsopts -w` didn't seem to enable multithreading - I still had to `cabal run foo -- +RTS -N` |
2022-10-25 00:54:41 +0200 | <Axman6> | check the cabal docs |
2022-10-25 00:54:46 +0200 | <geekosaur> | -with-rtsopts -N |
2022-10-25 00:54:46 +0200 | <Axman6> | and the4 ghc docs |
2022-10-25 00:54:51 +0200 | <talismanick> | I didn't see anything else in the Cabal docs, that I could see... |
2022-10-25 00:55:05 +0200 | <talismanick> | geekosaur: ah, that looks closer to what I'd expect |
2022-10-25 00:55:15 +0200 | <talismanick> | I looked up rtsopts in the cabal docs and didn't see much |
2022-10-25 00:55:17 +0200 | merijn | (~merijn@c-001-002-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds) |
2022-10-25 00:55:42 +0200 | <talismanick> | Or, not, what I searched was +RTS |
2022-10-25 00:55:44 +0200 | <geekosaur> | yeh, not's not a caba; option, it's a ghc link option so yo would use it with ghc-options in cabal |
2022-10-25 00:55:47 +0200 | darkstardevx | (~darkstard@50.126.124.156) |
2022-10-25 00:56:17 +0200 | <talismanick> | Nice, it works |
2022-10-25 00:56:47 +0200 | darkstardevx | (~darkstard@50.126.124.156) (Remote host closed the connection) |
2022-10-25 00:57:12 +0200 | darkstardevx | (~darkstard@50.126.124.156) |
2022-10-25 00:58:06 +0200 | zebrag | (~chris@user/zebrag) |
2022-10-25 01:03:45 +0200 | mncheck | (~mncheck@193.224.205.254) (Ping timeout: 272 seconds) |
2022-10-25 01:06:17 +0200 | ubert | (~Thunderbi@91.141.49.34.wireless.dyn.drei.com) (Ping timeout: 272 seconds) |
2022-10-25 01:06:46 +0200 | ubert | (~Thunderbi@178.165.171.4.wireless.dyn.drei.com) |
2022-10-25 01:09:58 +0200 | lisbeths | (uid135845@id-135845.lymington.irccloud.com) |
2022-10-25 01:10:40 +0200 | Kaipei | (~Kaiepi@108.175.84.104) (Ping timeout: 250 seconds) |
2022-10-25 01:11:07 +0200 | son0p | (~ff@181.136.122.143) (Killed (NickServ (GHOST command used by son0p-))) |
2022-10-25 01:13:20 +0200 | son0p | (~ff@181.136.122.143) |
2022-10-25 01:13:31 +0200 | michalz | (~michalz@185.246.207.193) (Remote host closed the connection) |
2022-10-25 01:18:38 +0200 | Kaipei | (~Kaiepi@108.175.84.104) |
2022-10-25 01:27:47 +0200 | zeenk | (~zeenk@2a02:2f04:a105:5d00:c862:f190:2ea:d494) (Quit: Konversation terminated!) |
2022-10-25 01:38:35 +0200 | j4cc3b | (~j4cc3b@pool-74-105-2-138.nwrknj.fios.verizon.net) |
2022-10-25 01:42:59 +0200 | danza | (~francesco@151.82.219.40) (Read error: Connection reset by peer) |
2022-10-25 01:59:58 +0200 | danza | (~francesco@ge-19-125-62.service.infuturo.it) |
2022-10-25 02:00:10 +0200 | kimjetwav | (~user@2607:fea8:235e:b600:b115:f56:940e:2252) (Remote host closed the connection) |
2022-10-25 02:01:19 +0200 | ec | (~ec@gateway/tor-sasl/ec) (Ping timeout: 258 seconds) |
2022-10-25 02:04:50 +0200 | wonko | (~wjc@user/wonko) (Ping timeout: 250 seconds) |
2022-10-25 02:05:06 +0200 | ec | (~ec@gateway/tor-sasl/ec) |
2022-10-25 02:26:03 +0200 | jmorris | (uid537181@id-537181.uxbridge.irccloud.com) |
2022-10-25 02:39:12 +0200 | wroathe | (~wroathe@207-153-38-140.fttp.usinternet.com) |
2022-10-25 02:39:12 +0200 | wroathe | (~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host) |
2022-10-25 02:39:12 +0200 | wroathe | (~wroathe@user/wroathe) |
2022-10-25 02:41:55 +0200 | Kaipei | (~Kaiepi@108.175.84.104) (Ping timeout: 272 seconds) |
2022-10-25 02:42:02 +0200 | beteigeuze1 | (~Thunderbi@a79-169-109-107.cpe.netcabo.pt) |
2022-10-25 02:42:32 +0200 | beteigeuze | (~Thunderbi@89.187.168.47) (Ping timeout: 250 seconds) |
2022-10-25 02:42:32 +0200 | beteigeuze1 | beteigeuze |
2022-10-25 02:51:03 +0200 | beteigeuze | (~Thunderbi@a79-169-109-107.cpe.netcabo.pt) (Remote host closed the connection) |
2022-10-25 02:51:21 +0200 | beteigeuze | (~Thunderbi@a79-169-109-107.cpe.netcabo.pt) |
2022-10-25 02:52:34 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a) |
2022-10-25 02:53:34 +0200 | causal | (~user@50.35.83.177) |
2022-10-25 02:56:50 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a) (Ping timeout: 250 seconds) |
2022-10-25 02:59:10 +0200 | Peerin | (~Peerin@154.3.36.102) |
2022-10-25 03:00:27 +0200 | <j4cc3b> | Anyone ever get this error message using Cabal on M1 MBP? Cannot specify -O# and --passes=/--foo-pass, use -passes='default<O#>,other-pass'. opt' failed in phase `LLVM Optimiser' |
2022-10-25 03:00:51 +0200 | <j4cc3b> | it happened for an older package, and its happening now for a newly updated package (AES) |
2022-10-25 03:06:31 +0200 | Lycurgus | (~juan@user/Lycurgus) |
2022-10-25 03:07:13 +0200 | caryhartline | (~caryhartl@2600:1700:2d0:8d30:7075:e274:b18d:7a76) |
2022-10-25 03:08:42 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2022-10-25 03:08:47 +0200 | <geekosaur> | that's a too-new llvm opt, iirc |
2022-10-25 03:10:28 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2022-10-25 03:10:43 +0200 | madnight | (~madnight@static.59.103.201.195.clients.your-server.de) (K-Lined) |
2022-10-25 03:10:43 +0200 | edi | (~edi@user/edi) (K-Lined) |
2022-10-25 03:10:43 +0200 | Profpatsch | (~Profpatsc@static.88-198-193-255.clients.your-server.de) (K-Lined) |
2022-10-25 03:10:43 +0200 | tomsmeding | (~tomsmedin@static.21.109.88.23.clients.your-server.de) (K-Lined) |
2022-10-25 03:10:43 +0200 | red-snail | (~snail@static.151.210.203.116.clients.your-server.de) (K-Lined) |
2022-10-25 03:10:43 +0200 | Philonous | (~Philonous@user/philonous) (K-Lined) |
2022-10-25 03:10:43 +0200 | dminuoso | (~dminuoso@user/dminuoso) (K-Lined) |
2022-10-25 03:10:43 +0200 | kawen | (~quassel@static.208.191.216.95.clients.your-server.de) (K-Lined) |
2022-10-25 03:10:44 +0200 | auri | (~auri@fsf/member/auri) (K-Lined) |
2022-10-25 03:10:44 +0200 | hexology | (~hexology@user/hexology) (K-Lined) |
2022-10-25 03:10:44 +0200 | lambdap237 | (~lambdap@static.167.190.119.168.clients.your-server.de) (K-Lined) |
2022-10-25 03:10:44 +0200 | mcfrdy | (~mcfrdy@user/mcfrdy) (K-Lined) |
2022-10-25 03:10:44 +0200 | wz1000 | (~zubin@static.11.113.47.78.clients.your-server.de) (K-Lined) |
2022-10-25 03:10:44 +0200 | aforemny | (~aforemny@static.248.158.34.188.clients.your-server.de) (K-Lined) |
2022-10-25 03:11:02 +0200 | hexology | (~hexology@user/hexology) |
2022-10-25 03:11:04 +0200 | <j4cc3b> | Ah, alright. I'll see if I can find an older llvm version. Thanks |
2022-10-25 03:11:28 +0200 | <geekosaur> | https://gitlab.haskell.org/ghc/ghc/-/issues/21936 |
2022-10-25 03:11:35 +0200 | mcfrdy | (~mcfrdy@user/mcfrdy) |
2022-10-25 03:11:55 +0200 | kawen | (~quassel@static.208.191.216.95.clients.your-server.de) |
2022-10-25 03:11:57 +0200 | auri | (~auri@fsf/member/auri) |
2022-10-25 03:12:00 +0200 | madnight | (~madnight@static.59.103.201.195.clients.your-server.de) |
2022-10-25 03:12:01 +0200 | tomsmeding | (~tomsmedin@2a01:4f8:c0c:5e5e::2) |
2022-10-25 03:12:01 +0200 | wz1000 | (~zubin@static.11.113.47.78.clients.your-server.de) |
2022-10-25 03:12:06 +0200 | Philonous | (~Philonous@user/philonous) |
2022-10-25 03:12:06 +0200 | dminuoso | (~dminuoso@user/dminuoso) |
2022-10-25 03:12:09 +0200 | aforemny | (~aforemny@static.248.158.34.188.clients.your-server.de) |
2022-10-25 03:12:22 +0200 | Profpatsch | (~Profpatsc@static.88-198-193-255.clients.your-server.de) |
2022-10-25 03:14:37 +0200 | red-snail | (~snail@static.151.210.203.116.clients.your-server.de) |
2022-10-25 03:16:07 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 272 seconds) |
2022-10-25 03:16:20 +0200 | Maeda | (~Maeda@91-161-10-149.subs.proxad.net) (Ping timeout: 250 seconds) |
2022-10-25 03:16:34 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2022-10-25 03:16:56 +0200 | FragByte | (~christian@user/fragbyte) (Ping timeout: 276 seconds) |
2022-10-25 03:18:25 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) |
2022-10-25 03:18:39 +0200 | slack1256 | (~slack1256@191.125.99.71) (Ping timeout: 272 seconds) |
2022-10-25 03:26:52 +0200 | andreas303 | (andreas303@ip227.orange.bnc4free.com) (Quit: fBNC - https://bnc4free.com) |
2022-10-25 03:26:52 +0200 | xacktm | (~xacktm@user/xacktm) (Quit: fBNC - https://bnc4free.com) |
2022-10-25 03:28:13 +0200 | <j4cc3b> | geekosaur Thanks, I downgraded to llvm 14 and got cabal to work |
2022-10-25 03:39:10 +0200 | xff0x | (~xff0x@2405:6580:b080:900:274f:8858:84b:2f95) (Ping timeout: 272 seconds) |
2022-10-25 03:41:41 +0200 | beteigeuze | (~Thunderbi@a79-169-109-107.cpe.netcabo.pt) (Remote host closed the connection) |
2022-10-25 03:42:04 +0200 | beteigeuze | (~Thunderbi@a79-169-109-107.cpe.netcabo.pt) |
2022-10-25 03:43:24 +0200 | Guest395 | (~textual@pool-100-11-18-203.phlapa.fios.verizon.net) |
2022-10-25 03:43:45 +0200 | Guest395 | (~textual@pool-100-11-18-203.phlapa.fios.verizon.net) (Changing host) |
2022-10-25 03:43:45 +0200 | Guest395 | (~textual@user/polo) |
2022-10-25 03:43:49 +0200 | andreas303 | (andreas303@ip227.orange.bnc4free.com) |
2022-10-25 03:45:48 +0200 | Guest395 | (~textual@user/polo) (Client Quit) |
2022-10-25 03:49:41 +0200 | polo_ | (~polo@user/polo) |
2022-10-25 03:52:22 +0200 | j4cc3b | (~j4cc3b@pool-74-105-2-138.nwrknj.fios.verizon.net) (Quit: Client closed) |
2022-10-25 03:53:23 +0200 | biberu\ | (~biberu@user/biberu) |
2022-10-25 03:55:41 +0200 | xacktm | (~xacktm@user/xacktm) |
2022-10-25 03:57:17 +0200 | biberu | (~biberu@user/biberu) (Ping timeout: 272 seconds) |
2022-10-25 03:57:17 +0200 | biberu\ | biberu |
2022-10-25 03:59:11 +0200 | beteigeuze | (~Thunderbi@a79-169-109-107.cpe.netcabo.pt) (Ping timeout: 272 seconds) |
2022-10-25 04:00:12 +0200 | micahcantor | (~micahcant@132.161.188.118) |
2022-10-25 04:02:00 +0200 | Guest17 | (~Guest17@132.161.188.57) |
2022-10-25 04:02:16 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 250 seconds) |
2022-10-25 04:03:39 +0200 | frost75 | (~frost@user/frost) |
2022-10-25 04:03:56 +0200 | Guest17 | (~Guest17@132.161.188.57) (Client Quit) |
2022-10-25 04:06:09 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a) |
2022-10-25 04:08:17 +0200 | polo_ | (~polo@user/polo) (Ping timeout: 276 seconds) |
2022-10-25 04:12:47 +0200 | td_ | (~td@83.135.9.20) (Ping timeout: 260 seconds) |
2022-10-25 04:14:16 +0200 | td_ | (~td@83.135.9.24) |
2022-10-25 04:19:05 +0200 | nate2 | (~nate@98.45.169.16) |
2022-10-25 04:19:16 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection) |
2022-10-25 04:22:15 +0200 | Feuermagier_ | (~Feuermagi@213.149.82.60) |
2022-10-25 04:23:08 +0200 | zaquest | (~notzaques@5.130.79.72) (Remote host closed the connection) |
2022-10-25 04:24:54 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
2022-10-25 04:24:54 +0200 | finn_elija | (~finn_elij@user/finn-elija/x-0085643) |
2022-10-25 04:24:54 +0200 | finn_elija | FinnElija |
2022-10-25 04:25:02 +0200 | Feuermagier | (~Feuermagi@user/feuermagier) (Ping timeout: 260 seconds) |
2022-10-25 04:26:00 +0200 | Feuermagier_ | (~Feuermagi@213.149.82.60) (Read error: Connection reset by peer) |
2022-10-25 04:26:53 +0200 | FragByte | (~christian@user/fragbyte) |
2022-10-25 04:29:12 +0200 | mvk | (~mvk@2607:fea8:5ce3:8500::a80f) (Ping timeout: 272 seconds) |
2022-10-25 04:29:19 +0200 | xff0x | (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) |
2022-10-25 04:30:17 +0200 | freeside | (~mengwong@103.252.202.193) (Ping timeout: 260 seconds) |
2022-10-25 04:31:13 +0200 | meooow | (~meooow@165.232.184.169) |
2022-10-25 04:33:17 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 240 seconds) |
2022-10-25 04:35:24 +0200 | freeside | (~mengwong@103.252.202.193) |
2022-10-25 04:35:55 +0200 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 272 seconds) |
2022-10-25 04:38:54 +0200 | frost75 | (~frost@user/frost) (Quit: Client closed) |
2022-10-25 04:40:09 +0200 | micahcantor | (~micahcant@132.161.188.118) (Ping timeout: 244 seconds) |
2022-10-25 04:40:12 +0200 | freeside | (~mengwong@103.252.202.193) (Ping timeout: 260 seconds) |
2022-10-25 04:42:49 +0200 | terrorjack | (~terrorjac@2a01:4f8:1c1e:509a::1) (Quit: The Lounge - https://thelounge.chat) |
2022-10-25 04:43:52 +0200 | terrorjack | (~terrorjac@2a01:4f8:1c1e:509a::1) |
2022-10-25 04:55:15 +0200 | j4cc3b | (~j4cc3b@pool-74-105-2-138.nwrknj.fios.verizon.net) |
2022-10-25 04:55:18 +0200 | polo | (~polo@user/polo) |
2022-10-25 04:58:52 +0200 | Lycurgus | (~juan@user/Lycurgus) (Quit: Exeunt juan@acm.org) |
2022-10-25 05:00:36 +0200 | freeside | (~mengwong@103.252.202.193) |
2022-10-25 05:08:19 +0200 | micahcantor | (~micahcant@132.161.188.118) |
2022-10-25 05:09:07 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 272 seconds) |
2022-10-25 05:11:59 +0200 | polo | (~polo@user/polo) (Ping timeout: 276 seconds) |
2022-10-25 05:20:45 +0200 | king_gs | (~Thunderbi@2806:103e:29:c5:4fb1:a8c9:906f:c6e0) |
2022-10-25 05:20:55 +0200 | king_gs | (~Thunderbi@2806:103e:29:c5:4fb1:a8c9:906f:c6e0) (Client Quit) |
2022-10-25 05:22:35 +0200 | mixfix41 | (~sdeny9ee@user/mixfix41) |
2022-10-25 05:29:45 +0200 | nate2 | (~nate@98.45.169.16) (Ping timeout: 272 seconds) |
2022-10-25 05:41:44 +0200 | birdgoose | (~birdgoose@2406:e003:1d87:6601:ad3a:1d2e:9fb1:dfac) (Quit: Konversation terminated!) |
2022-10-25 05:43:47 +0200 | birdgoose | (~jesse@151.210.175.160) |
2022-10-25 05:45:42 +0200 | polo | (~polo@user/polo) |
2022-10-25 05:46:42 +0200 | chronon | (~chronon@user/chronon) |
2022-10-25 05:50:25 +0200 | micahcantor | (~micahcant@132.161.188.118) (Ping timeout: 244 seconds) |
2022-10-25 05:52:56 +0200 | polo | (~polo@user/polo) (Ping timeout: 276 seconds) |
2022-10-25 05:56:17 +0200 | danza | (~francesco@ge-19-125-62.service.infuturo.it) (Ping timeout: 240 seconds) |
2022-10-25 05:57:55 +0200 | nate2 | (~nate@98.45.169.16) |
2022-10-25 05:58:13 +0200 | azimut | (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 258 seconds) |
2022-10-25 06:03:02 +0200 | nate2 | (~nate@98.45.169.16) (Ping timeout: 260 seconds) |
2022-10-25 06:04:37 +0200 | freeside | (~mengwong@103.252.202.193) (Ping timeout: 240 seconds) |
2022-10-25 06:06:21 +0200 | birdgoose | (~jesse@151.210.175.160) (Quit: Konversation terminated!) |
2022-10-25 06:06:34 +0200 | birdgoose | (~jesse@2406:e003:1d87:6601:e725:b6b4:ace8:4ebe) |
2022-10-25 06:07:13 +0200 | freeside | (~mengwong@103.252.202.193) |
2022-10-25 06:09:22 +0200 | danza | (~francesco@151.68.249.142) |
2022-10-25 06:11:36 +0200 | j4cc3b | (~j4cc3b@pool-74-105-2-138.nwrknj.fios.verizon.net) (Ping timeout: 244 seconds) |
2022-10-25 06:14:05 +0200 | freeside | (~mengwong@103.252.202.193) (Ping timeout: 272 seconds) |
2022-10-25 06:14:19 +0200 | freeside | (~mengwong@103.252.202.193) |
2022-10-25 06:17:27 +0200 | zaquest | (~notzaques@5.130.79.72) |
2022-10-25 06:18:32 +0200 | ski | (~ski@remote11.chalmers.se) |
2022-10-25 06:19:56 +0200 | Unicorn_Princess | (~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection) |
2022-10-25 06:33:56 +0200 | wroathe | (~wroathe@user/wroathe) |
2022-10-25 06:35:23 +0200 | nate2 | (~nate@98.45.169.16) |
2022-10-25 06:36:37 +0200 | freeside | (~mengwong@103.252.202.193) (Ping timeout: 240 seconds) |
2022-10-25 06:38:37 +0200 | AkechiShiro | (~licht@user/akechishiro) |
2022-10-25 06:39:44 +0200 | qrpnxz | (~qrpnxz@fsf/member/qrpnxz) (Ping timeout: 276 seconds) |
2022-10-25 06:40:22 +0200 | nate2 | (~nate@98.45.169.16) (Ping timeout: 260 seconds) |
2022-10-25 06:40:56 +0200 | qrpnxz | (~qrpnxz@fsf/member/qrpnxz) |
2022-10-25 06:45:00 +0200 | mbuf | (~Shakthi@49.204.140.84) |
2022-10-25 06:49:13 +0200 | freeside | (~mengwong@103.252.202.193) |
2022-10-25 06:55:00 +0200 | zebrag | (~chris@user/zebrag) (Quit: Konversation terminated!) |
2022-10-25 06:56:32 +0200 | kenran | (~user@user/kenran) |
2022-10-25 06:58:44 +0200 | ckiorrrrrrrrrrrs | (~ckiorrrrr@c-76-17-6-165.hsd1.ga.comcast.net) (Remote host closed the connection) |
2022-10-25 06:59:30 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 250 seconds) |
2022-10-25 07:01:29 +0200 | birdgoose | (~jesse@2406:e003:1d87:6601:e725:b6b4:ace8:4ebe) (Quit: Konversation terminated!) |
2022-10-25 07:01:44 +0200 | birdgoose | (~jesse@2406:e003:1d87:6601:e725:b6b4:ace8:4ebe) |
2022-10-25 07:08:25 +0200 | Maeda | (~Maeda@91-161-10-149.subs.proxad.net) |
2022-10-25 07:10:22 +0200 | Guest5366 | money |
2022-10-25 07:12:02 +0200 | boxscape_ | (~boxscape_@81.191.27.107) (Remote host closed the connection) |
2022-10-25 07:12:10 +0200 | takuan | (~takuan@178-116-218-225.access.telenet.be) |
2022-10-25 07:13:57 +0200 | bgs | (~bgs@212-85-160-171.dynamic.telemach.net) |
2022-10-25 07:14:15 +0200 | jao | (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 272 seconds) |
2022-10-25 07:15:45 +0200 | boxscape_ | (~boxscape_@81.191.27.107) |
2022-10-25 07:17:48 +0200 | boxscape_ | (~boxscape_@81.191.27.107) (Remote host closed the connection) |
2022-10-25 07:21:26 +0200 | fjMSX | (~hypni2p@2.92.213.55) (Remote host closed the connection) |
2022-10-25 07:29:27 +0200 | ec | (~ec@gateway/tor-sasl/ec) (Ping timeout: 258 seconds) |
2022-10-25 07:30:03 +0200 | Peerin | (~Peerin@154.3.36.102) (Remote host closed the connection) |
2022-10-25 07:30:55 +0200 | ec | (~ec@gateway/tor-sasl/ec) |
2022-10-25 07:34:43 +0200 | nate2 | (~nate@98.45.169.16) |
2022-10-25 07:36:20 +0200 | birdgoose | (~jesse@2406:e003:1d87:6601:e725:b6b4:ace8:4ebe) (Ping timeout: 250 seconds) |
2022-10-25 07:38:50 +0200 | birdgoose | (~jesse@151.210.175.160) |
2022-10-25 07:39:01 +0200 | P1RATEZ | (piratez@user/p1ratez) (Remote host closed the connection) |
2022-10-25 07:39:22 +0200 | nate2 | (~nate@98.45.169.16) (Ping timeout: 250 seconds) |
2022-10-25 07:40:51 +0200 | jle` | (~jle`@cpe-23-240-75-236.socal.res.rr.com) (Ping timeout: 272 seconds) |
2022-10-25 07:49:02 +0200 | birdgoose | (~jesse@151.210.175.160) (Quit: Konversation terminated!) |
2022-10-25 07:49:12 +0200 | raym | (~ray@user/raym) (Ping timeout: 260 seconds) |
2022-10-25 07:49:25 +0200 | birdgoose | (~jesse@2406:e003:1d87:6601:e725:b6b4:ace8:4ebe) |
2022-10-25 07:51:56 +0200 | sameer | (~sameer@2409:4070:6e10:74c0::81c8:d301) (Ping timeout: 250 seconds) |
2022-10-25 07:52:25 +0200 | bgs | (~bgs@212-85-160-171.dynamic.telemach.net) (Remote host closed the connection) |
2022-10-25 07:52:32 +0200 | sameer | (~sameer@2409:4070:2db0:cb01::c089:7411) |
2022-10-25 07:56:05 +0200 | raym | (~ray@user/raym) |
2022-10-25 07:56:07 +0200 | <Clinton[m]> | As silly as this may seem, are these instances law abiding?... (full message at <https://libera.ems.host/_matrix/media/v3/download/libera.chat/f8298a10f2170a4f89c99acce653599b4976…>) |
2022-10-25 07:56:58 +0200 | <Clinton[m]> | (this is a cut down example which doesn't really demonstrate what I'm trying to achieve) |
2022-10-25 07:58:23 +0200 | <jackdk> | Clinton[m]: looks like `Blah ~ Const [Int]` |
2022-10-25 07:59:00 +0200 | <jackdk> | @info Const |
2022-10-25 07:59:00 +0200 | <lambdabot> | Const |
2022-10-25 07:59:03 +0200 | gurkenglas | (~gurkengla@p548ac72e.dip0.t-ipconnect.de) |
2022-10-25 07:59:08 +0200 | <jackdk> | :i Const |
2022-10-25 07:59:13 +0200 | <jackdk> | % :i Const |
2022-10-25 07:59:13 +0200 | <yahb2> | <interactive>:1:1: error: Not in scope: ‘Const’ |
2022-10-25 07:59:19 +0200 | <Clinton[m]> | Oh wow. |
2022-10-25 07:59:39 +0200 | <Clinton[m]> | I love Haskell |
2022-10-25 07:59:39 +0200 | <jackdk> | Anyway, `instance Monoid r => Applicative (Const r)` |
2022-10-25 08:09:44 +0200 | lisbeths | (uid135845@id-135845.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
2022-10-25 08:18:37 +0200 | jargon | (~jargon@184.101.208.112) (Remote host closed the connection) |
2022-10-25 08:20:39 +0200 | mmhat | (~mmh@p200300f1c730762dee086bfffe095315.dip0.t-ipconnect.de) |
2022-10-25 08:26:57 +0200 | jpds | (~jpds@gateway/tor-sasl/jpds) (Ping timeout: 258 seconds) |
2022-10-25 08:27:35 +0200 | gmg | (~user@user/gehmehgeh) |
2022-10-25 08:29:38 +0200 | jpds | (~jpds@gateway/tor-sasl/jpds) |
2022-10-25 08:36:34 +0200 | jonathanx_ | (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Ping timeout: 250 seconds) |
2022-10-25 08:38:01 +0200 | mncheck | (~mncheck@193.224.205.254) |
2022-10-25 08:48:48 +0200 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
2022-10-25 08:49:46 +0200 | jonathanx | (~jonathan@h-98-128-168-222.NA.cust.bahnhof.se) |
2022-10-25 08:52:31 +0200 | EvanR_ | (~EvanR@user/evanr) |
2022-10-25 08:53:19 +0200 | EvanR | (~EvanR@user/evanr) (Ping timeout: 272 seconds) |
2022-10-25 08:58:13 +0200 | coot | (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) |
2022-10-25 08:59:48 +0200 | jonathanx | (~jonathan@h-98-128-168-222.NA.cust.bahnhof.se) (Remote host closed the connection) |
2022-10-25 09:00:05 +0200 | jonathanx | (~jonathan@h-98-128-168-222.NA.cust.bahnhof.se) |
2022-10-25 09:01:27 +0200 | michalz | (~michalz@185.246.207.200) |
2022-10-25 09:02:05 +0200 | yangby | (~secret@115.197.21.96) |
2022-10-25 09:09:30 +0200 | chele | (~chele@user/chele) |
2022-10-25 09:10:06 +0200 | yangby | (~secret@115.197.21.96) (Quit: Go out for a walk and buy a drink.) |
2022-10-25 09:11:50 +0200 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 276 seconds) |
2022-10-25 09:13:22 +0200 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
2022-10-25 09:20:47 +0200 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 260 seconds) |
2022-10-25 09:22:39 +0200 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
2022-10-25 09:24:32 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2022-10-25 09:24:37 +0200 | talismanick | (~talismani@76.133.152.122) (Ping timeout: 240 seconds) |
2022-10-25 09:26:53 +0200 | merijn | (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) |
2022-10-25 09:27:16 +0200 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 250 seconds) |
2022-10-25 09:28:56 +0200 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
2022-10-25 09:29:09 +0200 | cytokine_storm | (~cytokine_@user/cytokine-storm/x-1083107) (Ping timeout: 272 seconds) |
2022-10-25 09:30:06 +0200 | cytokine_storm | (~cytokine_@user/cytokine-storm/x-1083107) |
2022-10-25 09:34:12 +0200 | sameer | (~sameer@2409:4070:2db0:cb01::c089:7411) (Ping timeout: 250 seconds) |
2022-10-25 09:34:26 +0200 | sameer | (~sameer@2409:4070:2db0:cb01::c089:7411) |
2022-10-25 09:35:41 +0200 | jmorris | (uid537181@id-537181.uxbridge.irccloud.com) (Quit: Connection closed for inactivity) |
2022-10-25 09:37:15 +0200 | jco | (~jco@90-228-194-139-no542.tbcn.telia.com) |
2022-10-25 09:39:17 +0200 | danza | (~francesco@151.68.249.142) (Read error: Connection reset by peer) |
2022-10-25 09:40:26 +0200 | <jco> | Hi, I'm being temporarily (hopefully) stupid. Is there a general way in which you can rewrite a fold, where you don't use the element (only the accumulator), to something "simpler"? Small (but somewhat ugly) snippet at: https://paste.tomsmeding.com/V9lcJMde. Here you see that I don't really use `_i`. |
2022-10-25 09:41:03 +0200 | lortabac | (~lortabac@2a01:e0a:541:b8f0:e245:517d:6b8a:16f8) |
2022-10-25 09:42:16 +0200 | <dminuoso> | You could write that as a replicateM I suppose |
2022-10-25 09:42:33 +0200 | <lyxia> | or iterate |
2022-10-25 09:44:49 +0200 | henrytill | (e0180937c3@2604:bf00:561:2000::e8c) |
2022-10-25 09:44:51 +0200 | <dminuoso> | Personally I would probably write it as just a handrolled loop. |
2022-10-25 09:45:21 +0200 | <dminuoso> | Lets you write it in curred form as well |
2022-10-25 09:47:11 +0200 | acidjnk | (~acidjnk@p200300d6e7137a282ddda09dd97b606e.dip0.t-ipconnect.de) |
2022-10-25 09:47:38 +0200 | <dminuoso> | jco: Along these lines https://gist.github.com/dminuoso/1e76c685d5168d8fe8881de0230a5208 |
2022-10-25 09:48:23 +0200 | <dminuoso> | Oh, actually the `zeroGroupCount - 1` is silly, can just use `n` |
2022-10-25 09:48:31 +0200 | <dminuoso> | Updated gist |
2022-10-25 09:48:33 +0200 | <jco> | dminuoso: Thanks, I'll take a look! |
2022-10-25 09:48:50 +0200 | Kaipei | (~Kaiepi@108.175.84.104) |
2022-10-25 09:49:17 +0200 | fserucas|eod | (~fserucas|@2001:818:e376:a400:fb92:70c1:dd88:c7d7) |
2022-10-25 09:49:43 +0200 | chomwitt | (~chomwitt@2a02:587:dc10:8200:1ac0:4dff:fedb:a3f1) |
2022-10-25 09:49:59 +0200 | fserucas|eod | (~fserucas|@2001:818:e376:a400:fb92:70c1:dd88:c7d7) (Client Quit) |
2022-10-25 09:50:15 +0200 | fserucas|eod | (~fserucas|@2001:818:e376:a400:fb92:70c1:dd88:c7d7) |
2022-10-25 09:52:17 +0200 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 240 seconds) |
2022-10-25 09:54:48 +0200 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) |
2022-10-25 09:59:29 +0200 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
2022-10-25 10:01:19 +0200 | nschoe | (~q@2a01:e0a:8e:a190:6b6f:b6f8:7b03:5cf7) |
2022-10-25 10:03:15 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
2022-10-25 10:05:39 +0200 | jonathanx | (~jonathan@h-98-128-168-222.NA.cust.bahnhof.se) (Remote host closed the connection) |
2022-10-25 10:05:56 +0200 | jonathanx | (~jonathan@h-98-128-168-222.NA.cust.bahnhof.se) |
2022-10-25 10:07:08 +0200 | birdgoose | (~jesse@2406:e003:1d87:6601:e725:b6b4:ace8:4ebe) (Ping timeout: 250 seconds) |
2022-10-25 10:07:27 +0200 | nate2 | (~nate@98.45.169.16) |
2022-10-25 10:08:19 +0200 | jakalx | (~jakalx@base.jakalx.net) () |
2022-10-25 10:11:06 +0200 | econo | (uid147250@user/econo) (Quit: Connection closed for inactivity) |
2022-10-25 10:12:42 +0200 | nate2 | (~nate@98.45.169.16) (Ping timeout: 260 seconds) |
2022-10-25 10:16:04 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2022-10-25 10:19:49 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) |
2022-10-25 10:30:19 +0200 | shriekingnoise | (~shrieking@186.137.167.202) (Quit: Quit) |
2022-10-25 10:32:44 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a) (Remote host closed the connection) |
2022-10-25 10:41:34 +0200 | birdgoose | (~jesse@2406:e003:1d87:6601:e725:b6b4:ace8:4ebe) |
2022-10-25 10:42:29 +0200 | jakalx | (~jakalx@base.jakalx.net) |
2022-10-25 10:47:13 +0200 | cfricke | (~cfricke@user/cfricke) |
2022-10-25 11:01:41 +0200 | __monty__ | (~toonn@user/toonn) |
2022-10-25 11:02:36 +0200 | KaitoDaumoto | (~asdf@user/kaitodaumoto) (Remote host closed the connection) |
2022-10-25 11:03:37 +0200 | shapr | (~user@net-5-88-239-29.cust.vodafonedsl.it) |
2022-10-25 11:21:37 +0200 | gurkenglas | (~gurkengla@p548ac72e.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
2022-10-25 11:32:56 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2022-10-25 11:33:13 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a) |
2022-10-25 11:34:23 +0200 | tzh | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz) |
2022-10-25 11:34:24 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 258 seconds) |
2022-10-25 11:37:42 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a) (Ping timeout: 250 seconds) |
2022-10-25 11:39:12 +0200 | random-jellyfish | (~random-je@user/random-jellyfish) |
2022-10-25 11:42:22 +0200 | random-jellyfish | (~random-je@user/random-jellyfish) (Client Quit) |
2022-10-25 11:43:42 +0200 | darkstardevx | (~darkstard@50.126.124.156) (Ping timeout: 260 seconds) |
2022-10-25 11:45:32 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2022-10-25 11:51:04 +0200 | nilradical | (~nilradica@user/naso) |
2022-10-25 11:52:05 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) |
2022-10-25 11:53:00 +0200 | nilradical | (~nilradica@user/naso) (Client Quit) |
2022-10-25 11:54:46 +0200 | nilradical | (~nilradica@user/naso) |
2022-10-25 11:58:11 +0200 | ft | (~ft@p3e9bc845.dip0.t-ipconnect.de) (Quit: leaving) |
2022-10-25 12:03:42 +0200 | birdgoose | (~jesse@2406:e003:1d87:6601:e725:b6b4:ace8:4ebe) (Ping timeout: 250 seconds) |
2022-10-25 12:05:26 +0200 | lortabac | (~lortabac@2a01:e0a:541:b8f0:e245:517d:6b8a:16f8) (Ping timeout: 250 seconds) |
2022-10-25 12:06:37 +0200 | darkstardevx | (~darkstard@50.126.124.156) |
2022-10-25 12:07:37 +0200 | xff0x | (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 260 seconds) |
2022-10-25 12:07:37 +0200 | tomboy64 | (~tomboy64@user/tomboy64) (Ping timeout: 260 seconds) |
2022-10-25 12:07:52 +0200 | darkstardevx | (~darkstard@50.126.124.156) (Remote host closed the connection) |
2022-10-25 12:08:16 +0200 | darkstardevx | (~darkstard@50.126.124.156) |
2022-10-25 12:18:29 +0200 | cfricke | (~cfricke@user/cfricke) (Quit: WeeChat 3.7) |
2022-10-25 12:22:21 +0200 | tomboy64 | (~tomboy64@user/tomboy64) |
2022-10-25 12:23:54 +0200 | beteigeuze | (~Thunderbi@a79-169-109-107.cpe.netcabo.pt) |
2022-10-25 12:27:07 +0200 | cytokine_storm | (~cytokine_@user/cytokine-storm/x-1083107) (Ping timeout: 272 seconds) |
2022-10-25 12:27:48 +0200 | cytokine_storm | (~cytokine_@user/cytokine-storm/x-1083107) |
2022-10-25 12:29:31 +0200 | nilradical | (~nilradica@user/naso) () |
2022-10-25 12:34:57 +0200 | Kaipei | (~Kaiepi@108.175.84.104) (Ping timeout: 240 seconds) |
2022-10-25 12:43:50 +0200 | axeman | (~quassel@2a02:8109:a380:78:6c88:f7de:5432:98cd) |
2022-10-25 12:45:42 +0200 | gmg | (~user@user/gehmehgeh) (Ping timeout: 258 seconds) |
2022-10-25 12:46:05 +0200 | ec | (~ec@gateway/tor-sasl/ec) (Ping timeout: 258 seconds) |
2022-10-25 12:46:05 +0200 | stiell_ | (~stiell@gateway/tor-sasl/stiell) (Ping timeout: 258 seconds) |
2022-10-25 12:46:28 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 258 seconds) |
2022-10-25 12:48:23 +0200 | vglfr | (~vglfr@145.224.100.190) (Remote host closed the connection) |
2022-10-25 12:49:16 +0200 | vglfr | (~vglfr@145.224.100.190) |
2022-10-25 12:50:04 +0200 | axeman | (~quassel@2a02:8109:a380:78:6c88:f7de:5432:98cd) (Ping timeout: 250 seconds) |
2022-10-25 12:53:57 +0200 | stiell_ | (~stiell@gateway/tor-sasl/stiell) |
2022-10-25 12:55:54 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2022-10-25 12:56:20 +0200 | Kaipei | (~Kaiepi@108.175.84.104) |
2022-10-25 12:56:52 +0200 | ec | (~ec@gateway/tor-sasl/ec) |
2022-10-25 12:57:19 +0200 | gmg | (~user@user/gehmehgeh) |
2022-10-25 12:58:40 +0200 | wonko | (~wjc@user/wonko) |
2022-10-25 12:59:32 +0200 | causal | (~user@50.35.83.177) (Quit: WeeChat 3.6) |
2022-10-25 13:02:05 +0200 | causal | (~user@50.35.83.177) |
2022-10-25 13:05:29 +0200 | jmorris | (uid537181@id-537181.uxbridge.irccloud.com) |
2022-10-25 13:08:00 +0200 | xff0x | (~xff0x@2405:6580:b080:900:ca36:cc78:fa79:2e35) |
2022-10-25 13:12:56 +0200 | califax | (~califax@user/califx) (Remote host closed the connection) |
2022-10-25 13:12:56 +0200 | chexum | (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection) |
2022-10-25 13:12:56 +0200 | ChaiTRex | (~ChaiTRex@user/chaitrex) (Remote host closed the connection) |
2022-10-25 13:14:07 +0200 | chexum | (~quassel@gateway/tor-sasl/chexum) |
2022-10-25 13:14:08 +0200 | ChaiTRex | (~ChaiTRex@user/chaitrex) |
2022-10-25 13:14:55 +0200 | califax | (~califax@user/califx) |
2022-10-25 13:17:22 +0200 | zmt00 | (~zmt00@user/zmt00) (Ping timeout: 250 seconds) |
2022-10-25 13:18:10 +0200 | jakalx | (~jakalx@base.jakalx.net) () |
2022-10-25 13:19:11 +0200 | argento | (~argent0@168-227-97-23.ptr.westnet.com.ar) |
2022-10-25 13:20:30 +0200 | ajb | (~ajb@mimas.whatbox.ca) (Quit: bye) |
2022-10-25 13:20:40 +0200 | ajb | (~ajb@mimas.whatbox.ca) |
2022-10-25 13:21:50 +0200 | jakalx | (~jakalx@base.jakalx.net) |
2022-10-25 13:23:17 +0200 | schweers | (~user@p200300e5773c9a00c23ebafffe9bd9c9.dip0.t-ipconnect.de) |
2022-10-25 13:25:46 +0200 | lyle | (~lyle@104.246.145.85) |
2022-10-25 13:27:55 +0200 | koz | (~koz@121.99.240.58) (Ping timeout: 252 seconds) |
2022-10-25 13:32:00 +0200 | axeman | (~quassel@2a02:8109:a380:78:eda1:cd6d:3994:f202) |
2022-10-25 13:35:04 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a) |
2022-10-25 13:35:49 +0200 | koz | (~koz@121.99.240.58) |
2022-10-25 13:36:08 +0200 | lortabac | (~lortabac@2a01:e0a:541:b8f0:ac5b:f1ab:700:d86f) |
2022-10-25 13:39:28 +0200 | cytokine_storm | (~cytokine_@user/cytokine-storm/x-1083107) (Ping timeout: 250 seconds) |
2022-10-25 13:39:59 +0200 | cytokine_storm | (~cytokine_@user/cytokine-storm/x-1083107) |
2022-10-25 13:40:13 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a) (Ping timeout: 272 seconds) |
2022-10-25 13:41:08 +0200 | <lyle> | Here's a code snippit: https://paste.tomsmeding.com/KpZq9ht3 |
2022-10-25 13:41:52 +0200 | <lyle> | If I have a constructor that takes a Text, and call it with {}, what is happening. Is there a name for this language feature? |
2022-10-25 13:44:18 +0200 | ec | (~ec@gateway/tor-sasl/ec) (Remote host closed the connection) |
2022-10-25 13:45:07 +0200 | ec | (~ec@gateway/tor-sasl/ec) |
2022-10-25 13:46:57 +0200 | <int-e> | It's part of the record syntax, but without specifying any fields, which somehow makes this work for non-record constructors. |
2022-10-25 13:48:05 +0200 | <int-e> | It was already that way with Haskell 98, "The pattern F {} matches any value built with constructor F, whether or not F was declared with record syntax." |
2022-10-25 13:49:17 +0200 | vglfr | (~vglfr@145.224.100.190) (Remote host closed the connection) |
2022-10-25 13:49:31 +0200 | <int-e> | (The space is not mandatory. I personally like omitting it (as done in the snippet) because it ties the {} block to the constructor rather than making it look like a braced expression.) |
2022-10-25 13:49:43 +0200 | cytokine_storm | (~cytokine_@user/cytokine-storm/x-1083107) (Ping timeout: 272 seconds) |
2022-10-25 13:49:50 +0200 | cytokine_storm | (~cytokine_@user/cytokine-storm/x-1083107) |
2022-10-25 13:49:52 +0200 | vglfr | (~vglfr@145.224.100.190) |
2022-10-25 13:51:32 +0200 | kuribas | (~user@silversquare.silversquare.eu) |
2022-10-25 13:53:39 +0200 | cytokine_storm | (~cytokine_@user/cytokine-storm/x-1083107) (Client Quit) |
2022-10-25 13:53:48 +0200 | <dminuoso> | Ohh! With the space it suddenly makes sense why it looks the way it looks. |
2022-10-25 13:53:57 +0200 | cytokine_storm | (~cytokine_@user/cytokine-storm/x-1083107) |
2022-10-25 13:53:57 +0200 | <dminuoso> | I've actually wondered about this myself before. |
2022-10-25 13:54:09 +0200 | jmdaemon | (~jmdaemon@user/jmdaemon) (Ping timeout: 272 seconds) |
2022-10-25 13:54:53 +0200 | <lyle> | Ok, I understand now--thanks! |
2022-10-25 13:55:19 +0200 | <lyle> | It's about the matching, I was looking at the {} as a argument. |
2022-10-25 13:55:45 +0200 | <dminuoso> | lyle: well you can sort of think of it along the sides of an argument. |
2022-10-25 13:56:04 +0200 | <dminuoso> | Foo { field1 = 1, field2 = 'b' } |
2022-10-25 13:56:07 +0200 | <dminuoso> | Foo { field1 = 1 } |
2022-10-25 13:56:10 +0200 | <dminuoso> | Foo {} |
2022-10-25 13:57:00 +0200 | <dminuoso> | % data Foo = Foo { f1 :: Int, f2 :: Char } |
2022-10-25 13:57:00 +0200 | <yahb2> | <no output> |
2022-10-25 13:57:06 +0200 | <dminuoso> | % x = Foo {} |
2022-10-25 13:57:06 +0200 | <yahb2> | <interactive>:14:5: warning: [-Wmissing-fields] ; • Fields of ‘Foo’ not initialised: ; f1 :: Int ; f2 :: Char ; • In the expression: Foo {} ; In an equation for ‘x’: x... |
2022-10-25 13:57:15 +0200 | <dminuoso> | So this *is* valid. |
2022-10-25 13:59:50 +0200 | wonko | (~wjc@user/wonko) (Ping timeout: 250 seconds) |
2022-10-25 14:00:05 +0200 | <merijn> | It's a nice way to match specific constructors without needing to care about the number of arguments it has |
2022-10-25 14:00:16 +0200 | axeman | (~quassel@2a02:8109:a380:78:eda1:cd6d:3994:f202) (Ping timeout: 250 seconds) |
2022-10-25 14:00:29 +0200 | <merijn> | So if you refactor and change the fields later, you don't have to fix the pattern except where it matters |
2022-10-25 14:00:42 +0200 | vglfr | (~vglfr@145.224.100.190) (Remote host closed the connection) |
2022-10-25 14:01:19 +0200 | cfricke | (~cfricke@user/cfricke) |
2022-10-25 14:01:19 +0200 | <lyle> | Ok, thanks everyone. This has been very helpful. |
2022-10-25 14:01:43 +0200 | <int-e> | :t Nothing{} |
2022-10-25 14:01:44 +0200 | <lambdabot> | Maybe a |
2022-10-25 14:01:59 +0200 | vglfr | (~vglfr@145.224.100.190) |
2022-10-25 14:02:37 +0200 | <dminuoso> | :t Nothing{}{} |
2022-10-25 14:02:38 +0200 | <lambdabot> | error: Empty record update |
2022-10-25 14:02:50 +0200 | vglfr | (~vglfr@145.224.100.190) (Remote host closed the connection) |
2022-10-25 14:03:04 +0200 | <dminuoso> | I feel like an empty record update should be valid! |
2022-10-25 14:03:34 +0200 | vglfr | (~vglfr@145.224.100.190) |
2022-10-25 14:03:34 +0200 | <dminuoso> | It's just like allowing a typeclass without type variables |
2022-10-25 14:03:37 +0200 | <int-e> | I kind of agree... though your example might convince me otherwise |
2022-10-25 14:04:32 +0200 | <int-e> | But I've had the `default{ ... }` case, where ... are options that I was playing around with, and it's annoying that the code breaks when the `...` is all commented out. |
2022-10-25 14:05:14 +0200 | <int-e> | But not allowing Nothing{}{}{}{}{}{}{} might be a boon. |
2022-10-25 14:05:37 +0200 | <dminuoso> | It just feels an arbitrary restriction |
2022-10-25 14:06:05 +0200 | <dminuoso> | `flip . flip . flip . flip` is not illegal either |
2022-10-25 14:06:23 +0200 | <dminuoso> | It might be silly and redudant, but I dont need GHC to hold my hands here |
2022-10-25 14:06:37 +0200 | <dminuoso> | % data Foo = Foo { f1 :: Int, f2 :: Char } |
2022-10-25 14:06:37 +0200 | <yahb2> | <no output> |
2022-10-25 14:06:41 +0200 | <dminuoso> | % Foo { f1 } |
2022-10-25 14:06:41 +0200 | <yahb2> | <interactive>:32:7: error: ; • Couldn't match expected type ‘Int’ with actual type ‘Foo -> Int’ ; • Probable cause: ‘f1’ is applied to too few arguments ; In the ‘f1’ field of a recor... |
2022-10-25 14:06:44 +0200 | <dminuoso> | How is this syntactically valid? |
2022-10-25 14:07:00 +0200 | <merijn> | dminuoso: NamedFieldPuns? |
2022-10-25 14:07:04 +0200 | <dminuoso> | Ohh |
2022-10-25 14:07:21 +0200 | <int-e> | % let f1 = 2 in Foo { f1 } -- let's check |
2022-10-25 14:07:21 +0200 | <yahb2> | <interactive>:34:1: error: ; • No instance for (Show Foo) ; arising from a use of ‘Yahb2Defs.limitedPrint’ ; • In a stmt of an interactive GHCi command: ; Yahb2Defs.limitedP... |
2022-10-25 14:07:30 +0200 | <int-e> | oh. |
2022-10-25 14:08:05 +0200 | <int-e> | % deriving instance Show Foo |
2022-10-25 14:08:05 +0200 | <yahb2> | <no output> |
2022-10-25 14:08:14 +0200 | <int-e> | % let f1 = 2 in Foo { f1 } |
2022-10-25 14:08:14 +0200 | <yahb2> | <interactive>:38:15: warning: [-Wmissing-fields] ; • Fields of ‘Foo’ not initialised: ; f2 :: Char ; • In the expression: Foo {f1} ; In the expression: let f1 = 2 in Foo {f1} ... |
2022-10-25 14:08:29 +0200 | <int-e> | % let f1 = 2 in Foo { f1, f2 = 3 } |
2022-10-25 14:08:29 +0200 | <yahb2> | <interactive>:40:30: error: ; • No instance for (Num Char) arising from the literal ‘3’ ; • In the ‘f2’ field of a record ; In the expression: Foo {f1, f2 = 3} ; In the expressi... |
2022-10-25 14:08:41 +0200 | <int-e> | % let f1 = 2 in Foo { f1, f2 = '3' } |
2022-10-25 14:08:41 +0200 | <yahb2> | Foo {f1 = 2, f2 = '3'} |
2022-10-25 14:08:49 +0200 | <int-e> | urgh, should've tested privately |
2022-10-25 14:08:56 +0200 | nate2 | (~nate@98.45.169.16) |
2022-10-25 14:08:59 +0200 | <dminuoso> | merijn: I prefer RecordWildCards for this job. |
2022-10-25 14:09:38 +0200 | <dminuoso> | It's an extension I flip on liberally, even though I wish the unhygenic macro (on pattern matching) part was a separate extension |
2022-10-25 14:09:45 +0200 | <int-e> | % let f1 = 2 in Foo { f1 } { f2 = '3' } -- should this warn? :P |
2022-10-25 14:09:45 +0200 | <yahb2> | <interactive>:46:15: warning: [-Wmissing-fields] ; • Fields of ‘Foo’ not initialised: ; f2 :: Char ; • In the expression: Foo {f1} ; In the expression: Foo {f1} {f2 = '3'} ; ... |
2022-10-25 14:10:18 +0200 | ajb | (~ajb@mimas.whatbox.ca) (Quit: bye) |
2022-10-25 14:10:44 +0200 | <dminuoso> | int-e: Presumably the pattern match coverage checker could be twisted around for this. But the second functions are in the mix, like `let f1 = 2 in Foo { f1 } $ { f2 = '3' }` this would no longer work. |
2022-10-25 14:12:38 +0200 | ajb | (~ajb@mimas.whatbox.ca) |
2022-10-25 14:14:12 +0200 | nate2 | (~nate@98.45.169.16) (Ping timeout: 260 seconds) |
2022-10-25 14:15:27 +0200 | <int-e> | % data Bar a = Bar { x :: a, y :: a } deriving Show |
2022-10-25 14:15:27 +0200 | <yahb2> | <no output> |
2022-10-25 14:15:38 +0200 | ajb | (~ajb@mimas.whatbox.ca) (Client Quit) |
2022-10-25 14:15:59 +0200 | <int-e> | % Bar () () { x = 1 } { y = 1 } -- I guess the idea of updating fields one by one is doomed anyway |
2022-10-25 14:15:59 +0200 | <yahb2> | <interactive>:50:8: error: ; • Constructor ‘()’ does not have field ‘x’ ; • In the expression: () {x = 1} ; In the second argument of ‘Bar’, namely ‘() {x = 1} {y = 1}’ ; In the... |
2022-10-25 14:15:59 +0200 | <kuribas> | Why do OOP or lisp researchers need to pick on static types? I saw the talk by Sussman, who's work I greatly admire, then he states "we should focus on flexibility and expressiveness, not on type systems". Why do they think their work invalidates type theory? |
2022-10-25 14:17:52 +0200 | <int-e> | ...maybe if all your code is perfect on the first try... |
2022-10-25 14:17:52 +0200 | <dminuoso> | kuribas: For one, type systems dont just rule out bad programs, they also have a false positive rate. |
2022-10-25 14:18:17 +0200 | <dminuoso> | Good and expressive type systems that dont filter out too many good programs (without inconveniencing the user) are rare. |
2022-10-25 14:19:02 +0200 | <kuribas> | even then, you are not obliged to use the type system for everything. |
2022-10-25 14:19:20 +0200 | <dminuoso> | The value of a type system rapidly decreases if you offer escape hatches |
2022-10-25 14:19:33 +0200 | <dminuoso> | You can observe this in typescript |
2022-10-25 14:19:41 +0200 | Unicorn_Princess | (~Unicorn_P@user/Unicorn-Princess/x-3540542) |
2022-10-25 14:20:21 +0200 | <kuribas> | the python static type checker has a "strict" mode, which forces you to put a type on all inputs. |
2022-10-25 14:20:24 +0200 | <dminuoso> | And bolting on a type system after the fact tends to be extremely hard for a language that has had semantics and additions for potentially decades without the worry of a type system. |
2022-10-25 14:20:31 +0200 | <kuribas> | You can still use "Any" of course. |
2022-10-25 14:21:05 +0200 | argento | (~argent0@168-227-97-23.ptr.westnet.com.ar) (Quit: Lost terminal) |
2022-10-25 14:25:17 +0200 | <kuribas> | int-e: also, his book is mostly on numerical techniques, or interesting algorithms. |
2022-10-25 14:25:49 +0200 | <kuribas> | int-e: a type system has diminishing returns there, however for structure heavy data (REST apis), I find it indespensible. |
2022-10-25 14:26:04 +0200 | <int-e> | ah, the world where everything is a number |
2022-10-25 14:26:21 +0200 | <int-e> | (except for NaN) |
2022-10-25 14:26:33 +0200 | <kuribas> | These techniques seem orthogonal to typesystems to me, they don't invalidate the work of type theorists. |
2022-10-25 14:27:04 +0200 | <dminuoso> | One thing that is definitely incompatible with convenience, is type systems around numbers. |
2022-10-25 14:27:15 +0200 | <int-e> | . o O ( "god is real, unless declared to be an integer" ) |
2022-10-25 14:27:26 +0200 | ajb | (~ajb@mimas.whatbox.ca) |
2022-10-25 14:27:35 +0200 | <dminuoso> | Consider the number of numeric types we have, and how often you realToFrac or fromInteger you way from a to b |
2022-10-25 14:27:41 +0200 | <dminuoso> | Probably losing information along the way. silently. |
2022-10-25 14:27:54 +0200 | <dminuoso> | The type system causes inconvenience and *still* doesnt prevent information loss |
2022-10-25 14:28:23 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "") |
2022-10-25 14:29:16 +0200 | <dminuoso> | Similar story with floating point numbers, though IEEE754 does allow for exception mechanisms, we just dont have this. |
2022-10-25 14:30:26 +0200 | ajb | (~ajb@mimas.whatbox.ca) (Client Quit) |
2022-10-25 14:30:56 +0200 | ajb_ | (~ajb@mimas.whatbox.ca) |
2022-10-25 14:31:06 +0200 | <dminuoso> | We could of course wrap every computation that could overflow/underflow/narrow a type in some `Either NumericError`, making it doubly inconvenient and relying on magic deforestation to not dunk performance entirely |
2022-10-25 14:32:01 +0200 | <dminuoso> | Though for what its worth, I think `int-cast` solves the `fromIntegral` problem mostly nicely |
2022-10-25 14:32:06 +0200 | <raehik> | oh reminds me dminuoso , if I want an efficient `Word16 -> Int16`, is `fromIntegral` good enough? will it be turned into some efficient primop |
2022-10-25 14:32:18 +0200 | <dminuoso> | raehik: Yes, it will internally be a noop |
2022-10-25 14:32:41 +0200 | Kaipei | (~Kaiepi@108.175.84.104) (Read error: Connection reset by peer) |
2022-10-25 14:32:44 +0200 | <dminuoso> | raehik: But for flatparse, I would just use the underlying primop manually |
2022-10-25 14:33:01 +0200 | <raehik> | lovely. there's a nice explicit `word16ToInt16 :: Word16# -> Int16#` exported on 9.4 and maybe 9.2, but not prior |
2022-10-25 14:33:08 +0200 | <raehik> | make that `word16ToInt16#` |
2022-10-25 14:33:15 +0200 | <dminuoso> | raehik: let us talk about that subject |
2022-10-25 14:33:37 +0200 | <dminuoso> | Ive come to the conclusion, that supporting sized primtypes before 9.2 is a fools errand, even internally |
2022-10-25 14:33:48 +0200 | <dminuoso> | before 9.2 you can just unsafeCoerce# between them |
2022-10-25 14:33:56 +0200 | ajb_ | (~ajb@mimas.whatbox.ca) (Client Quit) |
2022-10-25 14:34:09 +0200 | <dminuoso> | but the reality is, you really cant do anything with sized primops except unsafeCoerce# them to Word# -> and then use them |
2022-10-25 14:34:50 +0200 | <raehik> | OK. Learning that due to our heavy inlining and GHC's reliable unboxing (apparently?), I'm happy to agree |
2022-10-25 14:35:39 +0200 | <dminuoso> | but keeping Word# internally is unfeasible for two reasons: a) it busts 32 bit compatibility (which requires Word64# prims - for which there are primops on 32 bit systems on GHC <= 9.0) |
2022-10-25 14:36:01 +0200 | <dminuoso> | And b) it pins us to a legacy framework that will eventually lead to worse code generation |
2022-10-25 14:36:40 +0200 | <dminuoso> | For instance: post 9.2/9.4 a `data Foo = Foo Word8# Word8# Word8# Word8#` can be packed into a single Word32# |
2022-10-25 14:37:06 +0200 | <dminuoso> | But if we fling around a Word# that eventually gets narrowed, I can see it impacting cmm generation slightly |
2022-10-25 14:37:45 +0200 | <dminuoso> | raehik: so what we have, is what we should stick to. except the Word64# part, that needs fixing pre 9.0 |
2022-10-25 14:37:51 +0200 | xff0x | (~xff0x@2405:6580:b080:900:ca36:cc78:fa79:2e35) (Ping timeout: 272 seconds) |
2022-10-25 14:38:23 +0200 | <dminuoso> | Presumably its the way it is, because haddock doesnt reflect well enough the CPP switched shenanigans in ghc-prim that happens when word size is less than 64. |
2022-10-25 14:38:54 +0200 | <dminuoso> | you cant even see the Word64# primops on hackage for older GHCs, because that haddock gets executed on a 64 bit machine |
2022-10-25 14:40:27 +0200 | xff0x | (~xff0x@2405:6580:b080:900:ca36:cc78:fa79:2e35) |
2022-10-25 14:41:02 +0200 | koz | (~koz@121.99.240.58) (Ping timeout: 260 seconds) |
2022-10-25 14:41:09 +0200 | Kaiepi | (~Kaiepi@108.175.84.104) |
2022-10-25 14:41:47 +0200 | juri__ | (~juri@79.140.114.58) |
2022-10-25 14:42:12 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 260 seconds) |
2022-10-25 14:43:41 +0200 | kenran | (~user@user/kenran) (Remote host closed the connection) |
2022-10-25 14:44:37 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2022-10-25 14:44:56 +0200 | ajb | (~ajb@mimas.whatbox.ca) |
2022-10-25 14:44:58 +0200 | <raehik> | dminuoso: oops I dropped connection. last msg 7min ago |
2022-10-25 14:45:13 +0200 | <raehik> | I wrote: If we use Word64 and the "Word64" prims (e.g. `indexWord64OffAddr#`), are we OK for 32-bit support and performance? |
2022-10-25 14:46:13 +0200 | <raehik> | W64# and the various related primops use Word64# on 9.4, Word# on 64-bit pre-9.4, Word32# on 32-bit pre-9.4. is that correct? |
2022-10-25 14:46:27 +0200 | juri_ | (~juri@84-19-175-179.pool.ovpn.com) (Ping timeout: 272 seconds) |
2022-10-25 14:47:40 +0200 | <raehik> | so we can always wrap one of the output of such a primop into `W64# :: x -> Word64` then rely on GHC unboxing later |
2022-10-25 14:47:51 +0200 | ajb | (~ajb@mimas.whatbox.ca) (Client Quit) |
2022-10-25 14:47:58 +0200 | <raehik> | s/one of the output/the output |
2022-10-25 14:48:22 +0200 | koz | (~koz@121.99.240.58) |
2022-10-25 14:48:58 +0200 | <raehik> | Wait I got that wrong. On 32-bit, the Word64 primops should return Word64#. |
2022-10-25 14:49:01 +0200 | <raehik> | https://downloads.haskell.org/ghc/latest/docs/users_guide/9.4.1-notes.html |
2022-10-25 14:49:23 +0200 | causal | (~user@50.35.83.177) (Quit: WeeChat 3.6) |
2022-10-25 14:56:17 +0200 | ubert | (~Thunderbi@178.165.171.4.wireless.dyn.drei.com) (Ping timeout: 240 seconds) |
2022-10-25 14:56:18 +0200 | <dminuoso> | raehik: Correct, and more to the point on pre 9.0 there's a bunch of Word64# primops too. |
2022-10-25 14:57:15 +0200 | ubert | (~Thunderbi@178.165.171.4.wireless.dyn.drei.com) |
2022-10-25 14:57:27 +0200 | <dminuoso> | In simple terms: at <= 9.0 there's only two effective prim types: Word# and Word64#, but the latter is turned off - along with all 64-bit sized primops - on 64 bit systems |
2022-10-25 14:57:36 +0200 | <raehik> | dminuoso: do you want to use the primops that explicitly work on Word64# s, rather than the ones with Word64 in the name but actually working on Word# s (on 64-bit)? |
2022-10-25 14:57:40 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2022-10-25 14:58:08 +0200 | <dminuoso> | Yes! |
2022-10-25 14:58:37 +0200 | <kuribas> | int-e: btw, this book:https://mitpress.mit.edu/9780262045490/software-design-for-flexibility/ |
2022-10-25 14:58:53 +0200 | <dminuoso> | raehik: Or rather, on 32 bit they tend to do work on Word64# |
2022-10-25 14:59:01 +0200 | <dminuoso> | raehik: the primops themselves are CPP switched. |
2022-10-25 14:59:17 +0200 | freeside | (~mengwong@103.252.202.193) (Ping timeout: 240 seconds) |
2022-10-25 14:59:18 +0200 | <dminuoso> | a fact you cannot easily observe via hackage, because there is no actual haskell source code to see this |
2022-10-25 14:59:32 +0200 | <dminuoso> | (that is, even haddock doesnt help with view source, because there is no source) |
2022-10-25 14:59:32 +0200 | <raehik> | Right, but they must be in the primops pp file or whatever |
2022-10-25 14:59:41 +0200 | cfricke | (~cfricke@user/cfricke) (Quit: WeeChat 3.7) |
2022-10-25 14:59:45 +0200 | <dminuoso> | They are, but here comes the next big catch |
2022-10-25 14:59:49 +0200 | <dminuoso> | not all of them are exposed |
2022-10-25 15:00:07 +0200 | <dminuoso> | some are exposed only via ghc-prim (which we can just depend upon, its just part of ghc), but not all |
2022-10-25 15:00:23 +0200 | <dminuoso> | I have not yet been able to figure out which primops are exported and which ones are not |
2022-10-25 15:00:35 +0200 | <dminuoso> | Furthermore GHC.Exts from base has only a subset of what GHC.Prim has |
2022-10-25 15:00:47 +0200 | <dminuoso> | And GHC.Prim is a subset from what is defined in the primops pp file |
2022-10-25 15:01:43 +0200 | <raehik> | hmmm! I see |
2022-10-25 15:02:14 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2022-10-25 15:02:28 +0200 | <raehik> | why do you want the explicit Word64# primops? easier compatibility going forward, less CPP confusing things (behind the scenes or in flatparse)? |
2022-10-25 15:02:50 +0200 | <dminuoso> | 32 bit compatibility. |
2022-10-25 15:03:21 +0200 | ajb | (~ajb@mimas.whatbox.ca) |
2022-10-25 15:04:10 +0200 | <raehik> | provided we're using Word64s which should use Word64# on 32-bit (pre-9.4), what's the difference in compatibility? |
2022-10-25 15:04:21 +0200 | <dminuoso> | raehik: Ah and for the Word64# some arent even primops, so for example you would only find eqWord64# in GHC.Word on 32 bits |
2022-10-25 15:04:52 +0200 | <dminuoso> | raehik: Well, the W64 combinators become safe to use on 32 bit systems. Without it, they are not. |
2022-10-25 15:04:53 +0200 | <raehik> | yeah, I found that -- had to box instead |
2022-10-25 15:04:56 +0200 | <dminuoso> | And not just that |
2022-10-25 15:05:04 +0200 | <dminuoso> | Anything that transitively uses them, which is essentially everything |
2022-10-25 15:05:16 +0200 | <dminuoso> | say `string` relies on scan64# for example |
2022-10-25 15:05:40 +0200 | <dminuoso> | which means the usability of the entire library hinges on this |
2022-10-25 15:05:51 +0200 | <dminuoso> | (or we introduce flags to just work in 32 bit sized chunks) |
2022-10-25 15:06:03 +0200 | <dminuoso> | and mark Word64 bit combinators as incompatible on 32 bit systems |
2022-10-25 15:06:14 +0200 | <int-e> | kuribas: Hmm I see. Sounds interesting. Shouldn't types be largely independent from that though? |
2022-10-25 15:06:18 +0200 | <dminuoso> | The benefit of that approach is that its much much faster |
2022-10-25 15:06:33 +0200 | <dminuoso> | because much of the Word64# machine is implemented via FFI |
2022-10-25 15:06:38 +0200 | <dminuoso> | (in older GHC on 32 bit) |
2022-10-25 15:07:00 +0200 | troydm | (~troydm@host-176-37-124-197.b025.la.net.ua) (Ping timeout: 250 seconds) |
2022-10-25 15:07:08 +0200 | <kuribas> | int-e: yes, that's my thought. |
2022-10-25 15:07:45 +0200 | <dminuoso> | raehik: I dont know, maybe ultimately the answer is to just disable all the 64 bit machinery entirely if WORD_SIZE_IN_BITS < 64 |
2022-10-25 15:08:17 +0200 | <dminuoso> | but it requires a bit of additional CPP switcheroo, byteString of string both need to work with either scan64# or scan32# for the large chunks |
2022-10-25 15:08:28 +0200 | <dminuoso> | *byteString or string |
2022-10-25 15:08:44 +0200 | freeside | (~mengwong@103.252.202.193) |
2022-10-25 15:09:21 +0200 | <raehik> | dminuoso: I'm confused. As I understand Word64,Word64# are still there and still 8-bytes on 32-bit, just probably lots slower due to the machine word size mismatch. Why would the W64 combinators be unsafe? |
2022-10-25 15:09:33 +0200 | cfricke | (~cfricke@user/cfricke) |
2022-10-25 15:10:16 +0200 | <dminuoso> | raehik: So consider `byteString` for instance. It starts in Word64# chunks until there's just Word8#'s left. |
2022-10-25 15:11:02 +0200 | <dminuoso> | If we correctly map scan64# to 32 bit, then we will for a bunch of (what is now) primops instead go through ffi. |
2022-10-25 15:11:02 +0200 | teddyc | (theodorc@cassarossa.samfundet.no) (Quit: WeeChat 3.0) |
2022-10-25 15:11:37 +0200 | <dminuoso> | So two scan32# will likely be faster than scan64# on 32 bit systems |
2022-10-25 15:12:28 +0200 | <dminuoso> | One way to address this, is to rebuild `byteString` to start with Word32# (that is Word#) chunks, until there's just Word8#'s left. The presence of 64 bit primitives would just enable someone to use them, but they are inherently slow. |
2022-10-25 15:13:02 +0200 | <dminuoso> | So in that scenario they are not unsafe, just slow to the point that its better to not provide them. |
2022-10-25 15:13:41 +0200 | freeside | (~mengwong@103.252.202.193) (Ping timeout: 272 seconds) |
2022-10-25 15:14:40 +0200 | <raehik> | ah! so you want to retain good 32-bit performance |
2022-10-25 15:15:26 +0200 | <dminuoso> | Its additional work and ultimately baggage we will carry on. We already have most combinators duplicated across Basic and Stateful, providing 32 bit versions for each is not helping. |
2022-10-25 15:15:40 +0200 | kuribas | (~user@silversquare.silversquare.eu) (Read error: Connection reset by peer) |
2022-10-25 15:15:43 +0200 | <dminuoso> | I dont have good answers honestly, every time I look at it I dont like my previous perspective |
2022-10-25 15:15:52 +0200 | <MangoIV[m]> | Does anybody here use the `hls-eval-plugin` with a different editor than vscode? Thanks in advance. |
2022-10-25 15:16:09 +0200 | <raehik> | I wasn't really bothered if we forwent decent 32-bit performance. And I agree with your point above checking WORD_SIZE_IN_BITS |
2022-10-25 15:16:17 +0200 | zmt00 | (~zmt00@user/zmt00) |
2022-10-25 15:16:36 +0200 | <dminuoso> | Lets at the very least include an `#if WORD_SIZE_IN_BITS < 32; error "32 bit not supported"; #endif` then |
2022-10-25 15:16:49 +0200 | <dminuoso> | Oh, `WORD_SIZE_IN_BITS < 64` of course |
2022-10-25 15:16:52 +0200 | kuribas | (~user@silversquare.silversquare.eu) |
2022-10-25 15:17:09 +0200 | <dminuoso> | If we do that, then the Word64# story becomes easier for GHC 9.4 |
2022-10-25 15:17:20 +0200 | <raehik> | dminuoso: why would 32-bit not be supported? I thought the problem was just it would perform poorly |
2022-10-25 15:17:43 +0200 | <dminuoso> | Mmm fair |
2022-10-25 15:17:45 +0200 | <raehik> | Maybe I was missing sth on the 9.4 side, if primops don't align the same way |
2022-10-25 15:18:34 +0200 | <dminuoso> | Well, if we do want 32 bit support, we have to map out all the 64bit primops and see if there's any roundtripping through Word# |
2022-10-25 15:19:08 +0200 | <dminuoso> | Either way, the compatibility shims we have so far is exactly what we need, and we need to keep on doing this. |
2022-10-25 15:19:09 +0200 | <raehik> | Ah, that's true. I was working on cleaning up Word(#) vs. Word64(#) usage in my branch |
2022-10-25 15:19:12 +0200 | <dminuoso> | (I dont see a way to refactor this) |
2022-10-25 15:21:46 +0200 | nilradical | (~nilradica@user/naso) |
2022-10-25 15:22:17 +0200 | cytokine_storm | (~cytokine_@user/cytokine-storm/x-1083107) (Ping timeout: 240 seconds) |
2022-10-25 15:23:19 +0200 | cytokine_storm | (~cytokine_@user/cytokine-storm/x-1083107) |
2022-10-25 15:24:13 +0200 | <nilradical> | after upgrading to macos 13, my tests do not compile: "Bad interface file: .... x.hi mismatched interface file profile tag (wanted "", got "dyn")" |
2022-10-25 15:24:31 +0200 | kuribas | (~user@silversquare.silversquare.eu) (ERC (IRC client for Emacs 27.1)) |
2022-10-25 15:26:43 +0200 | freeside | (~mengwong@103.252.202.193) |
2022-10-25 15:27:50 +0200 | <nilradical> | false alarm, i did a cabal clean and rebuild and now it works. i do get some warnings though: |
2022-10-25 15:27:55 +0200 | <nilradical> | ld: warning: directory not found for option '-L/opt/local/lib/' |
2022-10-25 15:27:55 +0200 | <nilradical> | ld: warning: directory not found for option '-L/usr/local/lib/' |
2022-10-25 15:27:55 +0200 | <nilradical> | ld: warning: -undefined dynamic_lookup may not work with chained fixups |
2022-10-25 15:30:02 +0200 | teddyc | (theodorc@cassarossa.samfundet.no) |
2022-10-25 15:30:06 +0200 | <dminuoso> | raehik: By the way, here's my newest addition to the flatparse zoo: refocus :: BS.ByteString -> Parser e a -> Parser e a |
2022-10-25 15:30:14 +0200 | <dminuoso> | Temporarily switches out the internal buffer. :) |
2022-10-25 15:30:34 +0200 | azimut | (~azimut@gateway/tor-sasl/azimut) |
2022-10-25 15:30:48 +0200 | <int-e> | ...useful for implementing #include... |
2022-10-25 15:30:52 +0200 | <dminuoso> | Indeed. :) |
2022-10-25 15:31:12 +0200 | <raehik> | oh, nice! neat indeed |
2022-10-25 15:34:51 +0200 | Sgeo | (~Sgeo@user/sgeo) |
2022-10-25 15:35:14 +0200 | enoq | (~enoq@2a05:1141:1f5:5600:b9c9:721a:599:bfe7) |
2022-10-25 15:42:27 +0200 | kuribas | (~user@silversquare.silversquare.eu) |
2022-10-25 15:45:33 +0200 | kayvank | (~user@52-119-115-185.PUBLIC.monkeybrains.net) |
2022-10-25 15:46:20 +0200 | haritz | (~hrtz@82-69-11-11.dsl.in-addr.zen.co.uk) |
2022-10-25 15:46:20 +0200 | haritz | (~hrtz@82-69-11-11.dsl.in-addr.zen.co.uk) (Changing host) |
2022-10-25 15:46:20 +0200 | haritz | (~hrtz@user/haritz) |
2022-10-25 15:47:17 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2022-10-25 15:50:31 +0200 | pavonia | (~user@user/siracusa) (Quit: Bye!) |
2022-10-25 15:52:52 +0200 | jmorris | (uid537181@id-537181.uxbridge.irccloud.com) (Quit: Connection closed for inactivity) |
2022-10-25 15:53:16 +0200 | L29Ah | (~L29Ah@wikipedia/L29Ah) () |
2022-10-25 15:53:37 +0200 | wroathe | (~wroathe@207-153-38-140.fttp.usinternet.com) |
2022-10-25 15:53:37 +0200 | wroathe | (~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host) |
2022-10-25 15:53:37 +0200 | wroathe | (~wroathe@user/wroathe) |
2022-10-25 15:54:08 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2022-10-25 15:57:01 +0200 | shriekingnoise | (~shrieking@186.137.167.202) |
2022-10-25 15:59:17 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 272 seconds) |
2022-10-25 16:03:26 +0200 | Tuplanolla | (~Tuplanoll@91-159-69-240.elisa-laajakaista.fi) |
2022-10-25 16:04:57 +0200 | schweers | (~user@p200300e5773c9a00c23ebafffe9bd9c9.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
2022-10-25 16:07:14 +0200 | cytokine_storm | (~cytokine_@user/cytokine-storm/x-1083107) (Ping timeout: 250 seconds) |
2022-10-25 16:07:20 +0200 | ChaiTRex | (~ChaiTRex@user/chaitrex) (Ping timeout: 258 seconds) |
2022-10-25 16:07:29 +0200 | cytokine_storm | (~cytokine_@user/cytokine-storm/x-1083107) |
2022-10-25 16:08:43 +0200 | ChaiTRex | (~ChaiTRex@user/chaitrex) |
2022-10-25 16:10:37 +0200 | juri__ | (~juri@79.140.114.58) (Read error: Connection reset by peer) |
2022-10-25 16:15:02 +0200 | wonko | (~wjc@user/wonko) |
2022-10-25 16:15:37 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds) |
2022-10-25 16:16:46 +0200 | juri_ | (~juri@79.140.120.117) |
2022-10-25 16:18:10 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2022-10-25 16:18:22 +0200 | juri_ | (~juri@79.140.120.117) (Read error: Connection reset by peer) |
2022-10-25 16:21:48 +0200 | juri_ | (~juri@79.140.120.117) |
2022-10-25 16:22:37 +0200 | juri_ | (~juri@79.140.120.117) (Read error: Connection reset by peer) |
2022-10-25 16:24:17 +0200 | qrpnxz | (~qrpnxz@fsf/member/qrpnxz) (Ping timeout: 260 seconds) |
2022-10-25 16:24:42 +0200 | qrpnxz | (~qrpnxz@fsf/member/qrpnxz) |
2022-10-25 16:26:48 +0200 | juri_ | (~juri@84-19-175-179.pool.ovpn.com) |
2022-10-25 16:30:42 +0200 | ajb | (~ajb@mimas.whatbox.ca) (Quit: bye) |
2022-10-25 16:36:26 +0200 | ahrat | (~ahrat@user/ahrat) |
2022-10-25 16:37:10 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
2022-10-25 16:37:36 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a) |
2022-10-25 16:41:08 +0200 | micahcantor | (~micahcant@132.161.188.118) |
2022-10-25 16:41:39 +0200 | micahcantor | (~micahcant@132.161.188.118) (Client Quit) |
2022-10-25 16:41:54 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a) (Ping timeout: 250 seconds) |
2022-10-25 16:43:09 +0200 | phma | (phma@2001:5b0:211b:8ac8:bff1:e65f:43d1:3dd5) (Read error: Connection reset by peer) |
2022-10-25 16:44:00 +0200 | phma | (~phma@2001:5b0:211f:f528:7435:f7cd:de72:7162) |
2022-10-25 16:44:39 +0200 | zebrag | (~chris@user/zebrag) |
2022-10-25 16:52:57 +0200 | ChaiTRex | (~ChaiTRex@user/chaitrex) (Ping timeout: 258 seconds) |
2022-10-25 16:53:53 +0200 | ChaiTRex | (~ChaiTRex@user/chaitrex) |
2022-10-25 17:08:21 +0200 | bgs | (~bgs@212-85-160-171.dynamic.telemach.net) |
2022-10-25 17:13:30 +0200 | dextaa | (~DV@user/dextaa) (Quit: Leaving) |
2022-10-25 17:14:26 +0200 | dextaa | (~DV@user/dextaa) |
2022-10-25 17:16:32 +0200 | <Profpatsch> | kinda annoying that the default instance of <|> for IO is `catchException` |
2022-10-25 17:16:43 +0200 | azimut | (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 258 seconds) |
2022-10-25 17:16:43 +0200 | <Profpatsch> | Instead of passing through the Alternative instance of the inner type |
2022-10-25 17:17:02 +0200 | dextaa4 | (~DV@user/dextaa) |
2022-10-25 17:17:09 +0200 | <Profpatsch> | But I can use Monoid I guess |
2022-10-25 17:19:10 +0200 | dextaa | (~DV@user/dextaa) (Ping timeout: 250 seconds) |
2022-10-25 17:19:10 +0200 | dextaa4 | dextaa |
2022-10-25 17:20:48 +0200 | nilradical | (~nilradica@user/naso) () |
2022-10-25 17:22:47 +0200 | ajb | (~ajb@mimas.whatbox.ca) |
2022-10-25 17:25:25 +0200 | dextaa | (~DV@user/dextaa) (Ping timeout: 272 seconds) |
2022-10-25 17:26:34 +0200 | ajb | (~ajb@mimas.whatbox.ca) (Client Quit) |
2022-10-25 17:28:27 +0200 | jonathanx | (~jonathan@h-98-128-168-222.NA.cust.bahnhof.se) (Ping timeout: 260 seconds) |
2022-10-25 17:29:14 +0200 | jco | (~jco@90-228-194-139-no542.tbcn.telia.com) (Remote host closed the connection) |
2022-10-25 17:30:21 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2022-10-25 17:30:28 +0200 | dextaa | (~DV@user/dextaa) |
2022-10-25 17:31:43 +0200 | ajb | (~ajb@mimas.whatbox.ca) |
2022-10-25 17:31:49 +0200 | dextaa | (~DV@user/dextaa) (Client Quit) |
2022-10-25 17:32:55 +0200 | dextaa | (~DV@user/dextaa) |
2022-10-25 17:32:57 +0200 | ChaiTRex | (~ChaiTRex@user/chaitrex) (Remote host closed the connection) |
2022-10-25 17:33:29 +0200 | ChaiTRex | (~ChaiTRex@user/chaitrex) |
2022-10-25 17:34:43 +0200 | ajb | (~ajb@mimas.whatbox.ca) (Client Quit) |
2022-10-25 17:35:47 +0200 | kuribas` | (~user@silversquare.silversquare.eu) |
2022-10-25 17:36:34 +0200 | kuribas | (~user@silversquare.silversquare.eu) (Read error: Connection reset by peer) |
2022-10-25 17:39:26 +0200 | ajb | (~ajb@mimas.whatbox.ca) |
2022-10-25 17:41:13 +0200 | <davean> | Profpatsch: You can of course use applicative to Alternative the interiors of the IO actions, but the IO actions themselves have to be Alternative because they also encode failing. |
2022-10-25 17:43:10 +0200 | ajb | (~ajb@mimas.whatbox.ca) (Client Quit) |
2022-10-25 17:43:30 +0200 | quintasan_ | (~quassel@quintasan.pl) () |
2022-10-25 17:43:41 +0200 | quintasan | (~quassel@quintasan.pl) |
2022-10-25 17:45:46 +0200 | boxscape_ | (~boxscape_@81.191.27.107) |
2022-10-25 17:47:22 +0200 | kuribas` | (~user@silversquare.silversquare.eu) (Remote host closed the connection) |
2022-10-25 17:49:29 +0200 | ahrat | (~ahrat@user/ahrat) (Ping timeout: 272 seconds) |
2022-10-25 17:49:50 +0200 | dextaa | (~DV@user/dextaa) (Quit: Leaving) |
2022-10-25 17:49:51 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a) |
2022-10-25 17:50:27 +0200 | ahrat | (~ahrat@user/ahrat) |
2022-10-25 17:50:50 +0200 | dextaa | (~DV@user/dextaa) |
2022-10-25 17:54:03 +0200 | ajb | (~ajb@mimas.whatbox.ca) |
2022-10-25 17:56:30 +0200 | jonathanx | (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) |
2022-10-25 17:56:57 +0200 | ajb | (~ajb@mimas.whatbox.ca) (Client Quit) |
2022-10-25 17:57:57 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2022-10-25 17:58:36 +0200 | Tuplanolla | (~Tuplanoll@91-159-69-240.elisa-laajakaista.fi) (Ping timeout: 250 seconds) |
2022-10-25 17:59:20 +0200 | ajb | (~ajb@mimas.whatbox.ca) |
2022-10-25 18:00:05 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a) (Remote host closed the connection) |
2022-10-25 18:00:06 +0200 | aaronv | (~aaronv@user/aaronv) (Quit: You have been kicked for being idle) |
2022-10-25 18:00:35 +0200 | <jonathanx> | when I store data in a TVar (though newTVar/writeTVar), is the data evaluated fully? |
2022-10-25 18:00:48 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a) |
2022-10-25 18:01:08 +0200 | <jonathanx> | or can data in a TVar be in the form of unevaluated thunks? |
2022-10-25 18:02:15 +0200 | ajb | (~ajb@mimas.whatbox.ca) (Client Quit) |
2022-10-25 18:03:11 +0200 | Kaiepi | (~Kaiepi@108.175.84.104) (Quit: Leaving) |
2022-10-25 18:04:24 +0200 | <geekosaur> | pretty sure it's like any other *ref/*var and can hold thunks. consider using $! |
2022-10-25 18:04:24 +0200 | cfricke | (~cfricke@user/cfricke) (Quit: WeeChat 3.7.1) |
2022-10-25 18:04:34 +0200 | o-90 | (~o-90@gateway/tor-sasl/o-90) |
2022-10-25 18:08:08 +0200 | Kaiepi | (~Kaiepi@108.175.84.104) |
2022-10-25 18:09:56 +0200 | ajb | (~ajb@mimas.whatbox.ca) |
2022-10-25 18:10:27 +0200 | nate2 | (~nate@98.45.169.16) |
2022-10-25 18:10:32 +0200 | o-90 | (~o-90@gateway/tor-sasl/o-90) (Remote host closed the connection) |
2022-10-25 18:11:17 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a) (Remote host closed the connection) |
2022-10-25 18:12:20 +0200 | azimut | (~azimut@gateway/tor-sasl/azimut) |
2022-10-25 18:12:48 +0200 | tzh | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) |
2022-10-25 18:12:56 +0200 | ajb | (~ajb@mimas.whatbox.ca) (Quit: bye) |
2022-10-25 18:14:12 +0200 | Tuplanolla | (~Tuplanoll@91-159-68-111.elisa-laajakaista.fi) |
2022-10-25 18:15:42 +0200 | nate2 | (~nate@98.45.169.16) (Ping timeout: 260 seconds) |
2022-10-25 18:16:08 +0200 | enoq | (~enoq@2a05:1141:1f5:5600:b9c9:721a:599:bfe7) (Quit: enoq) |
2022-10-25 18:17:57 +0200 | nschoe | (~q@2a01:e0a:8e:a190:6b6f:b6f8:7b03:5cf7) (Ping timeout: 240 seconds) |
2022-10-25 18:22:19 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a) |
2022-10-25 18:23:56 +0200 | econo | (uid147250@user/econo) |
2022-10-25 18:28:12 +0200 | Guest47 | (~Guest47@106.203.214.117) |
2022-10-25 18:32:22 +0200 | Guest47 | (~Guest47@106.203.214.117) (Client Quit) |
2022-10-25 18:33:38 +0200 | detuneattune | (~detuneatt@user/detuneattune) (Quit: The Lounge - https://thelounge.chat) |
2022-10-25 18:38:12 +0200 | redmp | (~redmp@mobile-166-137-178-135.mycingular.net) |
2022-10-25 18:38:17 +0200 | merijn | (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds) |
2022-10-25 18:38:58 +0200 | WzC | (~Frank@77-162-168-71.fixed.kpn.net) |
2022-10-25 18:39:12 +0200 | coldtom4 | (~coldtom@coldrick.cc) |
2022-10-25 18:39:13 +0200 | caubert_ | (~caubert@user/caubert) |
2022-10-25 18:39:13 +0200 | Square | (~a@user/square) (Ping timeout: 252 seconds) |
2022-10-25 18:39:13 +0200 | x88x88x | (~x88x88x@149.28.53.172) (Ping timeout: 252 seconds) |
2022-10-25 18:39:16 +0200 | coot | (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot) |
2022-10-25 18:39:20 +0200 | L29Ah | (~L29Ah@wikipedia/L29Ah) |
2022-10-25 18:39:34 +0200 | lortabac | (~lortabac@2a01:e0a:541:b8f0:ac5b:f1ab:700:d86f) (Quit: WeeChat 2.8) |
2022-10-25 18:39:57 +0200 | mjs2600 | (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Ping timeout: 252 seconds) |
2022-10-25 18:39:57 +0200 | tstat | (~tstat@user/tstat) (Ping timeout: 252 seconds) |
2022-10-25 18:39:57 +0200 | Trattue | (~Trattue@152.70.182.158) (Ping timeout: 252 seconds) |
2022-10-25 18:40:16 +0200 | justache | (~justache@user/justache) |
2022-10-25 18:40:19 +0200 | orcus- | (~orcus@user/brprice) |
2022-10-25 18:40:19 +0200 | mjs2600 | (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) |
2022-10-25 18:40:19 +0200 | Logio | (em@kapsi.fi) (Ping timeout: 252 seconds) |
2022-10-25 18:40:19 +0200 | orcus | (~orcus@user/brprice) (Ping timeout: 252 seconds) |
2022-10-25 18:40:19 +0200 | dfordivam1 | (~dfordivam@tk2-219-19469.vs.sakura.ne.jp) (Ping timeout: 252 seconds) |
2022-10-25 18:40:19 +0200 | Maxdamantus | (~Maxdamant@user/maxdamantus) (Ping timeout: 252 seconds) |
2022-10-25 18:40:20 +0200 | Hecate | (~mariposa@user/hecate) (Ping timeout: 252 seconds) |
2022-10-25 18:40:26 +0200 | drewolson0 | (~drewolson@user/drewolson) |
2022-10-25 18:40:29 +0200 | polux3 | (~polux@51-15-169-172.rev.poneytelecom.eu) |
2022-10-25 18:40:41 +0200 | Natch | (~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se) (Ping timeout: 252 seconds) |
2022-10-25 18:40:41 +0200 | WarzoneCommand | (~Frank@77-162-168-71.fixed.kpn.net) (Ping timeout: 252 seconds) |
2022-10-25 18:40:41 +0200 | gabiruh_ | (~gabiruh@vps19177.publiccloud.com.br) (Ping timeout: 252 seconds) |
2022-10-25 18:40:41 +0200 | heath | (~heath@user/heath) (Ping timeout: 252 seconds) |
2022-10-25 18:40:41 +0200 | maerwald | (~maerwald@user/maerwald) (Ping timeout: 252 seconds) |
2022-10-25 18:40:41 +0200 | c_wraith | (~c_wraith@adjoint.us) (Ping timeout: 252 seconds) |
2022-10-25 18:40:41 +0200 | tolt | (~weechat-h@li219-154.members.linode.com) (Ping timeout: 252 seconds) |
2022-10-25 18:40:41 +0200 | int-e | (~noone@int-e.eu) (Ping timeout: 252 seconds) |
2022-10-25 18:40:42 +0200 | alp | (~alp@user/alp) (Ping timeout: 252 seconds) |
2022-10-25 18:40:42 +0200 | hippoid | (~idris@user/hippoid) (Ping timeout: 252 seconds) |
2022-10-25 18:40:42 +0200 | polux | (~polux@51-15-169-172.rev.poneytelecom.eu) (Ping timeout: 252 seconds) |
2022-10-25 18:40:42 +0200 | koala_man | (~vidar@157.146.251.23.bc.googleusercontent.com) (Ping timeout: 252 seconds) |
2022-10-25 18:40:42 +0200 | maerwald_ | (~maerwald@mail.hasufell.de) |
2022-10-25 18:40:42 +0200 | polux3 | polux |
2022-10-25 18:40:51 +0200 | gabiruh | (~gabiruh@vps19177.publiccloud.com.br) |
2022-10-25 18:40:56 +0200 | YoungFrawg | (~youngfrog@2a02:a03f:ca07:f900:79d4:df1f:2403:242a) |
2022-10-25 18:41:03 +0200 | Unode | (~Unode@194.94.44.220) (Ping timeout: 252 seconds) |
2022-10-25 18:41:03 +0200 | rodental | (~rodental@38.146.5.222) (Ping timeout: 252 seconds) |
2022-10-25 18:41:03 +0200 | shane | (~shane@ana.rch.ist) (Ping timeout: 252 seconds) |
2022-10-25 18:41:03 +0200 | foul_owl | (~kerry@23.82.194.107) (Ping timeout: 252 seconds) |
2022-10-25 18:41:03 +0200 | mmaruseacph2 | (~mihai@198.199.98.239) (Ping timeout: 252 seconds) |
2022-10-25 18:41:03 +0200 | kjak | (~kjak@pool-108-31-114-135.washdc.fios.verizon.net) (Ping timeout: 252 seconds) |
2022-10-25 18:41:03 +0200 | chymera | (~chymera@ns1000526.ip-51-81-46.us) (Ping timeout: 252 seconds) |
2022-10-25 18:41:03 +0200 | YoungFrog | (~youngfrog@39.129-180-91.adsl-dyn.isp.belgacom.be) (Ping timeout: 252 seconds) |
2022-10-25 18:41:04 +0200 | SIben | (~SIben@ns3106586.ip-5-135-191.eu) (Ping timeout: 252 seconds) |
2022-10-25 18:41:04 +0200 | kosmikus | (~kosmikus@nullzig.kosmikus.org) (Ping timeout: 252 seconds) |
2022-10-25 18:41:04 +0200 | fryguybob | (~fryguybob@cpe-74-67-169-145.rochester.res.rr.com) (Ping timeout: 252 seconds) |
2022-10-25 18:41:04 +0200 | Techcable | (~Techcable@user/Techcable) (Ping timeout: 252 seconds) |
2022-10-25 18:41:04 +0200 | caubert | (~caubert@user/caubert) (Ping timeout: 252 seconds) |
2022-10-25 18:41:04 +0200 | barrucadu | (~barrucadu@carcosa.barrucadu.co.uk) (Ping timeout: 252 seconds) |
2022-10-25 18:41:04 +0200 | akhesacaro | (~caro@212-83-144-58.rev.poneytelecom.eu) (Ping timeout: 252 seconds) |
2022-10-25 18:41:04 +0200 | telser_ | (~quassel@user/telser) (Ping timeout: 252 seconds) |
2022-10-25 18:41:04 +0200 | drewolson | (~drewolson@user/drewolson) (Ping timeout: 252 seconds) |
2022-10-25 18:41:04 +0200 | coldtom | (~coldtom@coldrick.cc) (Ping timeout: 252 seconds) |
2022-10-25 18:41:04 +0200 | _________ | (~nobody@user/noodly) (Ping timeout: 252 seconds) |
2022-10-25 18:41:05 +0200 | drewolson0 | drewolson |
2022-10-25 18:41:05 +0200 | coldtom4 | coldtom |
2022-10-25 18:41:16 +0200 | Unode | (~Unode@194.94.44.220) |
2022-10-25 18:41:20 +0200 | Trattue | (~Trattue@152.70.182.158) |
2022-10-25 18:41:25 +0200 | koolazer | (~koo@user/koolazer) (Ping timeout: 252 seconds) |
2022-10-25 18:41:25 +0200 | bcoppens | (~bartcopp@vpn2.bartcoppens.be) (Ping timeout: 252 seconds) |
2022-10-25 18:41:25 +0200 | isamiamsam | (~d@zukertort.childrenofmay.org) (Ping timeout: 252 seconds) |
2022-10-25 18:41:25 +0200 | hexeme | (~hexeme@user/hexeme) (Ping timeout: 252 seconds) |
2022-10-25 18:41:25 +0200 | tdammers | (~tdammers@77.109.72.118.res.static.edpnet.net) (Ping timeout: 252 seconds) |
2022-10-25 18:41:25 +0200 | davean | (~davean@davean.sciesnet.net) (Ping timeout: 252 seconds) |
2022-10-25 18:41:25 +0200 | piele | (~piele@tbonesteak.creativeserver.net) (Ping timeout: 252 seconds) |
2022-10-25 18:41:25 +0200 | justHaunted | (~justache@user/justache) (Ping timeout: 252 seconds) |
2022-10-25 18:41:25 +0200 | pie_ | (~pie_bnc@user/pie/x-2818909) (Ping timeout: 252 seconds) |
2022-10-25 18:41:26 +0200 | sm[i] | (~user@plaintextaccounting/sm) (Ping timeout: 252 seconds) |
2022-10-25 18:41:26 +0200 | Rembane | (~Rembane@li346-36.members.linode.com) (Ping timeout: 252 seconds) |
2022-10-25 18:41:27 +0200 | hexeme_ | (~hexeme@user/hexeme) |
2022-10-25 18:41:47 +0200 | fjmorazan | (~quassel@user/fjmorazan) (Ping timeout: 252 seconds) |
2022-10-25 18:41:47 +0200 | Zemyla | (~ec2-user@ec2-54-80-174-150.compute-1.amazonaws.com) (Ping timeout: 252 seconds) |
2022-10-25 18:41:47 +0200 | cross | (~cross@spitfire.i.gajendra.net) (Ping timeout: 252 seconds) |
2022-10-25 18:41:47 +0200 | tessier | (~treed@98.171.210.130) (Ping timeout: 252 seconds) |
2022-10-25 18:41:47 +0200 | robbert-vdh | (~robbert@robbertvanderhelm.nl) (Ping timeout: 252 seconds) |
2022-10-25 18:41:47 +0200 | carbolymer | (~carbolyme@dropacid.net) (Ping timeout: 252 seconds) |
2022-10-25 18:41:49 +0200 | pie_ | (~pie_bnc@user/pie/x-2818909) |
2022-10-25 18:41:49 +0200 | piele | (~piele@tbonesteak.creativeserver.net) |
2022-10-25 18:41:55 +0200 | telser | (~quassel@user/telser) |
2022-10-25 18:41:57 +0200 | YoungFrawg | YoungFrog |
2022-10-25 18:42:03 +0200 | carbolymer | (~carbolyme@dropacid.net) |
2022-10-25 18:42:03 +0200 | fjmorazan | (~quassel@user/fjmorazan) |
2022-10-25 18:42:12 +0200 | Logio | (em@kapsi.fi) |
2022-10-25 18:42:12 +0200 | chymera | (~chymera@ns1000526.ip-51-81-46.us) |
2022-10-25 18:42:15 +0200 | Hecate | (~mariposa@user/hecate) |
2022-10-25 18:42:24 +0200 | Maxdamantus | (~Maxdamant@user/maxdamantus) |
2022-10-25 18:42:25 +0200 | kosmikus | (~kosmikus@nullzig.kosmikus.org) |
2022-10-25 18:42:36 +0200 | heath | (~heath@user/heath) |
2022-10-25 18:42:37 +0200 | int-e | (~noone@int-e.eu) |
2022-10-25 18:42:37 +0200 | dfordivam1 | (~dfordivam@tk2-219-19469.vs.sakura.ne.jp) |
2022-10-25 18:42:38 +0200 | koala_man | (~vidar@157.146.251.23.bc.googleusercontent.com) |
2022-10-25 18:42:38 +0200 | hippoid | (~idris@user/hippoid) |
2022-10-25 18:42:42 +0200 | tolt | (~weechat-h@li219-154.members.linode.com) |
2022-10-25 18:42:43 +0200 | alpm | (~alp@user/alp) |
2022-10-25 18:42:49 +0200 | shane | (~shane@ana.rch.ist) |
2022-10-25 18:42:51 +0200 | barrucadu | (~barrucadu@carcosa.barrucadu.co.uk) |
2022-10-25 18:42:56 +0200 | SIben | (~SIben@ns3106586.ip-5-135-191.eu) |
2022-10-25 18:42:56 +0200 | kjak | (~kjak@pool-108-31-114-135.washdc.fios.verizon.net) |
2022-10-25 18:42:58 +0200 | mmaruseacph2 | (~mihai@198.199.98.239) |
2022-10-25 18:43:01 +0200 | Zemyla | (~ec2-user@ec2-54-80-174-150.compute-1.amazonaws.com) |
2022-10-25 18:43:04 +0200 | _________ | (~nobody@user/noodly) |
2022-10-25 18:43:07 +0200 | fryguybob | (~fryguybob@cpe-74-67-169-145.rochester.res.rr.com) |
2022-10-25 18:43:07 +0200 | Techcable | (~Techcable@user/Techcable) |
2022-10-25 18:43:08 +0200 | bcoppens | (~bartcopp@vpn2.bartcoppens.be) |
2022-10-25 18:43:19 +0200 | Rembane | (~Rembane@li346-36.members.linode.com) |
2022-10-25 18:43:21 +0200 | isamiamsam | (~d@zukertort.childrenofmay.org) |
2022-10-25 18:43:27 +0200 | koolazer | (~koo@user/koolazer) |
2022-10-25 18:43:35 +0200 | tessier | (~treed@98.171.210.130) |
2022-10-25 18:43:39 +0200 | robbert-vdh | (~robbert@robbertvanderhelm.nl) |
2022-10-25 18:43:52 +0200 | cross | (~cross@spitfire.i.gajendra.net) |
2022-10-25 18:43:59 +0200 | tstat | (~tstat@user/tstat) |
2022-10-25 18:44:00 +0200 | Natch | (~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se) |
2022-10-25 18:45:50 +0200 | x88x88x | (~x88x88x@2001:19f0:5:39a8:5400:3ff:feb6:73cb) |
2022-10-25 18:46:11 +0200 | niko | (niko@libera/staff/niko) (Ping timeout: 608 seconds) |
2022-10-25 18:47:18 +0200 | Square | (~a@user/square) |
2022-10-25 18:47:24 +0200 | c_wraith | (~c_wraith@adjoint.us) |
2022-10-25 18:48:07 +0200 | sm[i] | (~user@plaintextaccounting/sm) |
2022-10-25 18:48:50 +0200 | nschoe | (~q@2a01:e0a:8e:a190:8a5e:a72c:c353:f747) |
2022-10-25 18:51:46 +0200 | ajb | (~ajb@mimas.whatbox.ca) |
2022-10-25 18:52:29 +0200 | ajb | (~ajb@mimas.whatbox.ca) (Read error: Connection timed out) |
2022-10-25 18:53:23 +0200 | niko | (niko@libera/staff/niko) |
2022-10-25 18:53:33 +0200 | rodental | (~rodental@38.146.5.222) |
2022-10-25 18:54:12 +0200 | davean | (~davean@davean.sciesnet.net) |
2022-10-25 18:54:12 +0200 | tdammers | (~tdammers@77.109.72.118.res.static.edpnet.net) |
2022-10-25 18:54:54 +0200 | foul_owl | (~kerry@23.82.194.107) |
2022-10-25 18:56:24 +0200 | mjs2600 | (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Quit: ZNC 1.8.2 - https://znc.in) |
2022-10-25 18:56:39 +0200 | mjs2600 | (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) |
2022-10-25 18:58:03 +0200 | justache | justHaunted |
2022-10-25 18:58:25 +0200 | titibandit | (~titibandi@xdsl-87-78-36-34.nc.de) |
2022-10-25 18:58:52 +0200 | thyriaen | (~thyriaen@2a01:aea0:dd4:470d:6245:cbff:fe9f:48b1) |
2022-10-25 19:00:08 +0200 | wonko | (~wjc@user/wonko) (Ping timeout: 250 seconds) |
2022-10-25 19:01:28 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2022-10-25 19:02:40 +0200 | EvanR_ | EvanR |
2022-10-25 19:05:24 +0200 | merijn | (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) |
2022-10-25 19:06:21 +0200 | akhesacaro | (~caro@212-83-144-58.rev.poneytelecom.eu) |
2022-10-25 19:08:21 +0200 | segfaultfizzbuzz | (~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) |
2022-10-25 19:10:18 +0200 | titibandit | (~titibandi@xdsl-87-78-36-34.nc.de) (Remote host closed the connection) |
2022-10-25 19:22:12 +0200 | beteigeuze | (~Thunderbi@a79-169-109-107.cpe.netcabo.pt) (Ping timeout: 260 seconds) |
2022-10-25 19:25:30 +0200 | Midjak | (~Midjak@82.66.147.146) (Quit: This computer has gone to sleep) |
2022-10-25 19:28:51 +0200 | beteigeuze | (~Thunderbi@89.187.168.55) |
2022-10-25 19:29:43 +0200 | finsternis | (~X@23.226.237.192) |
2022-10-25 19:30:22 +0200 | shapr | (~user@net-5-88-239-29.cust.vodafonedsl.it) (Ping timeout: 260 seconds) |
2022-10-25 19:33:04 +0200 | beteigeuze | (~Thunderbi@89.187.168.55) (Ping timeout: 250 seconds) |
2022-10-25 19:34:37 +0200 | raym | (~ray@user/raym) (Ping timeout: 240 seconds) |
2022-10-25 19:36:45 +0200 | raym | (~ray@user/raym) |
2022-10-25 19:38:57 +0200 | mixfix41 | (~sdeny9ee@user/mixfix41) (Ping timeout: 240 seconds) |
2022-10-25 19:46:38 +0200 | ajb | (~ajb@mimas.whatbox.ca) |
2022-10-25 19:49:00 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2022-10-25 19:49:21 +0200 | ajb | (~ajb@mimas.whatbox.ca) (Read error: Connection timed out) |
2022-10-25 19:51:32 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a) (Remote host closed the connection) |
2022-10-25 19:53:58 +0200 | ajb | (~ajb@mimas.whatbox.ca) |
2022-10-25 19:54:11 +0200 | Sciencentistguy | (~sciencent@hacksoc/ordinary-member) |
2022-10-25 19:55:26 +0200 | jao | (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
2022-10-25 19:56:59 +0200 | ajb | (~ajb@mimas.whatbox.ca) (Client Quit) |
2022-10-25 19:57:11 +0200 | ajb | (~ajb@mimas.whatbox.ca) |
2022-10-25 20:00:16 +0200 | ajb | (~ajb@mimas.whatbox.ca) (Client Quit) |
2022-10-25 20:00:16 +0200 | Vajb | (~Vajb@2001:999:504:1841:9e47:1ec7:a52e:1d57) (Read error: Connection reset by peer) |
2022-10-25 20:00:33 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a5-27.dhcp.inet.fi) |
2022-10-25 20:00:41 +0200 | boxscape_ | (~boxscape_@81.191.27.107) (Remote host closed the connection) |
2022-10-25 20:00:58 +0200 | boxscape_ | (~boxscape_@81.191.27.107) |
2022-10-25 20:04:51 +0200 | chele | (~chele@user/chele) (Remote host closed the connection) |
2022-10-25 20:05:40 +0200 | ft | (~ft@p3e9bc845.dip0.t-ipconnect.de) |
2022-10-25 20:06:43 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a) |
2022-10-25 20:06:54 +0200 | alpm | alp |
2022-10-25 20:09:49 +0200 | mvk | (~mvk@2607:fea8:5ce3:8500::a80f) |
2022-10-25 20:10:49 +0200 | mbuf | (~Shakthi@49.204.140.84) (Quit: Leaving) |
2022-10-25 20:17:28 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a5-27.dhcp.inet.fi) (Read error: Connection reset by peer) |
2022-10-25 20:19:02 +0200 | Vajb | (~Vajb@2001:999:504:1841:9e47:1ec7:a52e:1d57) |
2022-10-25 20:20:54 +0200 | koz | (~koz@121.99.240.58) (Quit: ZNC 1.8.2 - https://znc.in) |
2022-10-25 20:21:39 +0200 | koz | (~koz@121.99.240.58) |
2022-10-25 20:25:23 +0200 | ajb | (~ajb@mimas.whatbox.ca) |
2022-10-25 20:28:25 +0200 | ajb | (~ajb@mimas.whatbox.ca) (Client Quit) |
2022-10-25 20:30:00 +0200 | SethTisue | (sid14912@id-14912.ilkley.irccloud.com) () |
2022-10-25 20:30:10 +0200 | SethTisue | (sid14912@id-14912.ilkley.irccloud.com) |
2022-10-25 20:30:35 +0200 | ajb | (~ajb@mimas.whatbox.ca) |
2022-10-25 20:31:05 +0200 | segfaultfizzbuzz | (~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) (Ping timeout: 276 seconds) |
2022-10-25 20:31:07 +0200 | zeenk | (~zeenk@2a02:2f04:a105:5d00:c862:f190:2ea:d494) |
2022-10-25 20:33:31 +0200 | ajb | (~ajb@mimas.whatbox.ca) (Client Quit) |
2022-10-25 20:35:36 +0200 | gmg | (~user@user/gehmehgeh) (Quit: Leaving) |
2022-10-25 20:36:57 +0200 | nschoe | (~q@2a01:e0a:8e:a190:8a5e:a72c:c353:f747) (Quit: Switching off) |
2022-10-25 20:45:42 +0200 | lyle | (~lyle@104.246.145.85) (Quit: WeeChat 3.7.1) |
2022-10-25 20:46:22 +0200 | ajb | (~ajb@mimas.whatbox.ca) |
2022-10-25 20:46:35 +0200 | troydm | (~troydm@host-176-37-124-197.b025.la.net.ua) |
2022-10-25 20:49:22 +0200 | ajb | (~ajb@mimas.whatbox.ca) (Quit: bye) |
2022-10-25 20:54:06 +0200 | hnOsmium0001 | (uid453710@user/hnOsmium0001) (Ping timeout: 264 seconds) |
2022-10-25 20:57:41 +0200 | hnOsmium0001 | (uid453710@user/hnOsmium0001) |
2022-10-25 20:59:00 +0200 | danza | (~francesco@151.43.89.78) |
2022-10-25 20:59:12 +0200 | talismanick | (~talismani@76.133.152.122) |
2022-10-25 21:05:40 +0200 | phma_ | (phma@2001:5b0:211f:f528:7435:f7cd:de72:7162) |
2022-10-25 21:05:48 +0200 | fserucas|eod | (~fserucas|@2001:818:e376:a400:fb92:70c1:dd88:c7d7) (Quit: Leaving) |
2022-10-25 21:07:24 +0200 | coot | (~coot@213.134.171.3) |
2022-10-25 21:09:26 +0200 | phma | (~phma@2001:5b0:211f:f528:7435:f7cd:de72:7162) (Ping timeout: 276 seconds) |
2022-10-25 21:16:33 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a) (Remote host closed the connection) |
2022-10-25 21:25:45 +0200 | dextaa2 | (~DV@user/dextaa) |
2022-10-25 21:27:57 +0200 | dextaa | (~DV@user/dextaa) (Ping timeout: 240 seconds) |
2022-10-25 21:27:57 +0200 | dextaa2 | dextaa |
2022-10-25 21:30:57 +0200 | redmp | (~redmp@mobile-166-137-178-135.mycingular.net) (Ping timeout: 240 seconds) |
2022-10-25 21:31:22 +0200 | danza | (~francesco@151.43.89.78) (Ping timeout: 255 seconds) |
2022-10-25 21:41:13 +0200 | redmp | (~redmp@mobile-166-137-178-135.mycingular.net) |
2022-10-25 21:43:45 +0200 | boxscape_ | (~boxscape_@81.191.27.107) (Remote host closed the connection) |
2022-10-25 21:44:08 +0200 | danza | (~francesco@ca-18-217-177.service.infuturo.it) |
2022-10-25 22:00:43 +0200 | redmp | (~redmp@mobile-166-137-178-135.mycingular.net) (Ping timeout: 246 seconds) |
2022-10-25 22:02:48 +0200 | redmp | (~redmp@mobile-166-177-249-89.mycingular.net) |
2022-10-25 22:06:02 +0200 | zebrag | (~chris@user/zebrag) (Ping timeout: 250 seconds) |
2022-10-25 22:11:19 +0200 | redmp | (~redmp@mobile-166-177-249-89.mycingular.net) (Ping timeout: 272 seconds) |
2022-10-25 22:11:57 +0200 | nate2 | (~nate@98.45.169.16) |
2022-10-25 22:13:09 +0200 | kuribas | (~user@ptr-17d51epif3m378oeqcg.18120a2.ip6.access.telenet.be) |
2022-10-25 22:14:45 +0200 | noctux1 | noctuks |
2022-10-25 22:15:39 +0200 | <kuribas> | dynamic types are so intuitive! The types don't get in the way! |
2022-10-25 22:15:44 +0200 | <kuribas> | "TypeError: only integer scalar arrays can be converted to a scalar index" |
2022-10-25 22:16:52 +0200 | nate2 | (~nate@98.45.169.16) (Ping timeout: 250 seconds) |
2022-10-25 22:17:03 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a) |
2022-10-25 22:17:06 +0200 | phma_ | phma |
2022-10-25 22:17:28 +0200 | redmp | (~redmp@mobile-166-177-249-89.mycingular.net) |
2022-10-25 22:18:13 +0200 | bgs | (~bgs@212-85-160-171.dynamic.telemach.net) (Remote host closed the connection) |
2022-10-25 22:20:52 +0200 | caubert_ | (~caubert@user/caubert) (Remote host closed the connection) |
2022-10-25 22:21:04 +0200 | caubert | (~caubert@user/caubert) |
2022-10-25 22:21:38 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:9df4:2304:ddb0:d61a) (Ping timeout: 250 seconds) |
2022-10-25 22:24:30 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2022-10-25 22:24:45 +0200 | <EvanR> | were you trying to use a double array as an index |
2022-10-25 22:25:06 +0200 | <kuribas> | should be in #haskell-offtopic, sorry |
2022-10-25 22:25:08 +0200 | <EvanR> | if so, a dynamic typicist might say that should work |
2022-10-25 22:25:25 +0200 | <kuribas> | I was just concatenating an three arrays in python |
2022-10-25 22:26:44 +0200 | <EvanR> | I went to see if I could reproduce that and realized ubuntu encouraged me to uninstall python last week |
2022-10-25 22:26:56 +0200 | <EvanR> | so I did lol |
2022-10-25 22:27:24 +0200 | <kuribas> | numpy.concatenate(numpy.repeat(0.0, 30), irfft([0 if x < 10 else x - 10 for x in range(20)])) |
2022-10-25 22:28:49 +0200 | <kuribas> | ah, the first argument is a list |
2022-10-25 22:35:18 +0200 | __monty__ | (~toonn@user/toonn) (Quit: leaving) |
2022-10-25 22:39:18 +0200 | <EvanR> | yeah I vaguely remember working in languages X and Y where no one seemed to know what the arguments were supposed to be, it was something you just had to feel |
2022-10-25 22:39:34 +0200 | gurkenglas | (~gurkengla@p548ac72e.dip0.t-ipconnect.de) |
2022-10-25 22:39:53 +0200 | <EvanR> | sometimes attempts were made at documentation |
2022-10-25 22:40:41 +0200 | <EvanR> | arguments and return type(s) |
2022-10-25 22:40:42 +0200 | <kuribas> | EvanRI guess looking at the source code? |
2022-10-25 22:41:22 +0200 | <EvanR> | for return types yeah a lot of looking at source because that was more rarely documented |
2022-10-25 22:46:37 +0200 | terrorjack | (~terrorjac@2a01:4f8:1c1e:509a::1) (Ping timeout: 240 seconds) |
2022-10-25 22:47:24 +0200 | mmhat | (~mmh@p200300f1c730762dee086bfffe095315.dip0.t-ipconnect.de) (Ping timeout: 272 seconds) |
2022-10-25 22:49:14 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2022-10-25 22:53:24 +0200 | dkeohane | (~dkeohane@csm-wl-dhcp-207-224.mines.edu) |
2022-10-25 22:54:00 +0200 | terrorjack | (~terrorjac@2a01:4f8:1c1e:509a::1) |
2022-10-25 22:56:02 +0200 | mastarija | (~mastarija@188.252.197.165) |
2022-10-25 22:56:33 +0200 | <mastarija> | is there a way to see some intermediate representation code of a haskell program |
2022-10-25 22:56:54 +0200 | <mastarija> | For example, code that is a result of a tail call optimization? |
2022-10-25 22:57:05 +0200 | <mastarija> | *elimination |
2022-10-25 22:57:32 +0200 | polo | (~polo@user/polo) |
2022-10-25 22:57:45 +0200 | <geekosaur> | -ddump-ds to the compiler |
2022-10-25 22:58:19 +0200 | <geekosaur> | although tail call elimination isn't reallly a thing: all calls are tail calls and CPS |
2022-10-25 22:58:38 +0200 | merijn | (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 276 seconds) |
2022-10-25 22:59:09 +0200 | coot | (~coot@213.134.171.3) (Quit: coot) |
2022-10-25 23:00:15 +0200 | <mastarija> | Ok, that's the flag I was looking for |
2022-10-25 23:00:17 +0200 | <mastarija> | Thanks! |
2022-10-25 23:01:09 +0200 | mmhat | (~mmh@p200300f1c73076dbee086bfffe095315.dip0.t-ipconnect.de) |
2022-10-25 23:02:20 +0200 | <monochrom> | Most of the intermediate representations (ds, core, stg) will not disambiguate it because they are all still functional languages. |
2022-10-25 23:02:33 +0200 | <geekosaur> | also most of the optimizations happen to the core representation, and ds is the first core stage, not the last |
2022-10-25 23:02:52 +0200 | <monochrom> | The first intermediate form that actually says "allocate heap" or "push stack" is Cmm. |
2022-10-25 23:03:24 +0200 | <monochrom> | Alternatively the black box observation is benchmarking and possibily profiling. |
2022-10-25 23:04:30 +0200 | <mastarija> | So, -ddump-opt-cmm is also something to look at. |
2022-10-25 23:04:40 +0200 | <mastarija> | I'm not really optimizing anything, just exploring a little |
2022-10-25 23:04:57 +0200 | chexum | (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection) |
2022-10-25 23:05:28 +0200 | thyriaen | (~thyriaen@2a01:aea0:dd4:470d:6245:cbff:fe9f:48b1) (Ping timeout: 246 seconds) |
2022-10-25 23:05:44 +0200 | <geekosaur> | be aware that the code is already CPS-transformed at that point, so will be harder to follow than imperative-style code |
2022-10-25 23:07:07 +0200 | <monochrom> | When it's my turn to look at these things, I use the full suite -ddump-simpl -ddump-prep -ddump-final-stg -ddump-<one of the cmms> -ddump-asm so I have all the stepping stones I need to connect Haskell to asm. |
2022-10-25 23:07:26 +0200 | chexum | (~quassel@gateway/tor-sasl/chexum) |
2022-10-25 23:07:51 +0200 | <monochrom> | Plus https://github.com/takenobu-hs/haskell-ghc-illustrated for background knowledge. |
2022-10-25 23:07:57 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 260 seconds) |
2022-10-25 23:09:35 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2022-10-25 23:10:08 +0200 | ajb | (~ajb@mimas.whatbox.ca) |
2022-10-25 23:10:21 +0200 | <monochrom> | My view is that once you desugar "jsr xxx ... ret" to "push foo, jmp xxx ... pop bx, jmp bx" you no longer see a difference between "call - return" and CPS. |
2022-10-25 23:10:37 +0200 | danza | (~francesco@ca-18-217-177.service.infuturo.it) (Ping timeout: 240 seconds) |
2022-10-25 23:11:25 +0200 | ajb | (~ajb@mimas.whatbox.ca) (Read error: Connection timed out) |
2022-10-25 23:11:31 +0200 | <monochrom> | because the latter is CPS but it's call-return desugared. |
2022-10-25 23:12:09 +0200 | <monochrom> | Corollary: Unpopular opinion: RISC does hardware CPS transform >:) |
2022-10-25 23:12:50 +0200 | <geekosaur> | https://play-haskell.tomsmeding.com/ may also be of interest |
2022-10-25 23:13:09 +0200 | <geekosaur> | note the buttons at top left to request various kinds of dumps |
2022-10-25 23:13:58 +0200 | <mastarija> | Nice resources. Thanks. |
2022-10-25 23:14:11 +0200 | <mastarija> | I didn't know about the ghc illustrated :) |
2022-10-25 23:14:38 +0200 | polo | (~polo@user/polo) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2022-10-25 23:15:53 +0200 | <mastarija> | what would be a good flag to check if rewrite rules have been applied? |
2022-10-25 23:16:08 +0200 | ajb | (~ajb@mimas.whatbox.ca) |
2022-10-25 23:16:25 +0200 | <geekosaur> | -ddump-rule-firings |
2022-10-25 23:17:22 +0200 | <geekosaur> | note that this only tells you that a rule fired, not what it did; I don't recall off the top of my head how you get that |
2022-10-25 23:18:29 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:c48:38cf:dc4d:4fed) |
2022-10-25 23:19:08 +0200 | ajb | (~ajb@mimas.whatbox.ca) (Client Quit) |
2022-10-25 23:22:44 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:c48:38cf:dc4d:4fed) (Ping timeout: 250 seconds) |
2022-10-25 23:23:25 +0200 | takuan | (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
2022-10-25 23:24:07 +0200 | polo | (~polo@user/polo) |
2022-10-25 23:24:10 +0200 | merijn | (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) |
2022-10-25 23:28:09 +0200 | <mastarija> | Does haskell do any optimisations to a code like this? `sum (x:xs) = x + sum xs` |
2022-10-25 23:29:40 +0200 | <mastarija> | I don't quite understand if rewrite rules can be used to rewrite patterns like `f (x:xs) = x `op` f xs` in terms of `foldr` or something. |
2022-10-25 23:34:57 +0200 | freeside | (~mengwong@103.252.202.193) (Ping timeout: 240 seconds) |
2022-10-25 23:36:12 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2022-10-25 23:36:25 +0200 | mastarija | (~mastarija@188.252.197.165) (Quit: Leaving) |
2022-10-25 23:37:39 +0200 | segfaultfizzbuzz | (~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) |
2022-10-25 23:40:00 +0200 | <geekosaur> | @tell mastarija no, because it would have different strictness (pattern matches are strict unless using ~, folds are usually lazy) |
2022-10-25 23:40:00 +0200 | <lambdabot> | Consider it noted. |
2022-10-25 23:40:38 +0200 | <geekosaur> | @tell mastarija rewrite rules are generally very careful to maintain the strictness guarantees of the original code |
2022-10-25 23:40:38 +0200 | <lambdabot> | Consider it noted. |
2022-10-25 23:43:19 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2022-10-25 23:43:57 +0200 | polo | (~polo@user/polo) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2022-10-25 23:44:31 +0200 | polo | (~polo@user/polo) |
2022-10-25 23:47:18 +0200 | polo | (~polo@user/polo) (Client Quit) |
2022-10-25 23:47:25 +0200 | freeside | (~mengwong@103.252.202.193) |
2022-10-25 23:51:57 +0200 | acidjnk | (~acidjnk@p200300d6e7137a282ddda09dd97b606e.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
2022-10-25 23:53:50 +0200 | whatsupdoc | (uid509081@id-509081.hampstead.irccloud.com) |
2022-10-25 23:58:17 +0200 | merijn | (~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds) |