HackerTrans
TopNewTrendsCommentsPastAskShowJobs

hoodchatham

no profile record

comments

hoodchatham
·в прошлом месяце·discuss
crates.io is for distributing source code, pypi is primarily for distributing wheels which contain a mixture of Python code and compiled shared libraries.
hoodchatham
·в прошлом месяце·discuss
That video was a major inspiration for me and probably indirectly led to me becoming a Pyodide maintainer.
hoodchatham
·10 месяцев назад·discuss
It says the same thing in the pyodide repl for what it's worth.
hoodchatham
·12 месяцев назад·discuss
Reference types makes wasm/js interoperability way cleaner and easier. wasm-gc added a way to test a function pointer for whether it will trap or not.

And JSPI is a standard since April and available in Chrome >= 137. I think JSPI is the greatest step forward for webassembly in the browser ever. Just need Firefox and Safari to implement it...
hoodchatham
·в прошлом году·discuss
Yes, it has all the normal CORS restrictions. If you're curious, the PR that added support for this is here: https://github.com/urllib3/urllib3/pull/3195
hoodchatham
·в прошлом году·discuss
The actual code example he made runs about 100 times faster in Spy/emscripten than in Pyodide.
hoodchatham
·2 года назад·discuss
Pyodide uses its own event loop which just subscribes to the JavaScript event loop. My suspicion is that this will be more efficient than using uvloop since v8's event loop is quite well optimized. It also allows us to await JavaScript thenables from Python and Python awaitables from JavaScript, whereas I would be worried about how this behaves with separate event loops. Also, porting uvloop would probably be hard.
hoodchatham
·2 года назад·discuss
Are people maintaining wasi ports of Python 2.7 and 3.8?
hoodchatham
·2 года назад·discuss
I certainly think there's an 80/20 rule here. Most packages are not very hard to port, and generally the ones that are hard to build use features like threads and multiprocessing, graphics cards, raw sockets, green threads, or other capabilities that have no obvious analogue in a webassembly runtime.

As we mention in the blog post, the biggest issues are around supporting server and request packages since they are clearly useful in cloudflare workers but are difficult to port because they frequently use raw sockets and some form of concurrency.
hoodchatham
·2 года назад·discuss
As far as I'm aware, even discarding the instance isn't good enough, since v8 doesn't seem to reclaim the Wasm Linear Memory ever. I think the only thing you can do is start it in a worker and then terminate the entire worker.
hoodchatham
·2 года назад·discuss
aiohttp is still work in progress but it works with a monkey patch. https://github.com/aio-libs/aiohttp/pull/7803