Sebastian Markbåge
Sebastian Markbåge
I thought I'd open the discussion around move the JSX extension to the ESTree repo. It could go into an experimental extensions section since it is not part of the...
Release notes: none _This build on top of #2539. Easier to review the individual commits at the end._ This introduces the concept of an object template whose identity is known...
Release notes: adds externalTemplate modeling option for template objects Currently we emit generator entries when we mutate intrinsic objects. When we create abstract objects with a template, we end up...
_There are still a few more little things to fix before this can work._ There is no practical difference between an abstract object with a single object in its values...
This lets us Prepack to native machine code or WebAssembly - without a JS runtime. Prepack knows a lot about a program that it can evaluate. It is also highly...
```js (function() { let a = global.__abstract ? __makeSimple(__abstract("array", "[1, 2, 3]")) : [1, 2, 3]; let i = 0; var o = {x:0}; do { i++; o.x = i;...
```js let a = global.__abstract ? __makeSimple(__abstract("array", "[1, 2, 3]")) : [1, 2, 3]; let i = 0; var o = {x:0}; do { i++; o[Symbol.iterator] = i; } while...
I find the mechanism to define a widened property as a value a bit awkward. It has many special cases. It leads to some tricky serialization issues when we try...
```js var n = __abstract('number', '(2)'); var i = 0; var obj = {0:'a', 1:'b', 2:'c'}; __makePartial(obj); __makeSimple(obj); do { result = obj['' + i]; i++; } while (i <...
```js var n = __abstract('number', '(3)'); var i = 0; var ii = 0; var obj = {} do { obj[i] = 5; obj[ii] = 6; obj[i + 1000] =...