00:00
<rkirsling>
ljharb: ohhh I see
00:00
<devsnek>
shu: almost done with the CL
00:00
<devsnek>
just working on a weird assertion failure
00:01
<shu>
if it doesn't complicate the method significantly, probably fine
01:43
<bakkot_>
jmdyck: does your type analysis currently distinguish between Number values and mathematical values?
01:43
<jmdyck>
urg, that's such a mess
01:43
<bakkot_>
currently, yes
01:43
<bakkot_>
I am reviewing https://github.com/tc39/ecma262/pull/2007 and having the assistance of automated tooling would go a long way
01:43
<bakkot_>
we mix them up in a bunch of places and this PR fixes some but not all of them
01:44
<jmdyck>
it tries to, but has to give up a lot of the time
01:46
<jmdyck>
i suppose i could make a branch that tries to be strict and only targets 2007 for now
01:47
<jmdyck>
What sort of timeline are you looking at?
01:48
<bakkot_>
Eh, there's not exactly any hard deadlines, but this is our highest priority other than the stage 4 stuff and normative PRs, since it touches a bunch of things and keeping it rebased will be a pain
01:48
<bakkot_>
I ask because I am currently doing the review; I'm not going to finish it today or anything, I'm just catching a bunch of things by doing manual type checking
01:49
<bakkot_>
and it occurred to me that a computer would be better at this
01:50
<jmdyck>
wup
01:50
<jmdyck>
yup
04:08
<bendtherules>
I was looking at Array species and it talks about realm records. Is realm related to iframes in browser? Like 2 objects from 2 diff iframe means diff realm?
04:19
<ljharb>
bendtherules: basically yeah, an iframe is a different realm
04:21
<bendtherules>
Ok. And is it also possible in other common environments, like node?
04:22
<devsnek>
yep
04:22
<devsnek>
node has "contexts"
04:22
<devsnek>
https://nodejs.org/api/vm.html
19:49
<devsnek>
being able to use declaration in torque reminds me how much i miss it in js
19:49
<devsnek>
we should definitely add it
19:52
<bakkot_>
devsnek did you... miss a word there?
19:53
<devsnek>
redeclaration*
19:53
<bakkot_>
as in like `var a; var a;`?
19:53
<devsnek>
yeah but with lexical declarations too
19:53
<ryzokuken>
would the second `a` shadow the old one?
19:54
<ryzokuken>
or just reset the ref, so that it can be GC'ed?
19:55
<devsnek>
basically just modifies the existing binding
19:55
<devsnek>
there are some nice things you can do with that though
19:56
<devsnek>
for example `let { a, b } = c()` vs `({ a, b } = c())``
19:56
<devsnek>
ts could use it for type rebinding `let a: T = foo(); let a: U = bar(a);`
20:03
<ryzokuken>
I see
20:04
<devsnek>
rust has this too
20:04
<devsnek>
its very nice