2025-03-26 00:03:22 +0100 | <geekosaur> | keep it but require `import IEEE754Insanity` |
2025-03-26 00:05:23 +0100 | poscat | (~poscat@user/poscat) (Ping timeout: 245 seconds) |
2025-03-26 00:05:44 +0100 | poscat | (~poscat@user/poscat) poscat |
2025-03-26 00:05:56 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-26 00:06:04 +0100 | weary-traveler | (~user@user/user363627) user363627 |
2025-03-26 00:06:16 +0100 | <otto_s> | Is there a reason, why the imaginary party of -1 :: Complex Double *should* be -0 ? |
2025-03-26 00:08:54 +0100 | <otto_s> | Oh, I see, mauke answered that already. |
2025-03-26 00:10:41 +0100 | <otto_s> | Floats are evil. *g* |
2025-03-26 00:10:43 +0100 | <geekosaur> | I think the full answer involves complex numbers as being on a plane, and having trig on them produce results in the correct quadrant? |
2025-03-26 00:11:26 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 268 seconds) |
2025-03-26 00:12:26 +0100 | <otto_s> | No, I think the culprit is just: |
2025-03-26 00:12:29 +0100 | <otto_s> | > isNegativeZero $ negate 0 |
2025-03-26 00:12:31 +0100 | <lambdabot> | True |
2025-03-26 00:13:12 +0100 | <geekosaur> | right, but what I said is why the whole "negative zero" thing exists in the first place. see also atan2 |
2025-03-26 00:13:17 +0100 | <otto_s> | (and then late, of course, how log decides where to go) |
2025-03-26 00:14:11 +0100 | <otto_s> | Yes. |
2025-03-26 00:15:39 +0100 | <geekosaur> | sadly it's been a looong time since I last did this stuff so it's all become kinda fuzzy ("use it or lose it") |
2025-03-26 00:16:25 +0100 | <geekosaur> | last time I touched it was 1985 |
2025-03-26 00:21:43 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-26 00:23:08 +0100 | __monty__ | (~toonn@user/toonn) (Quit: leaving) |
2025-03-26 00:25:18 +0100 | byte | (~mu@user/byte) (Quit: Leaving) |
2025-03-26 00:25:48 +0100 | sarna | (~sarna@d192-22.icpnet.pl) (Ping timeout: 245 seconds) |
2025-03-26 00:26:38 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds) |
2025-03-26 00:27:21 +0100 | aetepe | (~aetepe@188.119.22.83) aetepe |
2025-03-26 00:30:26 +0100 | weary-traveler | (~user@user/user363627) (Remote host closed the connection) |
2025-03-26 00:33:37 +0100 | byte | (~mu@user/byte) byte |
2025-03-26 00:35:20 +0100 | simplystuart | (~simplystu@c-75-75-152-164.hsd1.pa.comcast.net) (Ping timeout: 252 seconds) |
2025-03-26 00:35:45 +0100 | simplystuart | (~simplystu@c-75-75-152-164.hsd1.pa.comcast.net) |
2025-03-26 00:37:31 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-26 00:40:56 +0100 | alfiee | (~alfiee@user/alfiee) alfiee |
2025-03-26 00:42:05 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
2025-03-26 00:45:17 +0100 | sarna | (~sarna@d192-22.icpnet.pl) sarna |
2025-03-26 00:45:45 +0100 | alfiee | (~alfiee@user/alfiee) (Ping timeout: 265 seconds) |
2025-03-26 00:45:46 +0100 | sprotte24 | (~sprotte24@p5dd5d056.dip0.t-ipconnect.de) (Quit: Leaving) |
2025-03-26 00:51:04 +0100 | Tuplanolla | (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) Tuplanolla |
2025-03-26 00:53:18 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-26 00:57:53 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
2025-03-26 01:04:38 +0100 | robobub | (uid248673@id-248673.uxbridge.irccloud.com) robobub |
2025-03-26 01:07:01 +0100 | sarna | (~sarna@d192-22.icpnet.pl) (Ping timeout: 265 seconds) |
2025-03-26 01:09:05 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-26 01:11:27 +0100 | weary-traveler | (~user@user/user363627) user363627 |
2025-03-26 01:12:06 +0100 | <EvanR> | > atan (recip 0) |
2025-03-26 01:12:07 +0100 | <lambdabot> | 1.5707963267948966 |
2025-03-26 01:12:12 +0100 | <EvanR> | > atan (recip (-0)) |
2025-03-26 01:12:14 +0100 | <lambdabot> | -1.5707963267948966 |
2025-03-26 01:13:21 +0100 | <EvanR> | also the way I do decode float in another universe is return (sign, mantissa, exponent) |
2025-03-26 01:14:45 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 276 seconds) |
2025-03-26 01:16:00 +0100 | <Leary> | otto_s: May I introduce you to your lord and saviour `LexicalNegation`? It will ensure that `-1` means `fromInteger -1`, not `negate (fromInteger 1)`, hence `-1 = -1 :+ 0`. |
2025-03-26 01:16:29 +0100 | tomboy64 | (~tomboy64@user/tomboy64) (Ping timeout: 244 seconds) |
2025-03-26 01:16:50 +0100 | <Leary> | I would like to demonstrate with yahb2, but it's being weird: |
2025-03-26 01:16:57 +0100 | <Leary> | % import Data.Complex |
2025-03-26 01:16:57 +0100 | <yahb2> | <no location info>: error: [GHC-88719] ; Could not load module ‘Data.Complex’. ; Perhaps you haven't installed the "dyn" libraries for package ‘base-4.21.0.0’? ; Use :set -v to see a li... |
2025-03-26 01:17:02 +0100 | <Leary> | tomsmeding: ^ halp |
2025-03-26 01:17:28 +0100 | <geekosaur> | think he's in bed by now, sadly |
2025-03-26 01:17:45 +0100 | <geekosaur> | utc-2 iirc so it's like 2am |
2025-03-26 01:18:25 +0100 | <EvanR> | indeed it's only 54 dotbeats |
2025-03-26 01:20:50 +0100 | tomboy64 | (~tomboy64@user/tomboy64) tomboy64 |
2025-03-26 01:21:39 +0100 | zungi | (~tory@user/andrewchawk) andrewchawk |
2025-03-26 01:24:53 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-26 01:26:00 +0100 | alfiee | (~alfiee@user/alfiee) alfiee |
2025-03-26 01:26:09 +0100 | ljdarj1 | (~Thunderbi@user/ljdarj) ljdarj |
2025-03-26 01:29:06 +0100 | ljdarj | (~Thunderbi@user/ljdarj) (Ping timeout: 244 seconds) |
2025-03-26 01:29:06 +0100 | ljdarj1 | ljdarj |
2025-03-26 01:30:13 +0100 | alfiee | (~alfiee@user/alfiee) (Ping timeout: 248 seconds) |
2025-03-26 01:31:41 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
2025-03-26 01:38:16 +0100 | sarna | (~sarna@d192-22.icpnet.pl) sarna |
2025-03-26 01:42:56 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-26 01:46:18 +0100 | CiaoSen | (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 272 seconds) |
2025-03-26 01:47:01 +0100 | TheCoffeMaker | (~TheCoffeM@user/thecoffemaker) (Ping timeout: 268 seconds) |
2025-03-26 01:47:29 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
2025-03-26 01:55:24 +0100 | acidjnk | (~acidjnk@p200300d6e71c4f2435ff52636e0f7274.dip0.t-ipconnect.de) (Remote host closed the connection) |
2025-03-26 01:55:50 +0100 | acidjnk | (~acidjnk@p200300d6e71c4f2435ff52636e0f7274.dip0.t-ipconnect.de) acidjnk |
2025-03-26 01:58:43 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-26 02:01:38 +0100 | xff0x | (~xff0x@2405:6580:b080:900:f588:30f2:ad44:5069) (Ping timeout: 245 seconds) |
2025-03-26 02:04:33 +0100 | acidjnk | (~acidjnk@p200300d6e71c4f2435ff52636e0f7274.dip0.t-ipconnect.de) (Ping timeout: 245 seconds) |
2025-03-26 02:05:23 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds) |
2025-03-26 02:11:25 +0100 | alfiee | (~alfiee@user/alfiee) alfiee |
2025-03-26 02:15:47 +0100 | otto_s | (~user@p5de2f2e9.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
2025-03-26 02:16:00 +0100 | alfiee | (~alfiee@user/alfiee) (Ping timeout: 268 seconds) |
2025-03-26 02:16:47 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-26 02:17:34 +0100 | otto_s | (~user@p4ff27de5.dip0.t-ipconnect.de) |
2025-03-26 02:21:33 +0100 | JuanDaugherty | (~juan@user/JuanDaugherty) (Quit: praxis.meansofproduction.biz (juan@acm.org)) |
2025-03-26 02:21:35 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
2025-03-26 02:24:10 +0100 | vanishingideal | (~vanishing@user/vanishingideal) (Ping timeout: 244 seconds) |
2025-03-26 02:26:21 +0100 | vanishingideal | (~vanishing@user/vanishingideal) vanishingideal |
2025-03-26 02:26:47 +0100 | machinedgod | (~machinedg@d108-173-18-100.abhsia.telus.net) (Ping timeout: 252 seconds) |
2025-03-26 02:28:01 +0100 | Pixi` | (~Pixi@user/pixi) (Quit: Leaving) |
2025-03-26 02:32:33 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-26 02:34:59 +0100 | Tuplanolla | (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) (Quit: Leaving.) |
2025-03-26 02:36:58 +0100 | inca | (~inca@4-138-135-64.gray-ng.dsl.pinetreenetworks.com) (Ping timeout: 272 seconds) |
2025-03-26 02:37:18 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
2025-03-26 02:37:33 +0100 | hattckory | (~hattckory@bras-base-toroon4524w-grc-30-70-27-118-207.dsl.bell.ca) |
2025-03-26 02:38:19 +0100 | inca | (~inca@4-138-135-64.gray-ng.dsl.pinetreenetworks.com) |
2025-03-26 02:39:21 +0100 | todi1 | (~todi@p57803331.dip0.t-ipconnect.de) |
2025-03-26 02:39:30 +0100 | todi | (~todi@p57803331.dip0.t-ipconnect.de) (Ping timeout: 272 seconds) |
2025-03-26 02:40:23 +0100 | aetepe | (~aetepe@188.119.22.83) (Ping timeout: 245 seconds) |
2025-03-26 02:40:45 +0100 | Tuplanolla | (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) Tuplanolla |
2025-03-26 02:42:56 +0100 | inca | (~inca@4-138-135-64.gray-ng.dsl.pinetreenetworks.com) (Ping timeout: 252 seconds) |
2025-03-26 02:43:34 +0100 | cyphase | (~cyphase@user/cyphase) (Ping timeout: 260 seconds) |
2025-03-26 02:43:48 +0100 | inca | (~inca@4-138-135-64.gray-ng.dsl.pinetreenetworks.com) |
2025-03-26 02:48:18 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-26 02:48:47 +0100 | inca | (~inca@4-138-135-64.gray-ng.dsl.pinetreenetworks.com) (Ping timeout: 252 seconds) |
2025-03-26 02:52:50 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) |
2025-03-26 02:53:16 +0100 | xff0x | (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) |
2025-03-26 02:54:10 +0100 | <monochrom> | It looks like -1 :: Complex Double becomes - (1 :+ 0) so it is (-1) :+ (-0) |
2025-03-26 02:55:13 +0100 | <geekosaur> | yes, that's because of how the Report specifies unary negation |
2025-03-26 02:55:20 +0100 | <monochrom> | You could blame how there are +0 and -0, but numerical analysis people actually complain about how Java screws up everything by eliminating that. |
2025-03-26 02:55:32 +0100 | inca | (~inca@4-138-135-64.gray-ng.dsl.pinetreenetworks.com) |
2025-03-26 02:55:51 +0100 | <geekosaur> | NegativeLiterals or LexicalNegation changes it |
2025-03-26 02:56:30 +0100 | alfiee | (~alfiee@user/alfiee) alfiee |
2025-03-26 02:57:02 +0100 | Tuplanolla | (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) (Quit: Leaving.) |
2025-03-26 02:57:39 +0100 | <monochrom> | https://docs.oracle.com/cd/E19957-01/806-3568/ncg_goldberg.html has a section on how having -0 is helpful for complex numbers. |
2025-03-26 02:58:19 +0100 | notdabs | (~Owner@2600:1700:69cf:9000:5812:4103:61ba:7880) (Read error: Connection reset by peer) |
2025-03-26 02:59:25 +0100 | Square | (~Square@user/square) Square |
2025-03-26 02:59:37 +0100 | <monochrom> | I believe in the principle that the largest stakeholders should have the largest say. In this case physicists and numerical people who use floating point in anger should have a much larger say than us casual occasional users. And their verdict is clear, all the IEEE 754 "weirdness" is what they want. |
2025-03-26 03:01:01 +0100 | alfiee | (~alfiee@user/alfiee) (Ping timeout: 268 seconds) |
2025-03-26 03:03:40 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-26 03:03:55 +0100 | <haskellbridge> | <Bowuigi> Posits may be better for the rest of us |
2025-03-26 03:05:17 +0100 | <c_wraith> | Fixed point is better for my use cases |
2025-03-26 03:06:46 +0100 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) peterbecich |
2025-03-26 03:08:25 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 268 seconds) |
2025-03-26 03:11:42 +0100 | weary-traveler | (~user@user/user363627) (Remote host closed the connection) |
2025-03-26 03:19:02 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-26 03:23:43 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds) |
2025-03-26 03:26:12 +0100 | <Axman6> | @tell Liamzee https://github.com/the-benchmarker/web-frameworks/pull/8328 |
2025-03-26 03:26:12 +0100 | <lambdabot> | Consider it noted. |
2025-03-26 03:26:13 +0100 | aforemny_ | (~aforemny@2001:9e8:6cde:a00:bd3b:75a2:c3bc:65be) (Ping timeout: 265 seconds) |
2025-03-26 03:26:32 +0100 | bitdex_ | (~bitdex@gateway/tor-sasl/bitdex) bitdex |
2025-03-26 03:27:35 +0100 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection) |
2025-03-26 03:28:11 +0100 | aforemny | (~aforemny@i59F4C69B.versanet.de) aforemny |
2025-03-26 03:34:50 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-26 03:36:30 +0100 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 244 seconds) |
2025-03-26 03:36:53 +0100 | cyphase | (~cyphase@user/cyphase) cyphase |
2025-03-26 03:40:52 +0100 | cyphase | (~cyphase@user/cyphase) (Read error: Connection reset by peer) |
2025-03-26 03:41:55 +0100 | alfiee | (~alfiee@user/alfiee) alfiee |
2025-03-26 03:41:59 +0100 | cyphase | (~cyphase@user/cyphase) cyphase |
2025-03-26 03:42:12 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 272 seconds) |
2025-03-26 03:44:59 +0100 | vanishingideal | (~vanishing@user/vanishingideal) (Ping timeout: 260 seconds) |
2025-03-26 03:46:22 +0100 | alfiee | (~alfiee@user/alfiee) (Ping timeout: 252 seconds) |
2025-03-26 03:46:24 +0100 | vanishingideal | (~vanishing@user/vanishingideal) vanishingideal |
2025-03-26 03:47:08 +0100 | Pixi | (~Pixi@user/pixi) Pixi |
2025-03-26 03:51:45 +0100 | TheCoffeMaker | (~TheCoffeM@user/thecoffemaker) TheCoffeMaker |
2025-03-26 03:52:53 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-26 03:55:35 +0100 | bitdex_ | (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection) |
2025-03-26 03:55:41 +0100 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) bitdex |
2025-03-26 03:57:44 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) |
2025-03-26 04:08:40 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-26 04:12:22 +0100 | ljdarj | (~Thunderbi@user/ljdarj) (Ping timeout: 244 seconds) |
2025-03-26 04:13:47 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 268 seconds) |
2025-03-26 04:15:48 +0100 | <EvanR> | > -1 :: Complex Double |
2025-03-26 04:15:50 +0100 | <lambdabot> | (-1.0) :+ (-0.0) |
2025-03-26 04:16:10 +0100 | <EvanR> | it Shows -0 in the imaginary part all along lol |
2025-03-26 04:16:22 +0100 | <geekosaur> | % :set -XLexicalNegation |
2025-03-26 04:16:22 +0100 | <yahb2> | <no output> |
2025-03-26 04:16:35 +0100 | <geekosaur> | % -1 :: Complex Double |
2025-03-26 04:16:35 +0100 | <yahb2> | <interactive>:377:7: error: [GHC-76037] ; Not in scope: type constructor or class ‘Complex’ |
2025-03-26 04:16:42 +0100 | <EvanR> | funny it took so long to "prove" |
2025-03-26 04:16:54 +0100 | <geekosaur> | oh wait, someone tried to import that and it errored |
2025-03-26 04:17:02 +0100 | <geekosaur> | % import Data.Complex |
2025-03-26 04:17:03 +0100 | <yahb2> | <no location info>: error: [GHC-88719] ; Could not load module ‘Data.Complex’. ; Perhaps you haven't installed the "dyn" libraries for package ‘base-4.21.0.0’? ; Use :set -v to see a li... |
2025-03-26 04:19:11 +0100 | developer_ | (~developer@85.50.149.196) |
2025-03-26 04:19:52 +0100 | <EvanR> | that -0 compares equal to "just" 0, and there's no corresponding "plus zero" condition for the result of positive underflows says to me they considered negative zero to be a "bonus feature" which could usually be ignored, or utilized for more information in some cases |
2025-03-26 04:20:15 +0100 | <EvanR> | when addition exactly cancels you get just zero, never negative |
2025-03-26 04:20:19 +0100 | <haskellbridge> | <Liamzee> i hope this question isn't too dumb, but |
2025-03-26 04:20:26 +0100 | <geekosaur> | ghci> -1 :: Complex Double |
2025-03-26 04:20:26 +0100 | <geekosaur> | (-1.0) :+ 0.0 |
2025-03-26 04:20:29 +0100 | <haskellbridge> | <Liamzee> oh, chat is active, sorry |
2025-03-26 04:20:34 +0100 | random-jellyfish | (~developer@user/random-jellyfish) (Ping timeout: 260 seconds) |
2025-03-26 04:20:38 +0100 | <geekosaur> | go ahead |
2025-03-26 04:21:04 +0100 | <haskellbridge> | <Liamzee> i'm building a rust-based microservices router, with the initial microservices being in Haskell |
2025-03-26 04:21:05 +0100 | <geekosaur> | EvanR, that behavior is specified by IEEE754 |
2025-03-26 04:21:18 +0100 | <EvanR> | I'm sure it is |
2025-03-26 04:21:22 +0100 | <haskellbridge> | <Liamzee> if I want to pass the IP of the sender, how would I get warp / servant / twain to get the IP? |
2025-03-26 04:21:45 +0100 | <geekosaur> | monochrom posted an Oracle doc explaining it, beyond that I think the specification itself is probably the best source |
2025-03-26 04:21:56 +0100 | <EvanR> | just noting there's no corresponding plus zero |
2025-03-26 04:22:03 +0100 | <EvanR> | so it's an asymmetric feature |
2025-03-26 04:22:33 +0100 | <geekosaur> | yes, and it exists solely to put zeroes in the correct quadrant on a plane |
2025-03-26 04:23:22 +0100 | <EvanR> | zeroes in a quadrant |
2025-03-26 04:23:51 +0100 | <geekosaur> | (I would have to read the spec to see if Report-compliant behavior or the extension is the correct behavior) |
2025-03-26 04:24:05 +0100 | <geekosaur> | yes. has to do with ranges |
2025-03-26 04:24:28 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-26 04:24:33 +0100 | <geekosaur> | and trig |
2025-03-26 04:24:34 +0100 | aetepe | (~aetepe@188.119.22.83) aetepe |
2025-03-26 04:24:55 +0100 | <geekosaur> | but as I said earlier, I haven't messed with this since 1985, so… |
2025-03-26 04:27:59 +0100 | alfiee | (~alfiee@user/alfiee) alfiee |
2025-03-26 04:28:43 +0100 | aetepe | (~aetepe@188.119.22.83) (Ping timeout: 245 seconds) |
2025-03-26 04:29:12 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 268 seconds) |
2025-03-26 04:29:58 +0100 | <EvanR> | Liamzee, I see remoteHost :: SockAddr field in the Request type for wai |
2025-03-26 04:30:17 +0100 | <monochrom> | I would interpret the two signed zeros to be -0 and +0, rather than -0 and "neutral" 0. |
2025-03-26 04:30:27 +0100 | <EvanR> | sometimes it is exactly zero |
2025-03-26 04:30:39 +0100 | <EvanR> | none this "every float is a random number around some point" crap xD |
2025-03-26 04:30:43 +0100 | <EvanR> | none of* |
2025-03-26 04:31:01 +0100 | <monochrom> | No, this is not about random or nondeterminism. |
2025-03-26 04:31:30 +0100 | <EvanR> | if you add -0.5 and +0.5, it equals zero, not +zero |
2025-03-26 04:31:40 +0100 | <EvanR> | (or -zero) |
2025-03-26 04:32:21 +0100 | <monochrom> | Let me write very explicitly. (+1)/(+0) = +oo, (+1)/(-0) = -oo. That's btw another reason to keep a sign bit on zero. |
2025-03-26 04:32:48 +0100 | <geekosaur> | go read that Oracle paper monochrom linked earlier |
2025-03-26 04:32:50 +0100 | <EvanR> | also +1 / +infinity = zero |
2025-03-26 04:32:50 +0100 | <monochrom> | > 1 / ((-0.5) + (+0.5)) |
2025-03-26 04:32:52 +0100 | <lambdabot> | error: |
2025-03-26 04:32:52 +0100 | <lambdabot> | • No instance for (Fractional (Double -> Double)) |
2025-03-26 04:32:52 +0100 | <lambdabot> | arising from a use of ‘e_110505’ |
2025-03-26 04:32:52 +0100 | alfiee | (~alfiee@user/alfiee) (Ping timeout: 272 seconds) |
2025-03-26 04:33:08 +0100 | <geekosaur> | this is related to numeric analysis and complex trig, and predates computers |
2025-03-26 04:33:09 +0100 | <haskellbridge> | <Liamzee> thanks EvanR |
2025-03-26 04:33:24 +0100 | <EvanR> | if anything you just pointed out another (or instead of) asymmetry |
2025-03-26 04:34:33 +0100 | <geekosaur> | the numerics folks demanded this behavior when IEEE floating point was being standardized |
2025-03-26 04:34:36 +0100 | <haskellbridge> | <Liamzee> thanks Axman6 , but ultimately I'd love to see Haskell's web-interfaces using linear haskell to reduce memory consumption and allocation time |
2025-03-26 04:34:37 +0100 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection) |
2025-03-26 04:34:38 +0100 | bitdex_ | (~bitdex@gateway/tor-sasl/bitdex) bitdex |
2025-03-26 04:35:45 +0100 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) bitdex |
2025-03-26 04:36:17 +0100 | <monochrom> | Sure, some asymmetry is inevitable. |
2025-03-26 04:36:57 +0100 | bitdex_ | (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection) |
2025-03-26 04:36:58 +0100 | <monochrom> | I interpret that asymmetry to mean "+0 is the default" not "there is no +0, instead a neutral 'exact' [sic] zero". |
2025-03-26 04:37:03 +0100 | <monochrom> | -0 is as exact as +0. |
2025-03-26 04:37:28 +0100 | bitdex_ | (~bitdex@gateway/tor-sasl/bitdex) bitdex |
2025-03-26 04:37:36 +0100 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection) |
2025-03-26 04:38:45 +0100 | <EvanR> | the section on signed zero just notes trig functions and complex analysis functions, makes sense |
2025-03-26 04:38:51 +0100 | <monochrom> | Because 1/("neutral exact" zero) has no reason to be either +oo or -oo. (At most a reason to be the Riemann sphere oo.) Whereas 1/(+0) does. |
2025-03-26 04:39:21 +0100 | <EvanR> | though the interpretation of "zero minus" and "zero plus" breaks down for results that should be exactly zero |
2025-03-26 04:39:52 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-26 04:39:53 +0100 | <EvanR> | I'm sure it's a sacrifice to be made instead of losing a bit of precision for 3 different signs |
2025-03-26 04:39:57 +0100 | <monochrom> | It doesn't if a deterministic convention is set up for defaulting. |
2025-03-26 04:40:34 +0100 | <EvanR> | yes recip of exactly zero wouldn't be either infinity |
2025-03-26 04:40:47 +0100 | <EvanR> | it would be its own thing, similar to graphical linear algebra |
2025-03-26 04:41:05 +0100 | <EvanR> | which also has infinities over infinity |
2025-03-26 04:41:23 +0100 | <EvanR> | and zero over zero |
2025-03-26 04:42:27 +0100 | <EvanR> | monochrom, I interpret the symmetry to mean there's a minor bias to the positive direction |
2025-03-26 04:42:43 +0100 | <EvanR> | asymmetry |
2025-03-26 04:42:45 +0100 | <monochrom> | Yes that's what I do. |
2025-03-26 04:44:49 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds) |
2025-03-26 04:47:04 +0100 | <EvanR> | > 3.14 - 3.1400000000000006 -- I think it's impossible to get -0 through addition |
2025-03-26 04:47:06 +0100 | <lambdabot> | -4.440892098500626e-16 |
2025-03-26 04:48:18 +0100 | <EvanR> | > 0 + (-0) |
2025-03-26 04:48:19 +0100 | <lambdabot> | 0 |
2025-03-26 04:48:33 +0100 | <EvanR> | > (-0) + (-0) |
2025-03-26 04:48:34 +0100 | <lambdabot> | 0 |
2025-03-26 04:48:38 +0100 | <EvanR> | lol |
2025-03-26 04:48:51 +0100 | <EvanR> | positive bias is strong |
2025-03-26 04:48:52 +0100 | <monochrom> | printf and most pretty printers drop the sign. |
2025-03-26 04:49:00 +0100 | <EvanR> | > -0 |
2025-03-26 04:49:01 +0100 | <lambdabot> | 0 |
2025-03-26 04:49:12 +0100 | <monochrom> | what you see is never what you get. it's telephone games all the way down. |
2025-03-26 04:49:12 +0100 | <EvanR> | Complex Double doesn't |
2025-03-26 04:49:31 +0100 | <EvanR> | > (-0) + (-0) :: Complex Double |
2025-03-26 04:49:33 +0100 | <lambdabot> | (-0.0) :+ (-0.0) |
2025-03-26 04:49:43 +0100 | <EvanR> | > (0) + (-0) :: Complex Double |
2025-03-26 04:49:44 +0100 | <lambdabot> | 0.0 :+ 0.0 |
2025-03-26 04:50:10 +0100 | <EvanR> | halfway sane |
2025-03-26 04:50:18 +0100 | <monochrom> | Right. Just don't trust the Show instance for Double. |
2025-03-26 04:51:16 +0100 | <EvanR> | or encodeFloat ! |
2025-03-26 04:51:23 +0100 | <EvanR> | er decode |
2025-03-26 04:52:39 +0100 | <Leary> | The `Show` instance for `Double` is fine; it was just defaulting to `Integer` there. |
2025-03-26 04:53:17 +0100 | Square2 | (~Square4@user/square) Square |
2025-03-26 04:54:29 +0100 | <EvanR> | > -0.0 |
2025-03-26 04:54:31 +0100 | <lambdabot> | -0.0 |
2025-03-26 04:55:11 +0100 | <monochrom> | Oh oops right. |
2025-03-26 04:55:13 +0100 | <EvanR> | rfc8259 for JSON has a grammar which seems to permit -0 to be in the json |
2025-03-26 04:55:24 +0100 | <EvanR> | I wonder how many loaders load it wrong |
2025-03-26 04:55:33 +0100 | <EvanR> | aeson? xD |
2025-03-26 04:55:39 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-26 04:55:43 +0100 | <EvanR> | Scientific doesn't support minus zero does it |
2025-03-26 04:56:21 +0100 | Square | (~Square@user/square) (Ping timeout: 246 seconds) |
2025-03-26 04:56:45 +0100 | <EvanR> | it does not |
2025-03-26 04:57:26 +0100 | <EvanR> | the browser loads it right |
2025-03-26 05:00:21 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds) |
2025-03-26 05:01:24 +0100 | <EvanR> | a large aeson issue from 2017 discusses the right way to represent numbers but doesn't mention negative zero |
2025-03-26 05:11:08 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-26 05:12:52 +0100 | <EvanR> | Text.JSON meanwhile represents a number with a Bool and a Rational |
2025-03-26 05:13:23 +0100 | alfiee | (~alfiee@user/alfiee) alfiee |
2025-03-26 05:15:55 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
2025-03-26 05:17:46 +0100 | alfiee | (~alfiee@user/alfiee) (Ping timeout: 244 seconds) |
2025-03-26 05:19:50 +0100 | aforemny_ | (~aforemny@2001:9e8:6cfa:db00:13b6:4544:c45d:3975) aforemny |
2025-03-26 05:20:05 +0100 | aforemny | (~aforemny@i59F4C69B.versanet.de) (Ping timeout: 248 seconds) |
2025-03-26 05:22:30 +0100 | <meejah> | Aaaaa |
2025-03-26 05:22:50 +0100 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) peterbecich |
2025-03-26 05:26:55 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-26 05:27:38 +0100 | sp1ff | (~user@c-67-160-173-55.hsd1.wa.comcast.net) sp1ff |
2025-03-26 05:31:05 +0100 | michalz | (~michalz@185.246.207.221) |
2025-03-26 05:31:38 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds) |
2025-03-26 05:37:31 +0100 | monochrom | (trebla@216.138.220.146) (Quit: ZNC 1.9.1+deb1 - https://znc.in) |
2025-03-26 05:42:42 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-26 05:46:16 +0100 | Unicorn_Princess | (~Unicorn_P@user/Unicorn-Princess/x-3540542) (Quit: Leaving) |
2025-03-26 05:47:44 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
2025-03-26 05:52:49 +0100 | michalz | (~michalz@185.246.207.221) (Quit: ZNC 1.9.1 - https://znc.in) |
2025-03-26 05:53:53 +0100 | monochrom | (trebla@216.138.220.146) |
2025-03-26 05:57:14 +0100 | michalz | (~michalz@185.246.207.218) |
2025-03-26 05:58:27 +0100 | alfiee | (~alfiee@user/alfiee) alfiee |
2025-03-26 05:58:31 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-26 06:02:56 +0100 | alfiee | (~alfiee@user/alfiee) (Ping timeout: 244 seconds) |
2025-03-26 06:04:04 +0100 | jmcantrell | (~weechat@user/jmcantrell) (Quit: WeeChat 4.5.2) |
2025-03-26 06:05:21 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds) |
2025-03-26 06:12:43 +0100 | j1n37- | (~j1n37@user/j1n37) j1n37 |
2025-03-26 06:13:56 +0100 | j1n37 | (~j1n37@user/j1n37) (Ping timeout: 265 seconds) |
2025-03-26 06:14:25 +0100 | Vajb | (~Vajb@n83sqe30rcw6481fyv6-1.v6.elisa-mobile.fi) (Remote host closed the connection) |
2025-03-26 06:14:48 +0100 | Vajb | (~Vajb@n83sqe30rcw6481fyv6-1.v6.elisa-mobile.fi) |
2025-03-26 06:16:11 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-26 06:21:01 +0100 | sabathan | (~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Ping timeout: 244 seconds) |
2025-03-26 06:21:19 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds) |
2025-03-26 06:23:06 +0100 | sabathan | (~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) |
2025-03-26 06:26:25 +0100 | wil | (~wil@syn-035-148-093-061.res.spectrum.com) |
2025-03-26 06:30:27 +0100 | wil | (~wil@syn-035-148-093-061.res.spectrum.com) (Client Quit) |
2025-03-26 06:32:00 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-26 06:36:21 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds) |
2025-03-26 06:43:51 +0100 | alfiee | (~alfiee@user/alfiee) alfiee |
2025-03-26 06:47:22 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-26 06:48:00 +0100 | alfiee | (~alfiee@user/alfiee) (Ping timeout: 246 seconds) |
2025-03-26 06:53:52 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
2025-03-26 06:59:18 +0100 | hgolden | (~hgolden@2603:8000:9d00:3ed1:6ff3:8389:b901:6363) (Remote host closed the connection) |
2025-03-26 07:00:29 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-26 07:05:14 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
2025-03-26 07:06:24 +0100 | hgolden | (~hgolden@2603:8000:9d00:3ed1:6ff3:8389:b901:6363) hgolden |
2025-03-26 07:11:16 +0100 | takuan | (~takuan@d8D86B601.access.telenet.be) |
2025-03-26 07:14:16 +0100 | ru0mad | (~ru0mad@moon.ruomad.net) ru0mad |
2025-03-26 07:16:12 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-26 07:20:52 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) |
2025-03-26 07:29:15 +0100 | alfiee | (~alfiee@user/alfiee) alfiee |
2025-03-26 07:31:46 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-26 07:34:00 +0100 | alfiee | (~alfiee@user/alfiee) (Ping timeout: 272 seconds) |
2025-03-26 07:36:16 +0100 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
2025-03-26 07:36:45 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |