| 2026-01-22 00:00:04 +0100 | <pipsquak-bird> | I also wonder if i could use ideas liek 9p.io |
| 2026-01-22 00:00:21 +0100 | <pipsquak-bird> | so jobs are auto parallizable over grid of nodes |
| 2026-01-22 00:00:24 +0100 | <pipsquak-bird> | woa wee |
| 2026-01-22 00:00:34 +0100 | <pipsquak-bird> | happstack.com looks awesome |
| 2026-01-22 00:00:41 +0100 | <pipsquak-bird> | but can it grid? |
| 2026-01-22 00:00:53 +0100 | <pipsquak-bird> | 9p.io really seems clever more I see it |
| 2026-01-22 00:01:01 +0100 | <pipsquak-bird> | the editors zonks me |
| 2026-01-22 00:02:39 +0100 | <pipsquak-bird> | https://www.researchgate.net/publication/228468620_RMoX_a_Raw_Metal_occam_Experiment |
| 2026-01-22 00:04:51 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 00:09:53 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 250 seconds) |
| 2026-01-22 00:16:25 +0100 | DetourNe- | (~DetourNet@user/DetourNetworkUK) DetourNetworkUK |
| 2026-01-22 00:16:27 +0100 | trickard | (~trickard@cpe-93-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2026-01-22 00:16:37 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 00:16:39 +0100 | trickard | (~trickard@cpe-93-98-47-163.wireline.com.au) |
| 2026-01-22 00:16:44 +0100 | DetourNetworkUK | (~DetourNet@user/DetourNetworkUK) (Read error: Connection reset by peer) |
| 2026-01-22 00:17:05 +0100 | remmie | (ianremsen@tilde.team) (Ping timeout: 244 seconds) |
| 2026-01-22 00:18:40 +0100 | DetourNe- | DetourNetworkUK |
| 2026-01-22 00:20:12 +0100 | fp | (~Thunderbi@2001-14ba-6e24-3000--198.rev.dnainternet.fi) (Quit: fp) |
| 2026-01-22 00:21:42 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds) |
| 2026-01-22 00:22:46 +0100 | jmcantrell_ | (~weechat@user/jmcantrell) jmcantrell |
| 2026-01-22 00:26:48 +0100 | ljdarj | (~Thunderbi@user/ljdarj) (Ping timeout: 244 seconds) |
| 2026-01-22 00:28:55 +0100 | Lycurgus | (~juan@user/Lycurgus) Lycurgus |
| 2026-01-22 00:32:23 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 00:36:42 +0100 | __monty__ | (~toonn@user/toonn) (Quit: leaving) |
| 2026-01-22 00:37:11 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 250 seconds) |
| 2026-01-22 00:45:52 +0100 | remmie | (ianremsen@tilde.team) remsense |
| 2026-01-22 00:48:11 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 00:48:46 +0100 | jmcantrell_ | (~weechat@user/jmcantrell) (Ping timeout: 265 seconds) |
| 2026-01-22 00:52:29 +0100 | mange | (~mange@user/mange) mange |
| 2026-01-22 00:53:07 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 2026-01-22 01:03:45 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 01:05:35 +0100 | trickard | (~trickard@cpe-93-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2026-01-22 01:05:48 +0100 | trickard_ | (~trickard@cpe-93-98-47-163.wireline.com.au) |
| 2026-01-22 01:08:49 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 250 seconds) |
| 2026-01-22 01:12:00 +0100 | trickard_ | (~trickard@cpe-93-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2026-01-22 01:14:03 +0100 | machinedgod | (~machinedg@d75-159-126-101.abhsia.telus.net) (Quit: leaving) |
| 2026-01-22 01:16:09 +0100 | trickard_ | (~trickard@cpe-93-98-47-163.wireline.com.au) |
| 2026-01-22 01:16:34 +0100 | machinedgod | (~machinedg@d75-159-126-101.abhsia.telus.net) machinedgod |
| 2026-01-22 01:18:16 +0100 | Lycurgus | (~juan@user/Lycurgus) (Quit: alsoknownas.renjuan.org ( juan@acm.org )) |
| 2026-01-22 01:19:32 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 01:24:15 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
| 2026-01-22 01:29:43 +0100 | jmcantrell_ | (~weechat@user/jmcantrell) jmcantrell |
| 2026-01-22 01:35:19 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 01:40:26 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) |
| 2026-01-22 01:45:55 +0100 | jmcantrell_ | jmcantrell |
| 2026-01-22 01:47:50 +0100 | Sgeo | (~Sgeo@user/sgeo) Sgeo |
| 2026-01-22 01:49:11 +0100 | xff0x | (~xff0x@ai083101.d.east.v6connect.net) (Ping timeout: 265 seconds) |
| 2026-01-22 01:51:04 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 01:53:03 +0100 | Brumaire | (~no@94.140.114.73) (Remote host closed the connection) |
| 2026-01-22 01:55:06 +0100 | trickard_ | trickard |
| 2026-01-22 01:55:57 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds) |
| 2026-01-22 01:56:08 +0100 | rainbyte | (~rainbyte@186.22.19.214) rainbyte |
| 2026-01-22 01:59:44 +0100 | vanishingideal | (~vanishing@user/vanishingideal) (Ping timeout: 260 seconds) |
| 2026-01-22 02:02:03 +0100 | jmcantrell | (~weechat@user/jmcantrell) (Ping timeout: 260 seconds) |
| 2026-01-22 02:02:42 +0100 | Googulator | (~Googulato@2a01:36d:106:30a:8d41:f550:2a4f:1a91) (Quit: Client closed) |
| 2026-01-22 02:02:56 +0100 | Googulator | (~Googulato@2a01-036d-0106-030a-8d41-f550-2a4f-1a91.pool6.digikabel.hu) |
| 2026-01-22 02:04:42 +0100 | qqq | (~qqq@185.54.21.105) |
| 2026-01-22 02:06:35 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 02:08:55 +0100 | typedfern_ | (~Typedfern@53.red-83-37-43.dynamicip.rima-tde.net) (Ping timeout: 240 seconds) |
| 2026-01-22 02:12:55 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2026-01-22 02:17:48 +0100 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) humasect |
| 2026-01-22 02:20:02 +0100 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) (Remote host closed the connection) |
| 2026-01-22 02:22:45 +0100 | typedfern_ | (~Typedfern@81.red-83-37-28.dynamicip.rima-tde.net) typedfern |
| 2026-01-22 02:23:57 +0100 | Pozyomka | (~pyon@user/pyon) (Quit: WeeChat 4.8.1) |
| 2026-01-22 02:24:04 +0100 | Pozyomka_ | (~pyon@user/pyon) pyon |
| 2026-01-22 02:24:36 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 02:29:25 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 250 seconds) |
| 2026-01-22 02:37:37 +0100 | typedfern_ | (~Typedfern@81.red-83-37-28.dynamicip.rima-tde.net) (Ping timeout: 246 seconds) |
| 2026-01-22 02:40:24 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 02:40:59 +0100 | xff0x | (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) |
| 2026-01-22 02:42:55 +0100 | FANTOM | (~fantom@87.75.185.177) (Ping timeout: 240 seconds) |
| 2026-01-22 02:44:10 +0100 | FANTOM | (~fantom@87.75.185.177) |
| 2026-01-22 02:44:14 +0100 | connrs | (~connrs@user/connrs) (Ping timeout: 244 seconds) |
| 2026-01-22 02:44:53 +0100 | omidmash1 | (~omidmash@user/omidmash) omidmash |
| 2026-01-22 02:45:14 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds) |
| 2026-01-22 02:46:49 +0100 | omidmash | (~omidmash@user/omidmash) (Ping timeout: 244 seconds) |
| 2026-01-22 02:46:49 +0100 | omidmash1 | omidmash |
| 2026-01-22 02:51:20 +0100 | typedfern_ | (~Typedfern@192.red-83-37-37.dynamicip.rima-tde.net) typedfern |
| 2026-01-22 02:56:10 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 02:59:05 +0100 | connrs | (~connrs@user/connrs) connrs |
| 2026-01-22 03:00:52 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
| 2026-01-22 03:05:41 +0100 | <haskellbridge> | <iqubic (she/her)> So, this is breaking my brain... How the heck is this the same as "liftA2" for lists: "cross f xs ys = foldr (\x rec -> (map (f x) ys) ++ rec) [] xs" |
| 2026-01-22 03:06:03 +0100 | vidak | (~vidak@2407:e400:7800:2c01:d0be:76f8:cc84:bd4a) (Read error: Connection reset by peer) |
| 2026-01-22 03:06:11 +0100 | <haskellbridge> | <iqubic (she/her)> cross is the same as liftA2 if you work on lists and I have no clue why!!! |
| 2026-01-22 03:07:00 +0100 | vidak | (~vidak@2407:e400:7800:2c01:d0be:76f8:cc84:bd4a) vidak |
| 2026-01-22 03:07:42 +0100 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) humasect |
| 2026-01-22 03:08:23 +0100 | <monochrom> | Convert foldr back to your own recursion to see. |
| 2026-01-22 03:08:47 +0100 | <ncf> | convert foldr to concatMap and remember how the list monad works |
| 2026-01-22 03:08:48 +0100 | <monochrom> | Alterantively convert your own recursion to foldr to see. :) |
| 2026-01-22 03:09:16 +0100 | <monochrom> | Or yeah, that. |
| 2026-01-22 03:09:21 +0100 | <haskellbridge> | <iqubic (she/her)> Yeah, that makes sense... |
| 2026-01-22 03:09:34 +0100 | <ncf> | cross f xs ys = xs >>= \x -> map (f x) ys = xs >>= \x -> ys >>= \y -> [f x y] = f <$> xs <*> ys |
| 2026-01-22 03:11:47 +0100 | <monochrom> | The reason I prefer functional programming is that I just do algebra and see how two programs do the same thing. As opposed to what most people do for imperative programming: talk in "English" "intuition (read: mince and bend words) and call that "understanding". (LLMs proved that it is not understanding.) |
| 2026-01-22 03:11:58 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 03:13:45 +0100 | vidak | (~vidak@2407:e400:7800:2c01:d0be:76f8:cc84:bd4a) (Read error: Connection reset by peer) |
| 2026-01-22 03:14:35 +0100 | FANTOM | (~fantom@87.75.185.177) (Ping timeout: 240 seconds) |
| 2026-01-22 03:14:58 +0100 | vidak | (~vidak@2407:e400:7800:2c01:d0be:76f8:cc84:bd4a) vidak |
| 2026-01-22 03:16:07 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 2026-01-22 03:21:43 +0100 | <haskellbridge> | <iqubic (she/her)> I see... |
| 2026-01-22 03:21:55 +0100 | vidak | (~vidak@2407:e400:7800:2c01:d0be:76f8:cc84:bd4a) (Ping timeout: 264 seconds) |
| 2026-01-22 03:22:08 +0100 | vidak | (~vidak@2407:e400:7800:2c01:d0be:76f8:cc84:bd4a) vidak |
| 2026-01-22 03:22:27 +0100 | <haskellbridge> | <iqubic (she/her)> for lists "sequenceA" is "foldr (liftA2 (:)) [[]]" |
| 2026-01-22 03:22:32 +0100 | <haskellbridge> | <iqubic (she/her)> Huh?!?!? How does that work? |
| 2026-01-22 03:23:27 +0100 | <haskellbridge> | <iqubic (she/her)> sequenceA [[11,12], [21,22]] = [[11,21],[11,22],[12,21],[12,22]] |
| 2026-01-22 03:23:49 +0100 | <haskellbridge> | <iqubic (she/her)> And "foldr (liftA2 (:)) [[]]" does the same thing. |
| 2026-01-22 03:25:17 +0100 | <monochrom> | I might rewrite "[[]]" as "pure []". |
| 2026-01-22 03:26:47 +0100 | vidak | (~vidak@2407:e400:7800:2c01:d0be:76f8:cc84:bd4a) (Remote host closed the connection) |
| 2026-01-22 03:27:20 +0100 | <haskellbridge> | <iqubic (she/her)> I see... that's very similar to "foldr (:) []", but with applicative actions. |
| 2026-01-22 03:27:21 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 03:28:17 +0100 | <haskellbridge> | <iqubic (she/her)> How does that compute a Cartesian product though? |
| 2026-01-22 03:29:06 +0100 | <haskellbridge> | <iqubic (she/her)> "cart [[11,12], [21,22]]" is "[[11,21,22],[12,21,22]]" |
| 2026-01-22 03:29:58 +0100 | <haskellbridge> | <iqubic (she/her)> Erm... not that. It's late and I'm tired. |
| 2026-01-22 03:30:44 +0100 | <haskellbridge> | <iqubic (she/her)> But sequenceA "foldr (liftA2 (:)) (pure [])" is a Cartesian product, and I'm not sure why. |
| 2026-01-22 03:31:58 +0100 | vidak | (~vidak@2407:e400:7800:2c01:d0be:76f8:cc84:bd4a) vidak |
| 2026-01-22 03:32:13 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds) |
| 2026-01-22 03:43:08 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 03:45:49 +0100 | <geekosaur> | list monad with no actions is Cartesian product. maybe you'd find the list comprehension version easier to interpret? |
| 2026-01-22 03:47:40 +0100 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) (Remote host closed the connection) |
| 2026-01-22 03:48:44 +0100 | <haskellbridge> | <iqubic (she/her)> What's the list comprehension version? |
| 2026-01-22 03:48:56 +0100 | tremon | (~tremon@83.80.159.219) (Quit: getting boxed in) |
| 2026-01-22 03:49:20 +0100 | Inline | (~User@2001-4dd6-dd24-0-41c1-f819-9bd9-d884.ipv6dyn.netcologne.de) (Ping timeout: 244 seconds) |
| 2026-01-22 03:49:51 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
| 2026-01-22 03:49:51 +0100 | typedfern_ | (~Typedfern@192.red-83-37-37.dynamicip.rima-tde.net) (Ping timeout: 244 seconds) |
| 2026-01-22 03:49:55 +0100 | <haskellbridge> | <iqubic (she/her)> Why isn't this compiling? https://paste.tomsmeding.com/7dBnZHnU |
| 2026-01-22 03:52:47 +0100 | <haskellbridge> | <iqubic (she/her)> I want a function that computes all the ways to drop a single element from a list. |
| 2026-01-22 03:53:04 +0100 | <haskellbridge> | <iqubic (she/her)> drop1 [1,2,3] -> [[2,3], [1,3], [1,2]] |
| 2026-01-22 03:53:46 +0100 | <geekosaur> | xs is [a], drop1 xs is [[a]], map's result type will be the same as its input type as (x:) simply prepends to the inner lists |
| 2026-01-22 03:56:20 +0100 | <haskellbridge> | <iqubic (she/her)> I have "map (x:) (drop1 xs)" |
| 2026-01-22 03:56:36 +0100 | vidak | (~vidak@2407:e400:7800:2c01:d0be:76f8:cc84:bd4a) (Remote host closed the connection) |
| 2026-01-22 03:56:57 +0100 | <haskellbridge> | <iqubic (she/her)> (x:) :: [a] -> [a] |
| 2026-01-22 03:57:30 +0100 | <haskellbridge> | <iqubic (she/her)> (drop1 xs) :: [[a]] |
| 2026-01-22 03:57:35 +0100 | <haskellbridge> | <iqubic (she/her)> I fail to see the issue here. |
| 2026-01-22 03:57:56 +0100 | <geekosaur> | xxs is only [a], not [[a]] |
| 2026-01-22 03:58:20 +0100 | <haskellbridge> | <iqubic (she/her)> xxs? |
| 2026-01-22 03:58:32 +0100 | <geekosaur> | rename the one in map, maybe it'll be a bit clearer (its "[a]" unifies with the "[[a]]" from drop1) |
| 2026-01-22 03:58:56 +0100 | <haskellbridge> | <Nguyễn Trọng Cường> I have a really stupid question: Is the very first GHC executable written in C? I analysed some modern GHC programs by Detect It Easy and all of them are flagged as "C" and "MinGW" |
| 2026-01-22 03:58:59 +0100 | <haskellbridge> | <iqubic (she/her)> I'm trying to use the head of the iinput. |
| 2026-01-22 03:59:25 +0100 | <haskellbridge> | <iqubic (she/her)> I'm so lost here... What am I missing? |
| 2026-01-22 04:01:10 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 04:01:25 +0100 | <geekosaur> | ghc was originally written in HBC, a now lost compiler which was itself written in Lazy ML |
| 2026-01-22 04:02:29 +0100 | Inline | (~User@2001-4dd6-dd24-0-288a-d894-752e-65cf.ipv6dyn.netcologne.de) Inline |
| 2026-01-22 04:02:54 +0100 | <geekosaur> | I think there's an ancient i386 binary for HBC somewhere, but no source and no guarantee the binary would run on modern systems |
| 2026-01-22 04:03:14 +0100 | <haskellbridge> | <iqubic (she/her)> geekosaur: Am I missing something obvious here? |
| 2026-01-22 04:03:19 +0100 | <haskellbridge> | <iqubic (she/her)> drop1 (x:xs) = xs ++ map (x:) (drop1 xs) |
| 2026-01-22 04:03:43 +0100 | <EvanR> | and lazy ML was written in |
| 2026-01-22 04:03:49 +0100 | <geekosaur> | drop1 :: [a] -> [[a]] |
| 2026-01-22 04:03:50 +0100 | <EvanR> | rather the compiler for it |
| 2026-01-22 04:04:09 +0100 | <EvanR> | (unlikely to still be available and functioning) |
| 2026-01-22 04:04:10 +0100 | <geekosaur> | map (x:) (drop1 xs) :: [[a]] -> [[a]] |
| 2026-01-22 04:04:15 +0100 | <geekosaur> | xs :: [a] |
| 2026-01-22 04:04:55 +0100 | Raito_Bezarius | (~Raito@libera/contributor/wireguard.tunneler.raito-bezarius) (Ping timeout: 245 seconds) |
| 2026-01-22 04:05:06 +0100 | <geekosaur> | yeh, I have no clue about LML |
| 2026-01-22 04:05:33 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) |
| 2026-01-22 04:05:36 +0100 | <haskellbridge> | <iqubic (she/her)> How can I fix my code here? |
| 2026-01-22 04:06:55 +0100 | <geekosaur> | I'm not quite sure what you're trying to do, to be honest. (in part because my focus is all over the place, I'm working on cabal atm and chasing around various housework things…) |
| 2026-01-22 04:07:04 +0100 | <haskellbridge> | <iqubic (she/her)> I see.... |
| 2026-01-22 04:07:21 +0100 | <haskellbridge> | <iqubic (she/her)> I want a function that computes all the ways to remove a single element from a list. |
| 2026-01-22 04:07:28 +0100 | <haskellbridge> | <iqubic (she/her)> drop1 [1,2,3] -> [[2,3], [1,3], [1,2]] |
| 2026-01-22 04:10:35 +0100 | qqq | (~qqq@185.54.21.105) (Quit: Lost terminal) |
| 2026-01-22 04:11:11 +0100 | <haskellbridge> | <iqubic (she/her)> drop1 (x:xs) = xs : map (\ys -> x:ys) (drop1 xs) |
| 2026-01-22 04:11:15 +0100 | <haskellbridge> | <iqubic (she/her)> That's what I wanted. |
| 2026-01-22 04:12:52 +0100 | <haskellbridge> | <iqubic (she/her)> I feel like there should be a way to rewrite this with a foldr: https://paste.tomsmeding.com/nV162kId |
| 2026-01-22 04:15:10 +0100 | <haskellbridge> | <iqubic (she/her)> Or, if not a fold, something else that factors out the manual recursion |
| 2026-01-22 04:16:30 +0100 | <Leary> | > (zipWith (++) . inits <*> tail . tails) [1,2,3] |
| 2026-01-22 04:16:32 +0100 | <lambdabot> | [[2,3],[1,3],[1,2]] |
| 2026-01-22 04:16:32 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 04:17:14 +0100 | <haskellbridge> | <iqubic (she/her)> I don't need that specific ordering, but those are the sets I want. |
| 2026-01-22 04:17:22 +0100 | <haskellbridge> | <iqubic (she/her)> If shuffling the ordering is better, feel free to do it. |
| 2026-01-22 04:17:53 +0100 | <haskellbridge> | <iqubic (she/her)> I want each list to contain N-1 elements of the input list, in some order. |
| 2026-01-22 04:18:03 +0100 | Raito_Bezarius | (~Raito@libera/contributor/wireguard.tunneler.raito-bezarius) Raito_Bezarius |
| 2026-01-22 04:19:03 +0100 | vidak | (~vidak@2407:e400:7800:2c01:d0be:76f8:cc84:bd4a) vidak |
| 2026-01-22 04:21:13 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds) |
| 2026-01-22 04:21:22 +0100 | machinedgod | (~machinedg@d75-159-126-101.abhsia.telus.net) (Ping timeout: 244 seconds) |
| 2026-01-22 04:23:16 +0100 | jmcantrell_ | (~weechat@user/jmcantrell) jmcantrell |
| 2026-01-22 04:25:35 +0100 | cupnoodle | (~cupnoodle@223.187.121.96) |
| 2026-01-22 04:26:42 +0100 | Typedfern | (~Typedfern@249.red-83-37-36.dynamicip.rima-tde.net) |
| 2026-01-22 04:32:19 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 04:36:58 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds) |
| 2026-01-22 04:41:22 +0100 | trickard | (~trickard@cpe-93-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2026-01-22 04:41:34 +0100 | trickard_ | (~trickard@cpe-93-98-47-163.wireline.com.au) |
| 2026-01-22 04:46:40 +0100 | trickard_ | (~trickard@cpe-93-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2026-01-22 04:48:10 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 04:51:37 +0100 | <ncf> | Leary's answer is the way to go, but if you like lens fuckery: |
| 2026-01-22 04:51:39 +0100 | <ncf> | > catMaybes . peek Nothing <$> holesOf traverse (Just <$> [1,2,3]) |
| 2026-01-22 04:51:40 +0100 | <lambdabot> | [[2,3],[1,3],[1,2]] |
| 2026-01-22 04:51:52 +0100 | trickard_ | (~trickard@cpe-93-98-47-163.wireline.com.au) |
| 2026-01-22 04:52:49 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 2026-01-22 04:55:13 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 05:00:37 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 2026-01-22 05:01:27 +0100 | Inline | (~User@2001-4dd6-dd24-0-288a-d894-752e-65cf.ipv6dyn.netcologne.de) (Quit: KVIrc 5.2.6 Quasar http://www.kvirc.net/) |
| 2026-01-22 05:01:40 +0100 | omidmash | (~omidmash@user/omidmash) (Quit: The Lounge - https://thelounge.chat) |
| 2026-01-22 05:02:09 +0100 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) humasect |
| 2026-01-22 05:03:29 +0100 | Jackneill | (~Jackneill@178-164-234-102.pool.digikabel.hu) (Ping timeout: 260 seconds) |
| 2026-01-22 05:06:17 +0100 | omidmash | (~omidmash@user/omidmash) omidmash |
| 2026-01-22 05:11:01 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 05:13:54 +0100 | cupnoodle | (~cupnoodle@223.187.121.96) (Quit: Lost terminal) |
| 2026-01-22 05:15:49 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds) |
| 2026-01-22 05:26:45 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 05:31:27 +0100 | <haskellbridge> | <iqubic (she/her)> What the fuck is that lens fuckery? |
| 2026-01-22 05:31:31 +0100 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) (Remote host closed the connection) |
| 2026-01-22 05:33:54 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) |
| 2026-01-22 05:44:47 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 05:45:41 +0100 | Googulator43 | (~Googulato@2a01-036d-0106-030a-8d41-f550-2a4f-1a91.pool6.digikabel.hu) |
| 2026-01-22 05:45:53 +0100 | Googulator | (~Googulato@2a01-036d-0106-030a-8d41-f550-2a4f-1a91.pool6.digikabel.hu) (Quit: Client closed) |
| 2026-01-22 05:49:53 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds) |
| 2026-01-22 05:50:13 +0100 | jmcantrell_ | jmcantrell |
| 2026-01-22 05:58:28 +0100 | <jackdk> | Wow that's cool. |
| 2026-01-22 05:59:03 +0100 | <probie> | :t holesOf |
| 2026-01-22 05:59:04 +0100 | <lambdabot> | Conjoined p => Over p (Bazaar p a a) s t a a -> s -> [Control.Lens.Internal.Context.Pretext p a a t] |
| 2026-01-22 05:59:48 +0100 | <jackdk> | I was very pleased with `bmap (zoom someRecordFieldLens)` the other day and I see I still have much more to learn. |
| 2026-01-22 06:00:02 +0100 | <probie> | :t holesOf traverse |
| 2026-01-22 06:00:03 +0100 | <lambdabot> | Traversable t => t a -> [Control.Lens.Internal.Context.Pretext (->) a a (t a)] |
| 2026-01-22 06:00:19 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 06:02:13 +0100 | <haskellbridge> | <iqubic (she/her)> How the hell does "holesOf" work? |
| 2026-01-22 06:02:47 +0100 | <dibblego> | @info bmap |
| 2026-01-22 06:02:48 +0100 | <lambdabot> | bmap |
| 2026-01-22 06:03:26 +0100 | <haskellbridge> | <iqubic (she/her)> ncf: How the hell does that work? |
| 2026-01-22 06:03:46 +0100 | <probie> | :t holesOf traverse [Just 1] |
| 2026-01-22 06:03:47 +0100 | <lambdabot> | Num a => [Control.Lens.Internal.Context.Pretext (->) (Maybe a) (Maybe a) [Maybe a]] |
| 2026-01-22 06:05:25 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 2026-01-22 06:06:27 +0100 | <probie> | > map (\x -> peek (reverse (pos x)) x) $ holesOf traverse $ words "hello lens world" |
| 2026-01-22 06:06:28 +0100 | <lambdabot> | [["olleh","lens","world"],["hello","snel","world"],["hello","lens","dlrow"]] |
| 2026-01-22 06:07:08 +0100 | <haskellbridge> | <iqubic (she/her)> What is that doing?!?! |
| 2026-01-22 06:07:26 +0100 | <haskellbridge> | <iqubic (she/her)> It's doing unwords and also reversing one of the words?!?! |
| 2026-01-22 06:07:56 +0100 | <haskellbridge> | <iqubic (she/her)> *doing words |
| 2026-01-22 06:08:46 +0100 | <probie> | the words was just because I was too lazy to write ["hello", "lens", "world"]. |
| 2026-01-22 06:09:26 +0100 | <haskellbridge> | <iqubic (she/her)> Right, but how the hell are you just reversing only one element at a time? |
| 2026-01-22 06:11:45 +0100 | <probie> | holesOf takes a traversal and a thing to traverse and gives you a list back, where for every traversed element, you get a "context" of what was around the element |
| 2026-01-22 06:13:25 +0100 | <probie> | `pos ctx` gives you the element under focus (not used in ncf's thing), and `peek x ctx` "inserts" `x` into the context |
| 2026-01-22 06:16:05 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 06:16:54 +0100 | <haskellbridge> | <iqubic (she/her)> I see! |
| 2026-01-22 06:19:16 +0100 | <jackdk> | dibblego: `bmap` is what package `barbies` calls its rank-2 `fmap` (i.e. on functors of kind `(k -> Type) -> Type`) |
| 2026-01-22 06:20:20 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds) |
| 2026-01-22 06:21:33 +0100 | <jackdk> | probie: `peeks reverse` |
| 2026-01-22 06:21:53 +0100 | <jackdk> | Axman6: get in here we're having fun |
| 2026-01-22 06:24:17 +0100 | jmcantrell | (~weechat@user/jmcantrell) (Ping timeout: 250 seconds) |
| 2026-01-22 06:31:28 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 06:34:58 +0100 | mange | (~mange@user/mange) (Quit: Quittin' time!) |
| 2026-01-22 06:36:17 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds) |
| 2026-01-22 06:38:01 +0100 | Guest49 | (~Guest89@187.170.211.94) |
| 2026-01-22 06:39:24 +0100 | <dibblego> | ah ok |
| 2026-01-22 06:43:40 +0100 | <jackdk> | While we're talking about lenses, someone re-uploaded the lost SPJ talk and I think that's great: https://www.youtube.com/watch?v=dxGaKn4REaY |
| 2026-01-22 06:47:04 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 06:51:59 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds) |
| 2026-01-22 06:56:14 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 07:01:10 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds) |
| 2026-01-22 07:04:54 +0100 | takuan | (~takuan@d8D86B9E9.access.telenet.be) |
| 2026-01-22 07:05:45 +0100 | <haskellbridge> | <Axman6> Hello! |
| 2026-01-22 07:11:05 +0100 | vanishingideal | (~vanishing@user/vanishingideal) vanishingideal |
| 2026-01-22 07:12:05 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 07:15:49 +0100 | jreicher | (~joelr@user/jreicher) (Quit: In transit) |
| 2026-01-22 07:16:43 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 250 seconds) |
| 2026-01-22 07:19:53 +0100 | Guest49 | (~Guest89@187.170.211.94) (Ping timeout: 272 seconds) |
| 2026-01-22 07:22:44 +0100 | FANTOM | (~fantom@87.75.185.177) |
| 2026-01-22 07:27:06 +0100 | haritz | (~hrtz@user/haritz) (Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in) |
| 2026-01-22 07:27:49 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 07:32:32 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
| 2026-01-22 07:38:04 +0100 | DarcsGuest | (~DarcsGues@2a07:7840:0:100:d9ca:210e:81dc:9c94) |
| 2026-01-22 07:41:11 +0100 | skum | (~skum@user/skum) (Quit: WeeChat 4.8.1) |
| 2026-01-22 07:43:35 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 07:45:01 +0100 | Inline | (~User@2001-4dd7-bc56-0-fdb7-c703-fc72-e0a.ipv6dyn.netcologne.de) Inline |
| 2026-01-22 07:48:12 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) |
| 2026-01-22 07:48:17 +0100 | housemate | (~housemate@202.7.248.67) (Quit: https://ineedsomeacidtocalmmedown.space/) |
| 2026-01-22 07:50:40 +0100 | peterbecich | (~Thunderbi@71.84.33.135) peterbecich |
| 2026-01-22 07:53:12 +0100 | housemate | (~housemate@202.7.248.67) housemate |
| 2026-01-22 07:53:36 +0100 | <haskellbridge> | <iqubic (she/her)> I need to watch that talk! |
| 2026-01-22 07:55:30 +0100 | skum | (~skum@user/skum) skum |
| 2026-01-22 07:57:15 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 08:02:00 +0100 | trickard_ | trickard |
| 2026-01-22 08:02:25 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 2026-01-22 08:02:31 +0100 | vanishingideal | (~vanishing@user/vanishingideal) (Ping timeout: 240 seconds) |
| 2026-01-22 08:03:54 +0100 | skum | (~skum@user/skum) (Quit: WeeChat 4.8.1) |
| 2026-01-22 08:05:43 +0100 | tzh | (~tzh@c-76-115-131-146.hsd1.or.comcast.net) (Quit: zzz) |
| 2026-01-22 08:08:59 +0100 | peterbecich | (~Thunderbi@71.84.33.135) (Ping timeout: 260 seconds) |
| 2026-01-22 08:13:04 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 08:19:34 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds) |
| 2026-01-22 08:19:53 +0100 | trickard | (~trickard@cpe-93-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2026-01-22 08:20:06 +0100 | trickard_ | (~trickard@cpe-93-98-47-163.wireline.com.au) |
| 2026-01-22 08:20:35 +0100 | DarcsGuest | (~DarcsGues@2a07:7840:0:100:d9ca:210e:81dc:9c94) (Quit: Client closed) |
| 2026-01-22 08:29:38 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 08:34:39 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds) |
| 2026-01-22 08:35:28 +0100 | Jackneill | (~Jackneill@178-164-234-102.pool.digikabel.hu) Jackneill |
| 2026-01-22 08:37:52 +0100 | jreicher | (~joelr@user/jreicher) jreicher |
| 2026-01-22 08:41:05 +0100 | jreicher | (~joelr@user/jreicher) (Remote host closed the connection) |
| 2026-01-22 08:43:56 +0100 | danza | (~danza@user/danza) danza |
| 2026-01-22 08:45:00 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 08:45:52 +0100 | jreicher | (~joelr@user/jreicher) jreicher |
| 2026-01-22 08:50:02 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
| 2026-01-22 08:58:16 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 09:03:34 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) |
| 2026-01-22 09:07:14 +0100 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) humasect |
| 2026-01-22 09:14:03 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-01-22 09:19:03 +0100 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) |
| 2026-01-22 09:22:34 +0100 | danza | (~danza@user/danza) (Ping timeout: 246 seconds) |
| 2026-01-22 09:23:39 +0100 | Enrico63 | (~Enrico63@host-79-42-228-73.retail.telecomitalia.it) Enrico63 |
| 2026-01-22 09:26:44 +0100 | danza | (~danza@user/danza) danza |
| 2026-01-22 09:32:02 +0100 | krei-se- | (~krei-se@p5dea1514.dip0.t-ipconnect.de) (Quit: ZNC 1.9.1 - https://znc.in) |
| 2026-01-22 09:34:33 +0100 | krei-se | (~krei-se@p5dea1514.dip0.t-ipconnect.de) krei-se |
| 2026-01-22 09:37:00 +0100 | Enrico63 | (~Enrico63@host-79-42-228-73.retail.telecomitalia.it) (Quit: Client closed) |
| 2026-01-22 09:39:23 +0100 | CiaoSen | (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) CiaoSen |
| 2026-01-22 09:44:07 +0100 | alinab | (sid468903@id-468903.helmsley.irccloud.com) |
| 2026-01-22 09:51:23 +0100 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 2026-01-22 09:51:37 +0100 | CiaoSen | (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 246 seconds) |
| 2026-01-22 10:02:01 +0100 | tremon | (~tremon@83.80.159.219) tremon |
| 2026-01-22 10:10:20 +0100 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) (Quit: Leaving...) |
| 2026-01-22 10:19:35 +0100 | CiaoSen | (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) CiaoSen |
| 2026-01-22 10:21:01 +0100 | chele | (~chele@user/chele) chele |
| 2026-01-22 10:22:50 +0100 | infinity0 | (~infinity0@pwned.gg) (Ping timeout: 245 seconds) |
| 2026-01-22 10:25:47 +0100 | merijn | (~merijn@77.242.116.146) merijn |
| 2026-01-22 10:28:30 +0100 | ec | (~ec@gateway/tor-sasl/ec) (Ping timeout: 252 seconds) |
| 2026-01-22 10:30:26 +0100 | ec | (~ec@gateway/tor-sasl/ec) ec |
| 2026-01-22 10:35:59 +0100 | merijn | (~merijn@77.242.116.146) (Ping timeout: 260 seconds) |
| 2026-01-22 10:43:44 +0100 | infinity0 | (~infinity0@pwned.gg) infinity0 |
| 2026-01-22 10:44:36 +0100 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) humasect |
| 2026-01-22 10:45:37 +0100 | merijn | (~merijn@77.242.116.146) merijn |
| 2026-01-22 10:47:18 +0100 | Enrico63 | (~Enrico63@host-79-42-228-73.retail.telecomitalia.it) Enrico63 |
| 2026-01-22 10:49:22 +0100 | haritz | (~hrtz@140.228.70.141) |
| 2026-01-22 10:49:22 +0100 | haritz | (~hrtz@140.228.70.141) (Changing host) |
| 2026-01-22 10:49:22 +0100 | haritz | (~hrtz@user/haritz) haritz |
| 2026-01-22 10:50:04 +0100 | merijn | (~merijn@77.242.116.146) (Ping timeout: 246 seconds) |
| 2026-01-22 10:59:19 +0100 | CiaoSen | (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 260 seconds) |
| 2026-01-22 11:00:29 +0100 | <gentauro> | jackdk: wasn't it Edward Kmett that implemented `lenses` in Haskell? |
| 2026-01-22 11:01:37 +0100 | <gentauro> | my last leptop, I had the Haskell logo sticker cos Kmett gave me one :) |
| 2026-01-22 11:02:00 +0100 | merijn | (~merijn@77.242.116.146) merijn |
| 2026-01-22 11:02:28 +0100 | <lortabac> | `lenses` is older than `lens` IIRC |
| 2026-01-22 11:02:40 +0100 | <lortabac> | `lens` is the one by Kmett |