code logs -> 2020 -> Thu, 30 Jan 2020< code.20200129.log - code.20200131.log >
--- Log opened Thu Jan 30 00:00:41 2020
00:25 Kindamoody is now known as Kindamoody[zZz]
01:10
<@celticminstrel>
XD
01:10
<@celticminstrel>
Seven years!?
01:30
< Pinkhair>
Well, at least that is something you can just look up now. :D
01:32
<@Alek>
now people are looking for pi to the trillion, ne?
01:34
< Pinkhair>
They've passed two trillion this year
01:35
< Pinkhair>
er, last year now I guess
01:35
<@Alek>
cool.
01:36
<&McMartin>
"In March 2019 Emma Haruka Iwao, a Google employee from Japan, calculated to a new world record length of 31 trillion digits with the help of the company's cloud computing service"
01:36
<@Reiv>
good times
01:36
<&McMartin>
https://www.bbc.co.uk/news/technology-47524760
01:36
<@Reiv>
Remind me what degree of pi do we need to keep plank length precision in the entire galaxy?
01:37
<@Reiv>
ah, no
01:37
<@Reiv>
"To the width of a hydrogen atom in the entire universe" is 39 digits
01:40
<@Reiv>
Conviniently, this can be stored in 128 bits, if you're willing to store/calculate the decimal place elsewhere.
01:41
<@Reiv>
Any value beyond this is purely for the hell of it
01:41
<@Reiv>
but hey, why not
01:41
<@celticminstrel>
Isn't that rougly equivalent to saying it fits in a 128-bit mantissa…?
01:41
<@celticminstrel>
And you still need to store the exponent?
01:42
<&McMartin>
You know the exponent.
01:42
<@Reiv>
Like I say, you need to track the exponent elsewhere, but in this case the exponent is always going to be fixed in value, so
01:42
<&McMartin>
Also the sign, for that matter~
01:42
<@Reiv>
Because you are not storing an arbitary value here, but the values of pi you need
01:42
<@celticminstrel>
True, if it's pi the exponent is known. sure.
01:43
<@Reiv>
Which is why I'm willing to note it as not strictly part of the number, or at least, not a part of the number that cannot be trivially dealt with while converting the number above to something you can, y'know, work with in actual code
01:43
<@Reiv>
(Shoving it into a floating point would rather defeat the purpose, after all)
01:44
<@Reiv>
(Though now I am curious just how many bits of floating point you need to be able to accurately define that)
01:44
<&McMartin>
Oh hey, there's an implementation of the fastest algo for this in Python (which has unlimited precision rationals) on Wiki
01:44
<&McMartin>
https://en.wikipedia.org/wiki/Chudnovsky_algorithm
01:44
<&McMartin>
Unlimited-precision rational is probably the way to go here over any kind of IEEE 754-like floating point system
01:45
<@celticminstrel>
IEEE doesn't even define anything larger than 128 bits.
01:45
<&McMartin>
That said, as you'd expect, *in* IEEE 754 128-bit isn't quite enough to hold it right
01:45
<&McMartin>
I see an Octuple-Precision table here on Wiki.
01:45
<@celticminstrel>
Oh, really? When did that appear?
01:45
<&McMartin>
Though it also notes that it is an interchange format, not a "basic" one.
01:46
<@celticminstrel>
I guess that would be 256 bits.
01:46
<&McMartin>
Yep
01:46
<@celticminstrel>
Which is probably a lot more than the minimum needed for this representation of pi.
01:46
<&McMartin>
1 sign bit, 19 exponent bits, 236 bits of mantissa
01:46
<&McMartin>
(237, but you never store the first 1)
01:47
<&McMartin>
Looks like it was added in 2008.
01:47
<@celticminstrel>
Is there like, a formule to define an IEEE-style number in any given number of bytes?
01:47
<@Reiv>
McMartin: Unlimited precision rationals being the ones where you just type out the number then note where the exponent goes right
01:47
<@Reiv>
ah yes
01:47
<@Reiv>
You know you just taught me a thing with that line there McM
01:48
<@Reiv>
I always wondered why so /many/ of our columns in our Oracle codebase at the old job were set to Magnitude 19
01:48
<@Reiv>
Like, it was sure as hell /enough/, we were tracking mere dollar values in them like terrible people
01:48
<@Reiv>
But I did wonder why it was /nineteen/
01:50
<&McMartin>
I would hesitate to conclude that based on this :)
01:51
<@Reiv>
I would not!
01:51
<@Reiv>
But that is because I knew the devs had a habit of being very precise in their laziness~
01:52
<@Reiv>
We'd see a /lot/ of, uh, default data structures
01:53
<@Reiv>
This wasn't inherently bad
01:53
<@Reiv>
But it was noticable
01:53
<@Reiv>
Once you knew what you were looking for, as it were
01:53
<@Reiv>
Normally you wouldn't think twice about it, but in databases 'data type' is a huge deal so you're always checking, and that's when it starts to stand out
01:58
<&McMartin>
So, the reason I would be skeptical is because The Laziest is 11-bit.
01:59
<&McMartin>
That's "double precision", the 64-bit standard that has been hardware-standard since like 1985 and still is today
02:00
<&McMartin>
(it is also the one that, e.g. Perl, Java, and JavaScript have specified in their specifications, with a handful of caveats)
02:02
<@Reiv>
yeah no I hn
02:02
<@Reiv>
They avoided floating points as much as possible in the system
02:02
<@Reiv>
like the plague
02:02
<@Reiv>
also note this is a database
02:09
<@Reiv>
Oracle FLOAT is a subtype of NUMBER, and NUMBER does the 19 decimals of precision thing if you let it by default
02:09
<@Reiv>
Which is fine but you really only needed, like, three, and would have been more efficient in space if you did, but whatevs, I guess
02:10
<@Reiv>
(Databases: The only time in modern programming you should probably still be worrying about how many bits your data fits into.)
02:10
<&McMartin>
OK, that is coincidental.
02:11
<&McMartin>
Because the 19 up there isn't "19 decimals of precision"
02:11
<&McMartin>
It's "when writing in scientific notation, you can use exponents up to about half a million"
02:12
<@Reiv>
oh
02:12
<@Reiv>
lol, alrighty then!
02:12
<@Reiv>
oh, yes, it comes back to me now
02:13
<@Reiv>
You had NUMBER(Precision,scale)
02:13
<@Reiv>
Scale seemed to eternally be set to 19, which meant a number could be stored up to 19decimal places
02:13
<@Reiv>
Which was awfully specific to be a default, but hey ho
03:58 Degi [Degi@Nightstar-b8c30a.dyn.telefonica.de] has quit [Operation timed out]
04:01 Degi [Degi@Nightstar-hcpcro.dyn.telefonica.de] has joined #code
05:00 macdjord|dance is now known as macdjord|slep
05:03 Vorntastic [uid293981@Nightstar-h2b233.irccloud.com] has joined #code
05:03 mode/#code [+qo Vorntastic Vorntastic] by ChanServ
05:22 himi [sjjf@Nightstar-1drtbs.anu.edu.au] has quit [Ping timeout: 121 seconds]
05:43 Derakon is now known as Derakon[AFK]
05:59 celticminstrel [celticminst@Nightstar-0p84vo.dsl.bell.ca] has quit [[NS] Quit: And lo! The computer falls into a deep sleep, to awake again some other day!]
06:05 SmithKurosaki [uid215460@Nightstar-ed0oqj.irccloud.com] has quit [[NS] Quit: Connection closed for inactivity]
08:16 himi [sjjf@Nightstar-v37cpe.internode.on.net] has joined #code
08:16 mode/#code [+o himi] by ChanServ
10:22 VirusJTG [VirusJTG@Nightstar-42s.jso.104.208.IP] has quit [Connection closed]
10:22 VirusJTG [VirusJTG@Nightstar-42s.jso.104.208.IP] has joined #code
10:22 mode/#code [+ao VirusJTG VirusJTG] by ChanServ
10:49
<@sshine>
I just found an 18 year old logic bug in the code.
10:49
<@sshine>
at work, that is.
10:49
<@sshine>
return 2 unless @$l1 > 0 and @$l2 > 0;
10:49
<@sshine>
"and" is like "&&" except it has a very low precedence. so that reads as: (return 2 unless @$l1 > 0) and @$l2 > 0;
10:52
<@sshine>
so, just in case the universe wanted to know if @$l2 was empty, it gets computed once in a while.
10:53
<~Vorntastic>
Neat
10:53 Emmy [Emmy@Nightstar-9p7hb1.direct-adsl.nl] has joined #code
10:54
<@sshine>
this is about the most unserious piece of software I've spent time on.
10:55
<@sshine>
I should get this done now.
10:58
<@sshine>
comment above this function is excellent scare tactic: When the metric for a list is calculated we use a technique from vector calculus [...]
11:33
< Emmy>
eeek
11:36
<@sshine>
yeah, better not challenge the vector calculus gods
11:39
<@sshine>
interestingly, the way it calculates this metric distance works even though I change the vector entries from integers to strings.
11:39
<@sshine>
most often changing the type in Perl programs has scary side-effects.
12:16 Kindamoody[zZz] is now known as Kindamoody
12:24 macdjord [macdjord@Nightstar-rslo4b.mc.videotron.ca] has joined #code
12:24 mode/#code [+o macdjord] by ChanServ
12:26 macdjord|slep [macdjord@Nightstar-rslo4b.mc.videotron.ca] has quit [Ping timeout: 121 seconds]
12:41 macdjord [macdjord@Nightstar-rslo4b.mc.videotron.ca] has quit [Ping timeout: 121 seconds]
12:44 macdjord [macdjord@Nightstar-rslo4b.mc.videotron.ca] has joined #code
12:44 mode/#code [+o macdjord] by ChanServ
12:48 mac [macdjord@Nightstar-rslo4b.mc.videotron.ca] has joined #code
12:48 mode/#code [+o mac] by ChanServ
12:51 macdjord [macdjord@Nightstar-rslo4b.mc.videotron.ca] has quit [Ping timeout: 121 seconds]
13:13 macdjord|slep [macdjord@Nightstar-rslo4b.mc.videotron.ca] has joined #code
13:13 mode/#code [+o macdjord|slep] by ChanServ
13:15 mac [macdjord@Nightstar-rslo4b.mc.videotron.ca] has quit [Ping timeout: 121 seconds]
13:57 celticminstrel [celticminst@Nightstar-0p84vo.dsl.bell.ca] has joined #code
13:57 mode/#code [+o celticminstrel] by ChanServ
14:10 celticminstrel is now known as celmin|away
15:03 Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has joined #code
15:03 mode/#code [+qo Vornicus Vornicus] by ChanServ
16:43 Vorntastic [uid293981@Nightstar-h2b233.irccloud.com] has quit [[NS] Quit: Connection closed for inactivity]
16:52 * McMartin once again encounters the open-source designation "free-as-in-puppy"
16:53 McMartin [mcmartin@Nightstar-c25omi.ca.comcast.net] has quit [Connection closed]
16:54
<@TheWatcher>
... wat
16:56
< ErikMesoy>
Costs maintenance and attention?
17:00
<~Vornicus>
Sounds about right
17:29 macdjord|slep is now known as macdjord
17:30
<@macdjord>
TheWatcher: 'We're actively /trying/ to give this away please, we have way too many'?
17:32
<~Vornicus>
that's free as in scrap.
17:37
<@macdjord>
Reiv: Re: Pi: "To the width of a hydrogen atom in the entire universe" is only 39 digits if your equation only uses pi multiplicatively. If you have pi^2 as a factor, or worse pi in an exponent, then you might need more accuracy.
17:38 Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has quit [Connection closed]
18:02 mac [macdjord@Nightstar-rslo4b.mc.videotron.ca] has joined #code
18:02 mode/#code [+o mac] by ChanServ
18:05 macdjord [macdjord@Nightstar-rslo4b.mc.videotron.ca] has quit [Ping timeout: 121 seconds]
18:17 McMartin [mcmartin@Nightstar-c25omi.ca.comcast.net] has joined #code
18:17 mode/#code [+ao McMartin McMartin] by ChanServ
18:36 macdjord [macdjord@Nightstar-rslo4b.mc.videotron.ca] has joined #code
18:36 mode/#code [+o macdjord] by ChanServ
18:38 mac [macdjord@Nightstar-rslo4b.mc.videotron.ca] has quit [Ping timeout: 121 seconds]
19:48
<@Reiv>
how often does pi come up as an exponent in measurement
20:17
< ErikMesoy>
Reiv: Variations on e^pi, mostly. https://en.wikipedia.org/wiki/Gelfond%27s_constant
20:29
<@Reiv>
Okay, that's fair
20:29
<@Reiv>
I mean, it's not needed for /measurement/ at that point, but still has a use in theoretical math, I suppose
20:29
<@Reiv>
(Unless it turns out we totally use the stuff for obscure physics or the like, but)
20:52 himi [sjjf@Nightstar-v37cpe.internode.on.net] has quit [Ping timeout: 121 seconds]
21:22 Derakon[AFK] is now known as Derakon
22:54 himi [sjjf@Nightstar-1drtbs.anu.edu.au] has joined #code
22:54 mode/#code [+o himi] by ChanServ
23:14 Emmy [Emmy@Nightstar-9p7hb1.direct-adsl.nl] has quit [Ping timeout: 121 seconds]
23:46 Kindamoody is now known as Kindamoody[zZz]
--- Log closed Fri Jan 31 00:00:42 2020
code logs -> 2020 -> Thu, 30 Jan 2020< code.20200129.log - code.20200131.log >

[ Latest log file ]