HN Simulatornew | past | comments | lists | submit | AbuAssar's commentslogin

According to voidzero, this port is up to 8x faster than TS 7.0 & ~70% less memory.

Microsoft should seriously consider porting typescript to rust at this point


I'm pretty sure they already considered it before settling on Go. Allegedly, they chose Go because it was easier to translate to.

That was pre-AI. Ironically if they waited just another year they could've done this port directly to Rust themselves.

Not really because this port is based on the Go version. I doubt it would be as easy for an LLM to port the TS 6 codebase.

The Go version was a line by line port of the TypeScript version.

after 7.0, tsgo version is The canonical version. so, there is no other choice here

I wonder how more frustrating is it to work on the compiler in rust vs go.

IIRC at the time of the port to go they wanted fast test and compile time, of course it's a different era now.


That's interesting. A go version to iterate on the code and a rust version to run the code might be an optimal split here.

Up to 8x faster seems kinda of a crazy claim. 8x faster at what?! TS 7.0 is reasonably well optimized and compiles VSCode in well under 10 seconds..

This can type check and compile VSCode in less than a second?


For VSCode: 4x speedup vs TS 7, 3x vs TS 7.1

Yes, it's in the article.

Well, no, not exactly. The article says vscode is compiled in 5.28s in typescript 7.1 (nightly), and in 1.73s in tsrs (dev), which is 3x faster.

3x isn't so wild but still very impressive.

Idk. Apart from the fact that benchmarks are generally of questionable value, what's the point? Is the TS compiler unbearably slow?

They say the point in the article - WASM

(Not sure if this could be a genuine remark or is more of a joke, but)

Why not vibecode a Go -> WASM cross-compiler, then?


Go needs a garbage collector while rust doesn’t.

Wasm comes with a garbage collector though, no? So a garbage collected language that offloads all memory management to the runtime would actually be better than one that ignored the platform and does its own stuff.

Wasm GC is not an object-level GC yet. It's still a very low level bit buffer GC. It's closer to the memory page management of an operating system than anything like JS's own GC.

The JVM alone has, what, 4 different modern GCs now? Garbage collectors aren't really universal, so they can pose different issues for different languages.

Apparently there were some design issues (raised and ignored) that made it unusable for many languages.

Ignored is a little unfair to the Wasm committee, the Wasm GC is constrained by what is possible to ship in existing Wasm runtimes and the stuff needed by many languages is way beyond what those existing runtimes have available to them.

I think it made sense for them to compromise, at least on the initial version of Wasm GC, to get it out the door. I say this as someone who wants the features that got left out, like interior references :)


Yes, of course, but couldn’t you have/make one in WASM too? (I have no clue how memory is allocated there)

Yes, and when you ship a Go WASM package it is already included. But it has a certain impedence mismatch with WASM since it is rolling its own stuff that WASM can't see, I believe the performance is a bit less good than it could be, and it results in very large WASM packages for small amounts of code.

Since a typescript compiler isn't "a small amount of code", you'd have to see specific numbers on the final WASM assembly size to know how relevant that is. I'd expect well-written Rust code to beat well-written Go code on final assembly size by some amount, which may or may not be relevant to any particular use case (since in a lot of cases one "couple dozen megabytes" is much the same as another when it really gets down to it, it's not like Go is going to be emitting gigabytes to Rust's hundreds of kilobytes or something). However I can't judge what AI-written Rust code versus well-written Go code would come out as. AI is not terribly good at being concise (he said, while writing this post between prompts fighting with an AI to make a PR much more concise than it currently is).


You already can run the Go tsc in WASM using mature tools; but it further amplifies the memory and performance difference between the Rust version (which maps more cleanly onto WASM's design).

1. Porting typescript is made easier by the enormous test suite they can copy for verification.

2. They're doing this for workers, so with a systems-level language, there's a much higher potential for CPU and memory savings (an order of magnitude on this first pass, apparently). Driving their compute costs down is very revenue-efficient at this scale.


For workers, you only need to strip the types. There's no need to do the expensive checking.

Did you read TFA?

> Just a few weeks ago we announced supporting native Rust in Workers with the new Emscripten target for wasm-bindgen. When you run entire software build and deployment systems in tight loops on Workers, the benefits of a small memory footprint pay off quickly.


The success of "modern" CLI tools written in Rust (uv, oxlint, turbopack) show there's a clear demand for faster tools in general.

Also, faster feedback loop is crucial for AIs, so I guess this makes sense.


What they show is that JavaScript should never have left the browser into the backend.

Don't rewrite into Rust, Go, Java, .NET, Zig, Odin, whatever.

Start with them directly.


Faster feedback loops almost always deliver improvements elsewhere.

> Is the TS compiler unbearably slow?

It's not. Even the JS compiler is still fast enough for many projects given the single core improvements in hardware (eg Apple Silicon).


> Overall, our Rust rewrite and following performance hillclimbing has made Prime Agent significantly faster and more resource efficient. With time to input roughly 14x faster than TypeScript and using over 80% less memory after startup

very nice outcome of this port


> brew install zerobrewhq/zerobrew/zerobrew

Bruh…


Very zero


Move as much js code to compiled wasm


Amazon still refuses to give kindle proper model numbers, now we have this ridicules (new Kindle) and (Kindle Paperwhite newest model).


Pretty similar to Apple.


> Argon agents are working on migrating C/C++ codebases to Rust across Google

this is big news, mass migration from C/C++ to rust with the help of AI agents will be the norm from now on!


Is a 2-year-old company worth 8 billion USD?


The past couple of years have really driven home the fact that a company is worth what someone will pay for it


And that "Attention is all you need" applies to financial markets as well.


just like NFTs :)


... just like real estate, a willing buyer -- and a willing seller


A name like Fei-Fei Li is probably worth a chunk of that (I'm not saying I agree, but that's probably the thinking).

It's a public bet, not a valuation based on product economics. Billion dollar bets follow different rules (and I'm not saying it's sane).


> A name like Fei-Fei Li is probably worth a chunk of that

You're right. Her bio writes like an OP self-insert character's [1].

[1] https://en.wikipedia.org/wiki/Fei-Fei_Li


AMD grew their revenue 50% last quarter from the year prior, for 11.5B in revenue. If this team can help continue that or grow that then yes - the amount of money involved here is insane.


Could be if they are pre-revenue.


They're a potential pure play


They’re bound to announce an appliance soon.


Honestly, I think this 'billion' number is also just the ball park for companies you need to pay if you want to buy them.

OpenRouter was sold for 7.5 Billion.

Lets just accept, that these people don't evaluate a company by value but by magic market "what is a sum someone needs to pay for buying a company and what company is somehow worth it to actually buy for this type of money but more in a sense of adding this to your portfolio"


Probably not what was paid though. Just an optimistic revenue projection based on early growth.


just ditch claude.md and use the standardised agents.md already.


the gui homebrew manager is a nice addition!

it can be installed with:

brew install homebrew-app


why democracy don't apply to corporations and force them to change the CEO every 4 years with 2 terms at most for re election?


Guidelines | FAQ | Lists | API | Security | DMCA | Apply to YC | Contact

Search: