Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
azakai
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
9 ms
·
121.
▲
by
azakai
2y ago
You can open a large file using a File or Blob, which do not store all the data in memory at once. Then you can read slices from it. That even works synchronously, in Workers: https://developer.mozilla.org/en-US/docs&#x
122.
▲
by
azakai
2y ago
A related example is image editing software like Adobe Photoshop on the Web. Large images can require more then 4GB in many cases.
123.
▲
by
azakai
2y ago
Interesting, thanks! And good luck with your project.
124.
▲
by
azakai
2y ago
There is also Wasmnizer-ts, which compiles TypeScript to WasmGC: https://github.com/web-devkits/Wasmnizer-ts How does Jaws compare to that?
125.
▲
by
azakai
2y ago
Sharing GC data between wasm modules is supported, yes. You just need to define the types identically on both sides, and things work.
126.
▲
by
azakai
2y ago
They address the possibility of memorization in the PDF: > This effect cannot be explained by memorization since < 1.41% of the initial puzzle board states appear in our training set.
127.
▲
by
azakai
2y ago
> I couldn't figure out a way to to get emscripten wasm code to play nice with wasm32-unknown-unknown There is good news there, some people plan to get Emscripten and Rust to work well together in Wasm: https://github.com
128.
▲
by
azakai
2y ago
They also support MicroPython as an option now and not just Pyodide, https://pyscript.net/tech-preview/micropython/about.html In fact the main PyScript site uses MicroPython now, I see in the dev console (micropyt
129.
▲
by
azakai
2y ago
Direct link to playable wasm version: https://phoboslab.org/high_impact/biolab/
130.
▲
by
azakai
2y ago
I'm not sure there is a clear separation between applying heuristics and searching a space. Often in compilers you search a subset of a space using heuristics, and you can adjust those to control how much of the space you cover. For ex
131.
▲
by
azakai
2y ago
(The post has since been updated to clarify that. Yeah, it was a little confusing before.)
132.
▲
by
azakai
2y ago
Adding a comment here to note that the post was just updated to clarify that: https://web.dev/case-studies/google-sheets-wasmgc#the_final_... > The final result > After all these optimizations, the final WasmGC v
133.
▲
by
azakai
2y ago
For current support, see https://webassembly.org/features/ Chrome (and other Chromium-based browsers) and Firefox have had WasmGC enabled for a few releases now. But Safari doesn't yet last I heard. Sheets can ser
134.
▲
by
azakai
2y ago
Yeah, exactly. The initial prototype turned out to be quite slow - a lot of optimizations are needed to be fast. The version as of now is 4x faster than that initial prototype, and 2x faster than the JS version. And we are working to make i
135.
▲
by
azakai
2y ago
That's my name, yeah, but I'm just one of the people involved in WebAssembly's creation.
136.
▲
by
azakai
2y ago
This post might help: https://v8.dev/blog/wasm-gc-porting See in particular the "getting started" section near the end: https://v8.dev/blog/wasm-gc-porting#getting-started At a lower lev
137.
▲
by
azakai
2y ago
Oh, thanks! Yeah, I was involved here on the toolchain side. We did a lot of work on the Binaryen optimizer for WasmGC.
138.
▲
by
azakai
2y ago
Rewriting a large codebase with many years of work behind it to a totally new language is a pretty big task, and often ends up introducing new bugs. But I do agree Java has downsides. A more practical conversion would be to Kotlin. That
139.
▲
by
azakai
2y ago
WasmGC has recently been completed in Firefox, the feature tracking page says since Firefox 120: https://webassembly.org/features/ (hover over the cell for Firefox and Garbage collection). The Firefox people have also
140.
▲
by
azakai
2y ago
Yes, that is correct. It began 2x slower than JS, and ended up 2x faster than JS.
141.
▲
by
azakai
2y ago
The two posts make the most sense together, yeah. I was involved in this work (happy to answer any questions). Overall we started from a large slowdown compared to JS, worked hard, and ended up with a large speedup over JS of around 2x. So
142.
▲
by
azakai
2y ago
The compiler from Java to JS is J2CL: https://github.com/google/j2cl/ And that now includes a Java to WasmGC compiler, called J2Wasm: https://github.com/google/j2cl/blob/master/
143.
▲
by
azakai
2y ago
You're right that LLMs don't have special insight into themselves, but on the other hand it is reasonable to assume they have been trained in order to properly describe themselves. That description isn't from insight but from
144.
▲
by
azakai
2y ago
Funniest real news article I've read in years. > Nathan’s had asked Chestnut for a potential carve-out: Could he represent all other products in the [competing] company’s line, except for its plant-based hot dogs? “And they said no,
145.
▲
by
azakai
2y ago
It is still largely automatic. Some amount of special annotations are needed in all these related approaches. For example, in this article, @CompilationFinal is used in Graal interpreters. (It is possible more annotations are needed in PyPy
146.
▲
by
azakai
2y ago
I'm not familiar enough with Jython, but I do consider applying a tracing JIT to an interpreter as a way to automatically convert an interpreter to an optimizing VM. I suppose if the tracing JIT were very complex and very tailored to a
147.
▲
by
azakai
2y ago
PyPy has experimented with multiple approaches here, yes, but as far as I know they did not abandon the overall approach of automatically converting an interpreter to an optimizing VM, which is what I mentioned. That's more general tha
148.
▲
by
azakai
2y ago
I am a big fan of automatically generating optimizing VMs from interpreters, like Graal (in this article) and also PyPy and others do. But the other approach, of writing a custom JIT for each language, seems much more flexible even if it is
149.
▲
by
azakai
2y ago
It is similar to how much a student learns from working hard to solve a problem versus from being given the final solution. The effort to solve it yourself tends to give a deeper understanding and make it easier to remember. Maybe that'
150.
▲
by
azakai
2y ago
A big advantage of WasmGC is it would allow your binaries to be smaller, since you wouldn't need to bundle an allocator for heap::alloc and free. Kotlin and Java binaries can in some cases be be much smaller than C++ and Rust for that
More ›