Logs: liberachat/#haskell
| 2025-12-19 13:35:46 | → | Googulator87 joins (~Googulato@2a01-036d-0106-48e4-3c18-a4bd-1bda-7c8b.pool6.digikabel.hu) |
| 2025-12-19 13:36:21 | → | deptype_ joins (~deptype@2406:b400:3a:2dd5:52e4:b3c5:3fcb:69bd) |
| 2025-12-19 13:40:21 | → | tromp joins (~textual@2001:1c00:3487:1b00:9c43:d0f8:e383:616c) |
| 2025-12-19 13:49:20 | → | EvanR_ joins (~EvanR@user/evanr) |
| 2025-12-19 13:50:07 | × | EvanR quits (~EvanR@user/evanr) (Ping timeout: 264 seconds) |
| 2025-12-19 13:51:51 | × | CiaoSen quits (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 244 seconds) |
| 2025-12-19 13:52:41 | × | fp quits (~Thunderbi@2001:708:150:10::7e06) (Remote host closed the connection) |
| 2025-12-19 13:57:47 | → | lambda_gibbon joins (~lambda_gi@208.83.175.39) |
| 2025-12-19 14:01:08 | × | pavonia quits (~user@user/siracusa) (Quit: Bye!) |
| 2025-12-19 14:01:55 | × | lambda_gibbon quits (~lambda_gi@208.83.175.39) (Ping timeout: 240 seconds) |
| 2025-12-19 14:09:06 | × | tromp quits (~textual@2001:1c00:3487:1b00:9c43:d0f8:e383:616c) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2025-12-19 14:17:46 | × | trickard_ quits (~trickard@cpe-81-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2025-12-19 14:17:59 | → | trickard_ joins (~trickard@cpe-81-98-47-163.wireline.com.au) |
| 2025-12-19 14:20:28 | → | jmcantrell_ joins (~weechat@user/jmcantrell) |
| 2025-12-19 14:20:40 | jmcantrell_ | is now known as jmcantrell |
| 2025-12-19 14:25:28 | → | tromp joins (~textual@2001:1c00:3487:1b00:9c43:d0f8:e383:616c) |
| 2025-12-19 14:31:40 | → | mari-estel joins (~mari-este@user/mari-estel) |
| 2025-12-19 14:35:39 | → | Googulator7 joins (~Googulato@2a01-036d-0106-48e4-3c18-a4bd-1bda-7c8b.pool6.digikabel.hu) |
| 2025-12-19 14:35:45 | × | jmcantrell quits (~weechat@user/jmcantrell) (Ping timeout: 250 seconds) |
| 2025-12-19 14:35:53 | × | Googulator87 quits (~Googulato@2a01-036d-0106-48e4-3c18-a4bd-1bda-7c8b.pool6.digikabel.hu) (Quit: Client closed) |
| 2025-12-19 14:38:26 | × | lbseale quits (~quassel@user/ep1ctetus) (Quit: No Ping reply in 180 seconds.) |
| 2025-12-19 14:39:51 | → | lbseale joins (~quassel@user/ep1ctetus) |
| 2025-12-19 14:48:13 | → | fp joins (~Thunderbi@2001:708:150:10::7e06) |
| 2025-12-19 14:50:25 | → | Googulator61 joins (~Googulato@2a01-036d-0106-48e4-3c18-a4bd-1bda-7c8b.pool6.digikabel.hu) |
| 2025-12-19 14:54:37 | × | internatetional quits (~nate@2404:c0:2029:708e:1:0:dce8:227d) (Quit: CoreIRC for Android - www.coreirc.com) |
| 2025-12-19 14:54:57 | × | Googulator7 quits (~Googulato@2a01-036d-0106-48e4-3c18-a4bd-1bda-7c8b.pool6.digikabel.hu) (Ping timeout: 272 seconds) |
| 2025-12-19 14:55:49 | <yin> | is the mechanism that prevents me from writing (join bimap fromList) the DMR? |
| 2025-12-19 14:57:35 | <yin> | when applied to something like (Map Char,Map Int) |
| 2025-12-19 14:59:08 | <merijn> | :t bimap |
| 2025-12-19 14:59:29 | <merijn> | hmm, lambdabot is dead? |
| 2025-12-19 14:59:46 | <merijn> | I forgot, what was yahb's prompt? |
| 2025-12-19 14:59:49 | <lambdabot> | Bifunctor p => (a -> b) -> (c -> d) -> p a c -> p b d |
| 2025-12-19 14:59:57 | <merijn> | oh just super slow |
| 2025-12-19 15:00:21 | <merijn> | :t join bimap |
| 2025-12-19 15:00:22 | <lambdabot> | Bifunctor p => (a -> b) -> p a a -> p b b |
| 2025-12-19 15:00:33 | <merijn> | :t join |
| 2025-12-19 15:00:34 | <lambdabot> | Monad m => m (m a) -> m a |
| 2025-12-19 15:01:42 | <merijn> | That's not DMR at all |
| 2025-12-19 15:02:09 | <merijn> | That's just the fact that join is resulting in constraints that 'a = c' and 'b = d' |
| 2025-12-19 15:03:04 | <yin> | oh right |
| 2025-12-19 15:03:38 | <yin> | so i need to write (bimap fromList fromList) |
| 2025-12-19 15:03:41 | <yin> | shame |
| 2025-12-19 15:03:52 | <merijn> | honestly, that's approximately 500% more readable anyway |
| 2025-12-19 15:04:13 | <merijn> | And, like, literally only 4 characters longer than the join one |
| 2025-12-19 15:04:52 | <mari-estel> | :t both |
| 2025-12-19 15:04:53 | <lambdabot> | Bitraversable r => Traversal (r a a) (r b b) a b |
| 2025-12-19 15:05:28 | → | RMSBach joins (~RMSBach@24.210.9.182) |
| 2025-12-19 15:05:52 | → | Googulator17 joins (~Googulato@2a01-036d-0106-48e4-3c18-a4bd-1bda-7c8b.pool6.digikabel.hu) |
| 2025-12-19 15:05:56 | × | Googulator61 quits (~Googulato@2a01-036d-0106-48e4-3c18-a4bd-1bda-7c8b.pool6.digikabel.hu) (Quit: Client closed) |
| 2025-12-19 15:06:44 | <yin> | sure, in this simplified instance |
| 2025-12-19 15:06:51 | <yin> | this is what i'm writting https://paste.jrvieira.com/1766156784921 |
| 2025-12-19 15:07:06 | <yin> | (join bimap) is a very common pattern for me |
| 2025-12-19 15:07:10 | <yin> | oh well |
| 2025-12-19 15:10:00 | × | fp quits (~Thunderbi@2001:708:150:10::7e06) (Ping timeout: 252 seconds) |
| 2025-12-19 15:10:58 | <Leary> | What's "the DMR"? |
| 2025-12-19 15:11:50 | <yin> | mari-estel: is that a Lens thing? |
| 2025-12-19 15:12:04 | <yin> | Leary: https://wiki.haskell.org/index.php?title=Monomorphism_restriction |
| 2025-12-19 15:12:23 | <mari-estel> | arrow thing, i believe |
| 2025-12-19 15:12:37 | <merijn> | Leary: Dread Monomorphism Restriction |
| 2025-12-19 15:12:44 | <merijn> | @quote dmr |
| 2025-12-19 15:12:45 | <lambdabot> | No quotes match. Whoa. |
| 2025-12-19 15:12:45 | <yin> | Leary: "D" is for "Dreaded" |
| 2025-12-19 15:13:02 | <merijn> | @quote dreaded |
| 2025-12-19 15:13:03 | <lambdabot> | liyang says: <fragamus> how can I upgrade bytestring? I tried to use cabal but it complains <liyang> Ah, the dreaded monochrom restriction. |
| 2025-12-19 15:13:28 | <mari-estel> | :D |
| 2025-12-19 15:13:43 | <merijn> | hmm, not quite what I was looking for |
| 2025-12-19 15:15:04 | <Leary> | Okay, I guess I've heard that turn of phrase. Never seen it reduced to DMR though, only MMR. DMMR might be clearer. |
| 2025-12-19 15:21:33 | × | annamalai quits (~annamalai@2409:4042:2312:1f01::15d4:c8a5) (Ping timeout: 252 seconds) |
| 2025-12-19 15:21:35 | × | larsivi quits (~larsivi@user/larsivi) (Ping timeout: 245 seconds) |
| 2025-12-19 15:21:49 | → | annamalai joins (~annamalai@157.32.137.200) |
| 2025-12-19 15:25:44 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 2025-12-19 15:27:35 | ski | . o O ( `join (,) (length :: (exists a. [a]) -> Int) :: ([a0] -> Int,[a1] -> Int)' ) |
| 2025-12-19 15:35:43 | <lucabtz> | this is only slightly related but somthing i find confusing with nomenclature is that a monomorphic function and a monomorphism (in the categorical sense) have nothing to do with each other in haskell |
| 2025-12-19 15:35:43 | × | Googulator17 quits (~Googulato@2a01-036d-0106-48e4-3c18-a4bd-1bda-7c8b.pool6.digikabel.hu) (Quit: Client closed) |
| 2025-12-19 15:35:50 | → | Googulator17 joins (~Googulato@2a01-036d-0106-48e4-3c18-a4bd-1bda-7c8b.pool6.digikabel.hu) |
| 2025-12-19 15:37:39 | <merijn> | Why is that confusing? |
| 2025-12-19 15:38:37 | <merijn> | The introduction of category theory vocabulary (i.e. monad and friends) was a rather later addition to Haskell, so most of the nomenclature is (mostly) unrelated to category theory |
| 2025-12-19 15:39:27 | <merijn> | From a type theory persepctive monomorphic is just the antonym of polymorphic |
| 2025-12-19 15:39:47 | <lucabtz> | it's confusing because for example holomorphism is the property associated to a holomorphic function in complex analysys, while monomorphism has nothing to do with a monomorphic function |
| 2025-12-19 15:40:02 | → | weary-traveler joins (~user@user/user363627) |
| 2025-12-19 15:40:14 | <lucabtz> | yeah the names make sense, the collision is just unfortunate |
| 2025-12-19 15:44:39 | × | somemathguy quits (~somemathg@user/somemathguy) (Ping timeout: 250 seconds) |
| 2025-12-19 15:50:16 | → | ttybitnik joins (~ttybitnik@user/wolper) |
| 2025-12-19 15:52:19 | → | milan2 joins (~milan@88.212.61.169) |
| 2025-12-19 15:54:41 | × | weary-traveler quits (~user@user/user363627) (Remote host closed the connection) |
| 2025-12-19 16:06:18 | <yin> | we can't have a single word for everything |
| 2025-12-19 16:07:37 | <yin> | monomorphic just means "single form" so the mistake is to use the term alone without context |
| 2025-12-19 16:08:16 | <yin> | i remember being confused when i learned about monadic functions in array languages |
| 2025-12-19 16:08:42 | × | ouilemur quits (~jgmerritt@user/ouilemur) (Ping timeout: 246 seconds) |
| 2025-12-19 16:09:13 | × | acarrico quits (~acarrico@2001:18b0:c000:7433:aee:5563:d876:718f) (Ping timeout: 256 seconds) |
| 2025-12-19 16:09:41 | → | somemathguy joins (~somemathg@user/somemathguy) |
| 2025-12-19 16:10:53 | <lucabtz> | yin: well technically we can have a single word for everything if we assume everything is numerable |
| 2025-12-19 16:10:58 | <lucabtz> | *countable |
| 2025-12-19 16:11:21 | <lucabtz> | but i agree it is not doable in practise |
| 2025-12-19 16:11:48 | <lucabtz> | and yeah i was reading something about APL and i found monadic to be a confusing term too |
| 2025-12-19 16:12:49 | <yin> | it doesn't help that we also have different terms for the same things |
| 2025-12-19 16:13:53 | <lucabtz> | yeah sure |
| 2025-12-19 16:14:11 | <yin> | not to get too metaphysical but i don't think these concepts are countable because they're buckets dividing reality into arbitrary chunks |
| 2025-12-19 16:14:14 | <lucabtz> | however the same term for different things is worse |
| 2025-12-19 16:14:46 | <lucabtz> | yin yes and no if you consider each real number to be something inside the everything |
All times are in UTC.