Newest at the top
2025-01-22 21:37:55 +0100 | CiaoSen | (~Jura@2a05:5800:213:ca00:ca4b:d6ff:fec1:99da) (Ping timeout: 264 seconds) |
2025-01-22 21:35:27 +0100 | acidjnk | (~acidjnk@p200300d6e7283f90cc5a38f326993e22.dip0.t-ipconnect.de) acidjnk |
2025-01-22 21:35:15 +0100 | Midjak | (~MarciZ@82.66.147.146) Midjak |
2025-01-22 21:31:43 +0100 | gorignak | (~gorignak@user/gorignak) gorignak |
2025-01-22 21:31:12 +0100 | gorignak | (~gorignak@user/gorignak) (Quit: quit) |
2025-01-22 21:27:57 +0100 | dtman34 | (~dtman34@2601:447:d000:1f5e:db30:cdc7:b397:11f8) dtman34 |
2025-01-22 21:27:06 +0100 | weary-traveler | (~user@user/user363627) user363627 |
2025-01-22 21:26:30 +0100 | dtman34 | (~dtman34@2601:447:d000:1f5e:373d:5f10:fd7d:c913) (Ping timeout: 276 seconds) |
2025-01-22 21:25:38 +0100 | taleseeker | (~taleseeke@185.107.44.16) |
2025-01-22 21:21:48 +0100 | dtman34 | (~dtman34@2601:447:d000:1f5e:373d:5f10:fd7d:c913) dtman34 |
2025-01-22 21:21:25 +0100 | notzmv | (~umar@user/notzmv) notzmv |
2025-01-22 21:19:08 +0100 | simplystuart | (~simplystu@c-75-75-152-164.hsd1.pa.comcast.net) (Ping timeout: 252 seconds) |
2025-01-22 21:17:33 +0100 | ljdarj1 | ljdarj |
2025-01-22 21:17:32 +0100 | ljdarj | (~Thunderbi@user/ljdarj) (Ping timeout: 265 seconds) |
2025-01-22 21:16:19 +0100 | acidjnk | (~acidjnk@p200300d6e7283f90cc5a38f326993e22.dip0.t-ipconnect.de) (Ping timeout: 264 seconds) |
2025-01-22 21:14:42 +0100 | simplystuart | (~simplystu@c-75-75-152-164.hsd1.pa.comcast.net) |
2025-01-22 21:14:21 +0100 | JuanDaugherty | ColinRobinson |
2025-01-22 21:14:13 +0100 | ljdarj1 | (~Thunderbi@user/ljdarj) ljdarj |
2025-01-22 21:09:21 +0100 | ColinRobinson | JuanDaugherty |
2025-01-22 21:08:18 +0100 | simplystuart | (~simplystu@c-75-75-152-164.hsd1.pa.comcast.net) (Ping timeout: 276 seconds) |
2025-01-22 21:06:07 +0100 | alfiee | (~alfiee@user/alfiee) (Ping timeout: 244 seconds) |
2025-01-22 21:04:33 +0100 | nhar | (~noah@host-68-169-128-200.BROOLT1.epbfi.com) (Ping timeout: 248 seconds) |
2025-01-22 21:02:57 +0100 | visilii | (~visilii@188.254.110.9) (Ping timeout: 248 seconds) |
2025-01-22 21:01:48 +0100 | alfiee | (~alfiee@user/alfiee) alfiee |
2025-01-22 21:01:48 +0100 | lxsameer | (lxsameer@Serene/lxsameer) (Ping timeout: 276 seconds) |
2025-01-22 21:00:41 +0100 | caconym | (~caconym@user/caconym) caconym |
2025-01-22 21:00:04 +0100 | caconym | (~caconym@user/caconym) (Quit: bye) |
2025-01-22 20:59:46 +0100 | <dminuoso> | RDBMs tend to get this more right than most programming languages. |
2025-01-22 20:59:36 +0100 | <tomsmeding> | I've had the luxury so far of not working on applications where that's actually important |
2025-01-22 20:59:33 +0100 | visilii_ | (~visilii@213.24.126.57) |
2025-01-22 20:59:16 +0100 | <tomsmeding> | right |
2025-01-22 20:59:10 +0100 | <dminuoso> | There can be so many notions of equality with string-like data. |
2025-01-22 20:59:00 +0100 | <dminuoso> | tomsmeding: Honestly the topic of strings and equality is an annoying business, because "collation" does not refer to a particular authoritative strategy either. |
2025-01-22 20:58:28 +0100 | <tomsmeding> | took some time checking that I was doing the right thing because my terminal isn't rendering the uncombined form -.- |
2025-01-22 20:57:42 +0100 | <tomsmeding> | that's a + combining diaeresis, versus the pre-combined form |
2025-01-22 20:57:29 +0100 | <dminuoso> | And even if not, strided prefetchers will trigger (I dont know the assembly generated by compareByteArrays# however) |
2025-01-22 20:57:28 +0100 | <lambdabot> | False |
2025-01-22 20:57:26 +0100 | <tomsmeding> | > "\x61\x308" == "\xe4" |
2025-01-22 20:57:04 +0100 | <dminuoso> | Then memcmp is *definitely* faster. Depending on alignment it could a tight loop on a single cache line. |
2025-01-22 20:55:59 +0100 | <dminuoso> | https://hackage.haskell.org/package/text-2.1.2/docs/src/Data.Text.Array.html#compareInternal - so this ends up using memcmp or compareByteArrays# after all |
2025-01-22 20:55:28 +0100 | <dminuoso> | Guessimport qualified Data.Text.Array as A |
2025-01-22 20:55:20 +0100 | <dminuoso> | | lenA == lenB = A.equal arrA offA arrB offB lenA |
2025-01-22 20:54:56 +0100 | ash3en | (~Thunderbi@ip1f10cbd6.dynamic.kabel-deutschland.de) (Client Quit) |
2025-01-22 20:54:51 +0100 | <dminuoso> | I dont.. know? |
2025-01-22 20:54:41 +0100 | <dminuoso> | But the question is very good actually |
2025-01-22 20:54:30 +0100 | <dminuoso> | Text contains unicode |
2025-01-22 20:54:27 +0100 | <tomsmeding> | but this is tangential to the point; is the answer to your original question answered by "lookup and ((lookup .) . map swap)"? |
2025-01-22 20:54:25 +0100 | <dminuoso> | tomsmeding: Uh, what about collation? |
2025-01-22 20:54:02 +0100 | <tomsmeding> | isn't equality on Text byte-equality, hence memcmp(), hence quite fast? |
2025-01-22 20:54:00 +0100 | <dminuoso> | The strings are all short (10-15ish) however |