-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
zig
General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Is your sense also that this is the root cause of Bun's outstanding speed? Node.js is written in C++ which also requires low-level control over memory.
Is there something about C++ that makes it less well-suited for what Bun does than Zig?
Or is the problem with Node.js that it relies too much on JavaScript and Python alongside C++ in hot paths?[2]
[1] https://bun.sh/
[2] https://github.com/nodejs/node
Civet just added a bun loader https://github.com/DanielXMoore/Civet/blob/main/source/bun-c...
I'm curious to hear your thoughts about Bun/Civet integration to explore improvements to the language frontend as well as the language backend?
You might be thinking of io.js, which was a fork almost entirely due to politics. The advisory board came out of it, and a push for semver, but it started here: https://github.com/joyent/libuv/commit/804d40ee14dc0f82c482d...
Scientific performance critical code isn't written in Python, it is written in C/C++ which is used by Python. Python in ML usually merely describes the calculation not unlike React describes the DOM that should be displayed in the browser.
JavaScript was never really known for admin or file manipulation (Perl replacement), so that was what probably established the dominant ecosystem for Python. I also don't think the runtime overhead is applicable due to native C/C++ part, and download time doesn't have to be bad since modules can be split just like in JavaScript ecosystem today. For an AI app, the model inference weights might be larger than the compiled WASM code itself. However, I'd agree with you that porting legacy apps might not be possible without something close to a rewrite.
There is a reasonable chance that once WASM GC is implemented, then direct DOM access will be provided [1], which I believe could pretty much halt interest in new JavaScript development for web frameworks overnight. WASM is the reincarnation of the Java Applet, but better. And a more typed language like Go or Dart could become the most widely used programming language. Either compile it to WASM as plugin for something like the browser, compile to JavaScript for "legacy browsers", or to native code for a standalone app. There are probably a handful of developers already assuming this and trying to write a version of React running in WASM already.
[1] https://github.com/WebAssembly/design/blob/main/Web.md#gc
You might be interested in @devongovett's `glob_match` library (written in Rust): https://github.com/devongovett/glob-match
Really appreciating bun's ability to set custom WebSocket headers.
Incidentally, what's up with the resistance against this from the standards maintainers? [1]
The request exists since 2017, there are tons of use cases and developer interest, but implementation is refused on technicalities. What gives?
[1] https://github.com/whatwg/websockets/issues/16
Is your sense also that this is the root cause of Bun's outstanding speed? Node.js is written in C++ which also requires low-level control over memory.
Is there something about C++ that makes it less well-suited for what Bun does than Zig?
Or is the problem with Node.js that it relies too much on JavaScript and Python alongside C++ in hot paths?[2]
[1] https://bun.sh/
[2] https://github.com/nodejs/node
Related posts
-
Building Your First Browser Game with Three.js and React: Part 1 - Getting Started
-
WebSockets com Socket.io: Criando Aplicações Real-Time com Node.js
-
Day 2: Setting Up Angular Development Environment
-
Part 2: Setting Up Your Node.js Environment
-
Announcing Node.js 22.0.0: What’s New and Why It Matters