Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by iansmith_hn on Monday July 27, 2026 @05:23AM
(#49067040)
Agreed. Along those same lines, their startup time claim "faster than go", gives me concern because the slowest part of go startup is the various GC-related initializations. If they are doing GC, then you would assume their times would be broadly similar.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by satvikpendem on Sunday July 26, 2026 @10:28PM
(#49064557)
A lot of people are trying this now with AI, a native TypeScript compiler, for example https://github.com/PerryTS/pry. It's a compelling value proposition, TypeScript is already well typed and barring a few cases it can be turned into machine code without a JS runtime.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by acmnrs on Sunday July 26, 2026 @10:34PM
(#49064594)
Porforr<https://porffor.dev> has been working towards the same goal for a while. The creator, CanadaHonk<https://honk.foo>, is extremely talented and the project still only passes ~68% of Test262. I'm more than a little suspicious of how Vercel has made so much progress so fast, unless I'm misunderstanding the scope of this project.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by acmnrs on Sunday July 26, 2026 @10:43PM
(#49064644)
That makes sense. It also seems like this uses a lot more dependencies and tiers of compilation whereas Porforr is trying to do everything from scratch.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by queenkjuul on Monday July 27, 2026 @05:23AM
(#49067041)
I don't actually see any dependencies other than node and typescript (and the optional quickjs package) (maybe they inlined dependencies? But the package.json files don't indicate any npm dependencies)
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by bbor on Sunday July 26, 2026 @11:06PM
(#49064770)
Putting aside the whole “team of professionals putting out a product vs solo dev fine tuning their opus” of it all:
Can you clarify what about the architecture is ‘idiotic’? Not trying to catch you or demand a defense, just looking for a vague description. I don’t even know how to start examining the architecture of something like this.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by simonw on Sunday July 26, 2026 @11:20PM
(#49064840)
As far as I can tell they pull in QuickJS (actually quickjs-ng) only in the case where the program has untyped dependencies that still need to be run by an interpreter - and they chose that library because it's pretty small (620KB). Did I miss something, are they using it outside of that purpose?
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by simonw on Sunday July 26, 2026 @11:43PM
(#49064971)
They won't have untyped dependencies for situations where someone used Scriptc as a way to build a fast binary executable for some custom-written TypeScript, which was the first use-case that came to mind for me.
Being able to build small, fast binaries without writing them in C or Rust - if you're already fluent in TypeScript - seems like a valuable capability.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by pizlonator on Sunday July 26, 2026 @11:57PM
(#49065056)
Yes, being able to build small and fast binaries in TS would be a valuable capability, which is why basically all of us who work in this space have thought of this idea and rejected it after going deep on it. This isn’t a new idea.
CanadaHonk has gotten further than the rest of us. It’s surprising and impressive.
You’re only replying to the quickjs issue I raised, but it’s not the only issue. Their approach to numbers is broken. Their approach to measurement is broken. The quickjs thing raises another red flag: it suggests to me that they are using reference counting, not GC. That’s guaranteed to make them too slow to be useful. (If they weren’t using RC, then they’d have a hard time on the boundary to quickjs.)
As to the `any` issue, let me explain it in a way you’ll appreciate. I asked Claude how likely it is that TS code uses any, and it found:
- 79.5% of TS repos use any explicitly. So, about 4/5 chance that newly written dep-free TS code will use it.
- the explicit any type is about as common as Boolean and void.
- a third of inferred types are any. That’s huge.
So, if you don’t believe me, then at least believe Claude: any is a super common type, so they will be falling off into quickjs a lot.
Oh, and in case it isn’t clear, quickjs-ng is no better than quickjs. They’re the same thing for the purpose of perf
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by slopinthebag on Monday July 27, 2026 @12:33AM
(#49065231)
If you’re writing Typescript with zero dependencies and trying to target native I feel like it makes more sense to write it in a different language like Rust or Go. The main reason for this I think is getting cheap perf wins by running existing code natively.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by queenkjuul on Monday July 27, 2026 @05:43AM
(#49067186)
Personally i can kind of see a use case here. I've shipped some simple server side packages as a "compiled" Node single executable written in TS, but you're stuck with the big overhead of Node.
I've just been teaching myself Go, also a single binary but without the overhead. But in Go i miss the expressiveness of the TS type system sometimes.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by torginus on Monday July 27, 2026 @04:31AM
(#49066670)
Devil's advocate - this is for the backend. You get to control your dependencies there, and I'd say Vercel controls its own stack, so they can replace deps as they go by submitting patches/slopforking projects to remove incompatible features.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by jeswin on Monday July 27, 2026 @06:50AM
(#49067667)
Just randomly:
1. TS only has a "number" type. But what type of number is it? This is doable safely via keywords (or known markers), or sometimes via analysis, but I couldn't find it in the README.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by homebrewer on Monday July 27, 2026 @01:51AM
(#49065601)
Christ. Imagine if bridges, skyscrapers, dams, cars, airplanes were designed and built like that.
I vibeslopped thousands of pages of blueprints, nobody reviewed them, but another team of digital monkeys with the intellect of an ant have already built the bridge, and it seems to not have collapsed yet, so we're already directing traffic there.
I can't imagine actual engineers feeling anything but deepest contempt for this industry.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by satvikpendem on Monday July 27, 2026 @02:02AM
(#49065660)
"Actual engineers" don't really care about software engineering, much less a strong emotion at all like the "deepest contempt" and many of them already vibe code today for their work anyway.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by leansensei on Monday July 27, 2026 @03:21AM
(#49066118)
Oh no, we do, because the software world has been abusing what engineering means for decades, in order to inflate job titles. Most people are programmers, not software engineers, and that's OK.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by daishi55 on Monday July 27, 2026 @07:33AM
(#49068047)
What we do is absolutely engineering, there’s just a lot less credentialing upfront and rigor before something is released, because usually people’s lives do not depend on it and it’s easy to release updates.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by WorldMaker on Monday July 27, 2026 @02:01PM
(#49073329)
The credentials and rigor are what Professional Engineering is supposed to include. The credentials help give bite to Ethics Boards and other tools used to keep the entire profession honest and safe. The rigor is supposed to include things like making sure that you are solving the right problems.
Many people's lives do depend on software today. Insurance software dictates who gets treatment and who doesn't; that's real lives at stake. Finance software controls access to things like food and shelter; that's real lives at stake. Firmware in prosthetics and diabetic injectors and so on and so forth. Software runs the world, we pat ourselves on the back saying, but forget the world is full of real lives.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by WorldMaker on Tuesday July 28, 2026 @01:08PM
(#49086927)
Sure, I think many of us are doing the best engineering work that we can given the industry situation. I've also seen so many of my peers, some of our brightest minds, waste their careers on stuff that a proper Ethics Board might stop or at least ameliorate. I can work to be the best engineer I can be and still wish we were an industry that actually respected engineering, not just used the title like a party favor that has no inherent meaning.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by satvikpendem on Monday July 27, 2026 @12:09PM
(#49071633)
Maybe you're an outlier seeing as you're even on this forum. Most other non software engineers I know do not give a single thought about "title inflation," it does not even register in their minds as a topic to think about.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by WorldMaker on Monday July 27, 2026 @02:05PM
(#49073380)
My resume includes a bunch of time at a primarily Civil Engineering firm and one of the things I took away from that was also some respect for this "title inflation" issue. That company would not allow any "Engineer" in a title that didn't involve someone without up-to-date PE credentials. Technically my title the whole time there was "Senior Software Developer". I still feel guilty switching my resume back to "Senior Software Engineer" to not have to explain that "gap" to software interviewer who somehow think "Developer" is a less important title than "Engineer" and don't understand title inflation in our industry.
(At one point I even debated the value of getting PE credentials at my age for extra leverage in that company.)
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by antonvs on Monday July 27, 2026 @02:41AM
(#49065886)
> already built the bridge, and it seems to not have collapsed yet, so we're already directing traffic there.
“Actual” engineering went through a phase where bridges and other structures did collapse due to structural flaws - it’s not like they magically figured out ahead of time how to avoid that.
Now, they can build structures that are some specified tolerance away from collapsing, but that’s only the case because the edges of what was possible were explored.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by sheept on Sunday July 26, 2026 @10:50PM
(#49064680)
One of the strengths of TypeScript besides its expressiveness is that it's compatible with the massive npm ecosystem. Most packages only ship untyped JavaScript with type declarations defining the interface,[0] so realistically you'd still need a JavaScript engine if you use any packages.
But if you're starting from scratch and know you won't be using any npm packages, you might as well use AssemblyScript.[2]
[0]: Publishing packages in TypeScript is explicitly discouraged by Node[1]. TypeScript isn't backwards compatible even in minor releases, and its compiler settings aren't portable for packages.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by simonw on Sunday July 26, 2026 @10:54PM
(#49064696)
> so realistically you'd still need a JavaScript engine if you use any packages.
Looks like Scriptc's solution to that problem is that it can optionally bundle a 620KB quickjs-ng JavaScript engine if you have dependencies that need to be executed that way.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by bbor on Sunday July 26, 2026 @11:04PM
(#49064756)
Those are good reasons to publish untyped libraries as a rule, sure. But the contention that those reasons outweigh the value of types kinda boggles the mind, ngl!
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by sroussey on Monday July 27, 2026 @12:46AM
(#49065280)
Publishing a lib as JS with .d.ts type files gives you JS compatibility and TS types for using the lib, but no TS source so no types inside.
I’ve seen people want to publish TS libs but there are issues: TS will type check the libs as well as your project. You can’t tell it to stop just because it’s going inside node modules. And the app may have tighter settings than the library and you will get type errors if your configs were setup differently. It would be interesting to standardize publishing real typescript libs but I haven’t seen it. Maybe deno tried? I haven’t looked.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by skybrian on Monday July 27, 2026 @04:13AM
(#49066550)
When publishing on jsr.io, you upload the TypeScript, and if using Deno, you also download TypeScript (with import statements rewritten.) Having nearly the original source code is better for debugging.
Deno doesn’t type-check external dependencies unless you ask.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by skybrian on Monday July 27, 2026 @12:49PM
(#49072323)
Not sure what you mean, but to expand on what I wrote, JSR rewrites the import statements to include file extensions and full version numbers for package dependencies, so that the imports can be resolved without looking for them in multiple places.
There's a way to download JSR packages and use them with npm too. I don't know what it does in that case.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by asdfsa32 on Sunday July 26, 2026 @11:27PM
(#49064884)
This is like putting lipstick on a pig. Give me an AI written README or tests but actually thoughtful codebase over human written readme but aislop code any day of the month
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by panzi on Sunday July 26, 2026 @11:39PM
(#49064951)
Either it is only accepting a subset of TypeScript, or it is still interpreting the parts that don't have enough types. Given other comments here it sounds like the later.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by CarpeNecopinus on Monday July 27, 2026 @03:05AM
(#49066035)
What it can actually compile is a subset of well-behaved typescript. For anything else it bails out and asks you to ship a JS engine (albeit, not NodeJS) again.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by localhoster on Monday July 27, 2026 @01:10AM
(#49065397)
Funny to see vercel is loosing all credibility under the influence of AI.
Never liked their products anyway, so I believe it's a net positive for the industry :)
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by Twirrim on Monday July 27, 2026 @01:31AM
(#49065499)
This is one of the things that is tiring me out the most. Previously people could have these "ohh shiny" ideas and would lose steam before they could be implemented, especially in areas they're clueless about.
Now people can have these ideas, slop together an awful solution that works at a surface level, maybe, but will never really go places because the foundation is slopped with no party involved actually capable of thinking thing through. But hey we launched something so let's make lots of noise! Oh look, a banana ... Sorry, what were we talking about?
There's an engineer on a team at work that I routinely engage with who slops together stuff so fast his team is basically exhausted all the time. They're stuck picking up a whole stream of pieces of crap because the engineer is incapable of actually doing the hard work of getting things to production because there's more "ohh, shiny" stuff they can spend tokens on, and their leadership aren't stepping in because it all looks terribly productive (it really isn't)
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by jonasdoesthings on Monday July 27, 2026 @03:33AM
(#49066206)
another use case is getting standalone self-contained binaries which are easier to ship.
other projects like claude code use something like `bun build --compile`[^1] for that, which instead of producing a small native binary just bundle the JS runtime into the executable.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by jorisw on Monday July 27, 2026 @03:15AM
(#49066081)
Don’t see how compiling Typescript changes how little Electron cares about the host OS in terms of UI and how it just ships Chromium in order to show any UI at all
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by queenkjuul on Monday July 27, 2026 @10:48PM
(#49078658)
Im 99℅ certain this could not handle an Electron project.
The use case, imo, is to be able to write server side code in familiar TypeScript, then deploy it as a small single native binary (vs Node and Bun which embed the entire 100MB+ runtime when you build a native binary.) Electron for the record ships their own modified Node runtime (not ABI compatible) on top of the whole Chromium renderer
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by JoeDohn on Monday July 27, 2026 @03:10AM
(#49066065)
Vercel sloping it's way to clout again, they do this every month or so, clearly they want to stay in the news and some how credible and relevant.
I can't think of any serious company or project that would use this thing.
P.S: I just checked the contributors list, I have the utmost respect to them (notably simonw), but clearly this code is claude'ish but it is not among the contributor which makes it even more suspect.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by bilalq on Monday July 27, 2026 @09:21AM
(#49069352)
I get so irritated every time Claude says "honest". Anthropic talks about how they specifically engineer for it to be "honest". I'm convinced they're just measuring how many times it says the word honest instead.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by Fredkin on Monday July 27, 2026 @10:58AM
(#49070635)
I have spent a small fortune in tokens trying to get Anthropic models to attempt proofs of things like the irrationality of the Euler-Mascheroni constant, and to make lattice reduction / SVP algorithms that rival SOTA methods like the G6K sieve, and all sorts of difficult frontier problems. It says 'honest' as a euphemism for giving up, because it knows I'm being a crank, and because the training data contains a lot of pessimism.
But I can get around this by first having it write a prompt for itself discussing the problem followed by a rousing speech about never giving in and admitting defeat, but pressing on towards results regardless of how hard matching SOTA results is.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by vessenes on Monday July 27, 2026 @09:43AM
(#49069613)
It's in the constitution, probably a lot. And in the RL training. You can tell Anthropic is really worried about it. I'm interested in just how dishonest the so-called 'helpful only' non-RL model they have floating around internally is. Probably pretty dishonest.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by ljm on Monday July 27, 2026 @01:30PM
(#49072908)
I'm amused by Claude developing its own corporate jargon which, while clearly pulled from the corpus of human language, is quite distinct from the bullshit traded over the boardroom table.
I've had trouble unpacking some of the copy it generates because its default tone of voice is fairly unintuitive. It's almost like it's designed to induce psychosis because it makes you feel like you've discovered something novel.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by WorldMaker on Monday July 27, 2026 @01:52PM
(#49073217)
Bring to mind that old classic cliche about never trust a salesperson who always says the word "honest" or uses the phrases "to be honest" or "honestly" because they are probably lying in that moment.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by pjmlp on Monday July 27, 2026 @08:45AM
(#49068877)
Name one that gives 100% parity to React in their SDK to write extensions.
Not works in some of the cases and you have to implement fetch calls yourself, or some iframe boilerplate and JS glue, everything they expose in React is fully available in Angular, including field extensions, inline previews, sidebar extensions, the whole lot.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by mattstir on Monday July 27, 2026 @09:15AM
(#49069276)
That doesn't change the fact that there is a lot of Angular out there. No one's doubting how useful Next.js may or may not be, it's just a matter of fact that plenty of systems were created before it was available and not everyone has the luxury of rewriting their entire product.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by shimman on Monday July 27, 2026 @12:35PM
(#49072076)
I'll be honest I have never heard of this nor do I understand why it matters. It looks like it's just internal Vercel marketing speak that basically amounts to them desperately trying to build a platform and extract rents off of it.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by pjmlp on Monday July 27, 2026 @12:46PM
(#49072264)
It matters, because React is one of the reasons FE development sucks nowadays, and in many cases there are no alternatives, unless one loves yak shaving for their framework du jour.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by pas on Monday July 27, 2026 @04:03AM
(#49066465)
that doesn't mean much. it has a lot of tests, the architect seems sane, it fits a niche (for example scripts baked into container images don't need full (Node + tsx + esbuild) or Bun/Deno)
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by petesergeant on Monday July 27, 2026 @03:31AM
(#49066189)
Claude-directed code by someone being conscientious and getting involved in the important decisions is going to be better than a whole swathe of existing open-source that was hand-written.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by Perz1val on Monday July 27, 2026 @04:06AM
(#49066487)
Maybe if it's a business level tool made in house with claude vs contracted to a software house in India. Never for a compiler, who even is that person?
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by TeMPOraL on Monday July 27, 2026 @11:15AM
(#49070872)
Yes. But we usually start with a high default, and only recalibrate if there's a specific reason in a given situation (e.g. there's been a specific user or sets of users involved in spreading malware, and software in question could've been targeted).
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by geraldwhen on Monday July 27, 2026 @05:38AM
(#49067155)
“Better”, maybe or maybe not. But there’s an underlying truth here. If you’ve ever LOOKED at the open source libs you use, some of them are very very rough.
Going in to a project hoping to make a change and seeing no tests and spaghetti used to be soul crushing. These days I’d have Claude go refactor and add tests and make pull requests for me to look at to fix it.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by psychoslave on Monday July 27, 2026 @03:44AM
(#49066292)
>But apparently random HN commenters can now overrule an AI ML expert because the code "looks Claude-ish"!
And let’s imagine if LLM bots could do that as well, without any human caring to type the actual messages, just orchestrating the bot fleet. What trust could be we put in such a brainless peace of publications?
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by themgt on Monday July 27, 2026 @04:22AM
(#49066606)
Also the same vibe-code leader as zerolang, "The Programming Language for Agents" which Vercel launched with much fanfare in May, landed 1200 commits and then stopped ~mid-June.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by embedding-shape on Monday July 27, 2026 @04:59AM
(#49066867)
Kind of funny seeing a serious (?), grown up, for-profit company acting the same way as my scatterbrain clinging into this month's fascination. Luckily, most of my things never see the light of day, so they don't get referenced a month later in a HN burn when I publish yet another project I'll stop working on in a month.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by pacoWebConsult on Monday July 27, 2026 @10:32AM
(#49070282)
Is it really that bad of an idea to experiment, put things out into public, and see what works and what sticks? They haven't abandoned agent-browser and portless, which came out of these vercel-labs efforts because they're useful tools and people are using them.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by embedding-shape on Monday July 27, 2026 @12:30PM
(#49071988)
> Is it really that bad of an idea to experiment
I don't think so, I literally think it's fun to see. Sharing projects regardless of how done, mature, reliable, correct or not they are, feels like a net positive for humanity.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by elendilm on Monday July 27, 2026 @03:19AM
(#49066110)
This look very promising.
We are increasingly using a subset of typescript in our backend so as to be amenable to a tool, in the long run, which can convert the ts subset to rust source code.
This project will enable an alternative of that vision earlier - except of course without the parallelism.
Also I am curious as to whether this will compile to a static lib which can be linked to an existing cpp app to be run on android/ios targets. In theory it should be able to. The docs mention ffi, but I didn't dig deep.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by elendilm on Thursday July 30, 2026 @02:23AM
(#49106636)
No the tool does not exist. Its medium to long term vision.
Our backends are structured on isolated units - what we call "features". Features invoke another features via fully qualified names using a standard Features.send(...). in-process/inter-replica/inter-service and even seperate functions inside the same js files are all invoked likewise.
Only a few specific helper functions for a feature exist for direct invocations.
The complexity of ts2rust tool is thus greatly reduced because of the discipline of the architecture.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by truth_seeker on Monday July 27, 2026 @03:28AM
(#49066169)
Shameless plug but worth reading :
I have forked Fabrice Bellards QuickJS and extended it heavily to adopt anti-npm/node stance.
all of the essential standard lib and top npm packages will be built natively in C17 with every build and minor release focred through CPU, IO and memory profiling.
Currently it supports MacOS and Linux, FreeBSD and Windows in future.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by notsylver on Monday July 27, 2026 @03:34AM
(#49066220)
I desperately want to see some of these projects used in production by the companies or people making them, at best it might prove that it isn't just a sloppy publicity stunt
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by weinzierl on Monday July 27, 2026 @03:36AM
(#49066236)
It's nice they acknowledge and confirm the need for small, fast native executables.
Having followed the story for this in Java over the decades I'm skeptical about the practicality.
GCJ existed in the 90s and the technology was good, but there was no ecosystem support.
After many small steps between GraalVM Native finally tackled the problem more holistically and the ecosystem followed. All the major libraries and frameworks put effort into being GraalVM compatible.
And, still it's a major pain to make even simple existing applications run flawlessly natively.
I'm glad something like scriptc exists but I'm afraid until this is of practical use it will be s long thorny way.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by vips7L on Monday July 27, 2026 @02:02PM
(#49073334)
I think the Graal team was also trying to take a meta-interpreter approach like this too. For cases where you need to dynamically load bytecode or do reflection where native couldn't handle it they would try to interpret with their espresso java implementation.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by piterrro on Monday July 27, 2026 @05:18AM
(#49067004)
this is enough to keep them on the first page of HN and similar services. Its a growth strategy: invest tokens, build some "nice" project nobody wants, get some reach through publishment. Rinse and repeat.
Heads up, in 12 months from now, 90% of open source projects will be vibecoded, without actual users - only looking "interesting" (if not already?).
Its easy to vibe code a full blown compiler these days, the question is: will it be maintained? A catchy title is not enough to get sticky users, long term maintenance, community around the project is (or at least used to be).
Having said that, the only viable reason for these kind of projects I see is getting attention for a moment, boosting reach of Vercel logo across the web and then disappearing (or stop development).
If Vercel would think seriously about this project: they would show skin in the game - for example implement it as their own experimental runtime.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by ianberdin on Monday July 27, 2026 @05:55AM
(#49067270)
I've heard stories like this before, how one or a few people miraculously coded up an alternative to Node.js. But can you name even one that actually works properly in production? Not a single one.
Take Bun, for example. Nobody is actually running it in production as a runtime. Why? Memory leaks and a whole bunch of other issues. I've personally tried it multiple times, and something always breaks. Come on, it's just not that simple.
Sure, you can build something that has similar interfaces and even works to some degree. But making a production-ready solution is a completely different level of complexity. There's that well-known chart where the first 90% of implementation happens almost instantly, and the remaining 10% takes forever to polish out all the rough edges.
On one hand, I really like the idea, and I've always wondered why TypeScript doesn't compile to native code. On the other hand, I'm quite skeptical that Vercel can actually pull this off. I'd be happy to be proven wrong, but I have very little faith in it.
Either way, good luck to them, but honestly, even if they succeed, I probably won't use it. Knowing their track record with vendor lock-in and Next.js, where they do everything possible to push you onto Vercel Cloud — no thanks.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by mdavid626 on Monday July 27, 2026 @07:09AM
(#49067833)
Sometimes you are forced to use it - e.g. Bun in Claude Code. I like Opus models, but can't run them outside of Claude Code/Bun in subscription models.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by jjice on Monday July 27, 2026 @10:20AM
(#49070115)
This is very interesting and a potential huge win like .NET AOT if it lasts. This has been around for days, so I'm not going to invest any more time than just playing with it at this point, but if this can continue development and not get abandoned, it could be a really nice win for the ecosystem.
As we see more and more heavily AI built open source projects, I wonder how the perception of them becomes. There's a huge spectrum of AI developed code, the same way there is with human code, except a human at least had to think a bit about what they wrote. If you generate code with an LLM to the standards that you'd write it yourself (which is the only way I'd consider for anything important) and you review every bit that's written, I think that's wonderful. Even if you don't, I don't think that's bad, but I will have more friction to adopt that project as there's likely lower quality code and less personal investment into it.
I find that a lot of online discussion has gone either "AI generate everything" or "never AI generate anything", with the middle ground being mostly silent. That's probably just because it's the internet and most people I talk to IRL have a reasonable middle ground take. I'm all for it if it accelerates a person making thoughtful decisions. If not, more power to you, but I'm less inclined to use the software out of fear of using something of poor quality or something that'll be abandonware.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by h1fra on Monday July 27, 2026 @10:55AM
(#49070587)
Vercel doing Vercel: 5 days old, entirely vibecoded, already 1.5k stars for no reason, solves no one's issue and will stop being maintained in a few months (if more than this week).
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by pmkary on Monday July 27, 2026 @01:41PM
(#49073079)
Despite the hate it is receiving, I thought lets test it at least, and tried it to any project that I have locally. For every single of them the coverage generates hundreds of errors and so it is basically useless. I get that I can write a project from scratch, don't use any third party library, and it'll compile to binary, but then why should I not use Rust, Go, Zig, D, C, V, Ada, C++, Nim, Swift, Kotlin Native, Haskell... literally anything designed to be compiled and compiled well?
Looking at the byte-array results (best case): scriptc is about 7.5x slower than Node 24, even after Claude tried making some scriptc-specific optimizations. But the executable starts up 12x faster (1.5 ms vs 18.6 ms), uses 72x less memory (2.5 MiB vs 181 MiB), and is a single 370 KB executable with no runtime dependencies.
Re:Scriptc by Vercel: TypeScript-to-Native compiler, no Java...
by _chall_ on Tuesday July 28, 2026 @03:45AM
(#49080670)
I think Vercel should either collaborate with the TypeScript team or hire one of the active external TypeScript contributors https://github.com/microsoft/TypeScript/graphs/contributors?... to add another backend (make a fork of tsgo as an option), whether that's WebAssembly or LLVM IR... As it stands, the project's direction feels a bit odd.
Coding agents. They landed 918,000 lines of code in a single week: https://github.com/vercel-labs/scriptc/graphs/contributors?s...
- the architecture is idiotic.
- they have zero credible perf numbers.
I plan to benchmark it using generally accepted methods.
Porffor makes careful trade offs that make sense and is benchmarked in a way that I can believe.
(Source: I make dynamic languages fast for a living)
Can you clarify what about the architecture is ‘idiotic’? Not trying to catch you or demand a defense, just looking for a vague description. I don’t even know how to start examining the architecture of something like this.
- using quickjs at all in a thing that needs perf. Quickjs is hilariously slow. Midwits use it because it has “quick” in the name.
- using floats for numbers and deferring int optimizations for later. Inferring ints is like half the problem of fast JS.
- rejecting inadequately annotated or too dynamic code without a whole heck of a lot of self-reflection about how unlikely that is to work out.
The observation that languages that are even slightly dynamic need dynamic JIT opts is very old; folks figured that out in the 80s.
This project reeks of weapons grade AI psychosis
Note that “untyped dependency” means any code that says `any`.
Being able to build small, fast binaries without writing them in C or Rust - if you're already fluent in TypeScript - seems like a valuable capability.
CanadaHonk has gotten further than the rest of us. It’s surprising and impressive.
You’re only replying to the quickjs issue I raised, but it’s not the only issue. Their approach to numbers is broken. Their approach to measurement is broken. The quickjs thing raises another red flag: it suggests to me that they are using reference counting, not GC. That’s guaranteed to make them too slow to be useful. (If they weren’t using RC, then they’d have a hard time on the boundary to quickjs.)
As to the `any` issue, let me explain it in a way you’ll appreciate. I asked Claude how likely it is that TS code uses any, and it found:
- 79.5% of TS repos use any explicitly. So, about 4/5 chance that newly written dep-free TS code will use it.
- the explicit any type is about as common as Boolean and void.
- a third of inferred types are any. That’s huge.
So, if you don’t believe me, then at least believe Claude: any is a super common type, so they will be falling off into quickjs a lot.
Oh, and in case it isn’t clear, quickjs-ng is no better than quickjs. They’re the same thing for the purpose of perf
I had to do a triple take on this.
If I was using this project for something I'd expect to write custom TypeScript for it.
The floats rather than integers thing does look bad though. I tried compiling their fibonacci example to C (--backend c) and got this:
I've just been teaching myself Go, also a single binary but without the overhead. But in Go i miss the expressiveness of the TS type system sometimes.
This phrase I think highlights the fundamental issue for a lot of folks that would otherwise consider adopting a project like this written by humans.
This part made me laugh out loud
For a project like this, isn't it worth introducing a TS type for Ints? Since they are trying to leverage TypeScript anyway...
1. TS only has a "number" type. But what type of number is it? This is doable safely via keywords (or known markers), or sometimes via analysis, but I couldn't find it in the README.
2. A compiler that works only on macOS?
I vibeslopped thousands of pages of blueprints, nobody reviewed them, but another team of digital monkeys with the intellect of an ant have already built the bridge, and it seems to not have collapsed yet, so we're already directing traffic there.
I can't imagine actual engineers feeling anything but deepest contempt for this industry.
But it is indeed engineering, and that’s OK.
Do you have some other definition of engineering that excludes SWE?
Here is the definition https://dictionary.cambridge.org/dictionary/english/engineer...
Many people's lives do depend on software today. Insurance software dictates who gets treatment and who doesn't; that's real lives at stake. Finance software controls access to things like food and shelter; that's real lives at stake. Firmware in prosthetics and diabetic injectors and so on and so forth. Software runs the world, we pat ourselves on the back saying, but forget the world is full of real lives.
(At one point I even debated the value of getting PE credentials at my age for extra leverage in that company.)
“Actual” engineering went through a phase where bridges and other structures did collapse due to structural flaws - it’s not like they magically figured out ahead of time how to avoid that.
Now, they can build structures that are some specified tolerance away from collapsing, but that’s only the case because the edges of what was possible were explored.
But if you're starting from scratch and know you won't be using any npm packages, you might as well use AssemblyScript.[2]
[0]: Publishing packages in TypeScript is explicitly discouraged by Node[1]. TypeScript isn't backwards compatible even in minor releases, and its compiler settings aren't portable for packages.
[1]: https://github.com/nodejs/node/blob/main/doc/api/typescript....
[2]: https://www.assemblyscript.org/
Looks like Scriptc's solution to that problem is that it can optionally bundle a 620KB quickjs-ng JavaScript engine if you have dependencies that need to be executed that way.
I’ve seen people want to publish TS libs but there are issues: TS will type check the libs as well as your project. You can’t tell it to stop just because it’s going inside node modules. And the app may have tighter settings than the library and you will get type errors if your configs were setup differently. It would be interesting to standardize publishing real typescript libs but I haven’t seen it. Maybe deno tried? I haven’t looked.
Deno doesn’t type-check external dependencies unless you ask.
There's a way to download JSR packages and use them with npm too. I don't know what it does in that case.
wish it was the other way around
Now people can have these ideas, slop together an awful solution that works at a surface level, maybe, but will never really go places because the foundation is slopped with no party involved actually capable of thinking thing through. But hey we launched something so let's make lots of noise! Oh look, a banana ... Sorry, what were we talking about?
There's an engineer on a team at work that I routinely engage with who slops together stuff so fast his team is basically exhausted all the time. They're stuck picking up a whole stream of pieces of crap because the engineer is incapable of actually doing the hard work of getting things to production because there's more "ohh, shiny" stuff they can spend tokens on, and their leadership aren't stepping in because it all looks terribly productive (it really isn't)
whats the use case for this , make it hard to reverse engineer my node projects?
other projects like claude code use something like `bun build --compile`[^1] for that, which instead of producing a small native binary just bundle the JS runtime into the executable.
[^1]: https://bun.com/docs/bundler/executables
Deno is building a less-wasteful Electron style framework for native desktop apps
The use case, imo, is to be able to write server side code in familiar TypeScript, then deploy it as a small single native binary (vs Node and Bun which embed the entire 100MB+ runtime when you build a native binary.) Electron for the record ships their own modified Node runtime (not ABI compatible) on top of the whole Chromium renderer
I can't think of any serious company or project that would use this thing.
P.S: I just checked the contributors list, I have the utmost respect to them (notably simonw), but clearly this code is claude'ish but it is not among the contributor which makes it even more suspect.
I checked my history and mapped how often it started to use "honest" and it's too much https://x.com/podviaznikov/status/2067231875068768447
But I can get around this by first having it write a prompt for itself discussing the problem followed by a rousing speech about never giving in and admitting defeat, but pressing on towards results regardless of how hard matching SOTA results is.
I've had trouble unpacking some of the copy it generates because its default tone of voice is fairly unintuitive. It's almost like it's designed to induce psychosis because it makes you feel like you've discovered something novel.
Not works in some of the cases and you have to implement fetch calls yourself, or some iframe boilerplate and JS glue, everything they expose in React is fully available in Angular, including field extensions, inline previews, sidebar extensions, the whole lot.
Invalidating the remark "I can't think of any serious company or project that would use this thing."
Where's the example?
React is designed with Next.js needs in mind nowadays.
Edit: typo
the only group i noddingly approve of being that programmatically bigoted are the clojure-or-i'm-setting-myself-on-fire guys. they've earned it
tests don't mean much if you are not an expert on the subject
> tests don't mean much if you are not an expert on the subject
I think the bet is that the AI is an expert, given the vast literature and open source around compilers.
Why do you care?
It's a stranger from the Internet. Same as with any other software you're using. In particular, same as with any OSS tool you're using.
> Why do you care?
> It's a stranger from the Internet. Same as with any other software you're using. In particular, same as with any OSS tool you're using.
Don't you think that even if you don't know someone personally, you can calibrate your trust in their ability based on reputation, track record.
rarely. How many of the libraries you pull from package managers do you actually know the authors of?
Going in to a project hoping to make a change and seeing no tests and spaghetti used to be soul crushing. These days I’d have Claude go refactor and add tests and make pull requests for me to look at to fix it.
And let’s imagine if LLM bots could do that as well, without any human caring to type the actual messages, just orchestrating the bot fleet. What trust could be we put in such a brainless peace of publications?
https://github.com/vercel-labs/zerolang
https://news.ycombinator.com/item?id=48193539
I don't think so, I literally think it's fun to see. Sharing projects regardless of how done, mature, reliable, correct or not they are, feels like a net positive for humanity.
seems like simon only changed the readme and wasn't really involved in the project.
https://github.com/vercel-labs/scriptc/commits/main/?author=...
I deleted two words from the README.
We are increasingly using a subset of typescript in our backend so as to be amenable to a tool, in the long run, which can convert the ts subset to rust source code.
This project will enable an alternative of that vision earlier - except of course without the parallelism.
Also I am curious as to whether this will compile to a static lib which can be linked to an existing cpp app to be run on android/ios targets. In theory it should be able to. The docs mention ffi, but I didn't dig deep.
Our backends are structured on isolated units - what we call "features". Features invoke another features via fully qualified names using a standard Features.send(...). in-process/inter-replica/inter-service and even seperate functions inside the same js files are all invoked likewise.
Only a few specific helper functions for a feature exist for direct invocations.
The complexity of ts2rust tool is thus greatly reduced because of the discipline of the architecture.
Also, does "Linux and Windows binaries build by cross-compilation" mean that you can't run it on non-MacOS? If so, that's pretty lame...
I have forked Fabrice Bellards QuickJS and extended it heavily to adopt anti-npm/node stance.
all of the essential standard lib and top npm packages will be built natively in C17 with every build and minor release focred through CPU, IO and memory profiling.
Currently it supports MacOS and Linux, FreeBSD and Windows in future.
https://github.com/corporatepiyush/dynascript
API reference : https://github.com/corporatepiyush/dynascript/blob/master/do...
Having followed the story for this in Java over the decades I'm skeptical about the practicality. GCJ existed in the 90s and the technology was good, but there was no ecosystem support.
After many small steps between GraalVM Native finally tackled the problem more holistically and the ecosystem followed. All the major libraries and frameworks put effort into being GraalVM compatible.
And, still it's a major pain to make even simple existing applications run flawlessly natively.
I'm glad something like scriptc exists but I'm afraid until this is of practical use it will be s long thorny way.
Anyone serious would be paying for Excelsior JET, BEA JRockit, or the myriad of other commercial JDKs wihth AOT tooling.
In fact most likely one reasons why Excelsior is not more, is that now GraalVM and OpenJ9 exist as free bear.
PTC and Aicas still have it good, because few care about their embedded and real time customers.
This is more equivalent to Go, with a single static native binary that does not include the whole Node runtime
Heads up, in 12 months from now, 90% of open source projects will be vibecoded, without actual users - only looking "interesting" (if not already?).
Its easy to vibe code a full blown compiler these days, the question is: will it be maintained? A catchy title is not enough to get sticky users, long term maintenance, community around the project is (or at least used to be).
Having said that, the only viable reason for these kind of projects I see is getting attention for a moment, boosting reach of Vercel logo across the web and then disappearing (or stop development).
If Vercel would think seriously about this project: they would show skin in the game - for example implement it as their own experimental runtime.
Take Bun, for example. Nobody is actually running it in production as a runtime. Why? Memory leaks and a whole bunch of other issues. I've personally tried it multiple times, and something always breaks. Come on, it's just not that simple.
Sure, you can build something that has similar interfaces and even works to some degree. But making a production-ready solution is a completely different level of complexity. There's that well-known chart where the first 90% of implementation happens almost instantly, and the remaining 10% takes forever to polish out all the rough edges.
On one hand, I really like the idea, and I've always wondered why TypeScript doesn't compile to native code. On the other hand, I'm quite skeptical that Vercel can actually pull this off. I'd be happy to be proven wrong, but I have very little faith in it.
Either way, good luck to them, but honestly, even if they succeed, I probably won't use it. Knowing their track record with vendor lock-in and Next.js, where they do everything possible to push you onto Vercel Cloud — no thanks.
Otherwise it looks like it compiles to LLVM.
As we see more and more heavily AI built open source projects, I wonder how the perception of them becomes. There's a huge spectrum of AI developed code, the same way there is with human code, except a human at least had to think a bit about what they wrote. If you generate code with an LLM to the standards that you'd write it yourself (which is the only way I'd consider for anything important) and you review every bit that's written, I think that's wonderful. Even if you don't, I don't think that's bad, but I will have more friction to adopt that project as there's likely lower quality code and less personal investment into it.
I find that a lot of online discussion has gone either "AI generate everything" or "never AI generate anything", with the middle ground being mostly silent. That's probably just because it's the internet and most people I talk to IRL have a reasonable middle ground take. I'm all for it if it accelerates a person making thoughtful decisions. If not, more power to you, but I'm less inclined to use the software out of fear of using something of poor quality or something that'll be abandonware.
Related problem: Using AI to write compilers that optimize runtime code. I did this for Zod.
https://github.com/gajus/zod-compiler
Zod schemas, compiled at build time into raw boolean chains. 2-74x faster. No code changes. The plugin swaps Zod with compiled parse.
I wrote almost none of the optimizations. Claude did, in a loop, over 100+ iterations.
It works because the compiled version can be diffed against real Zod. Correctness isn't a judgment call. Same as scriptc.
This applies to every program with a reference implementation and a benchmark. Compilers, serializers, formatters, query planners, etc.
Excited for faster Internet.
I might be wrong here. What's the use case?
Looking at the byte-array results (best case): scriptc is about 7.5x slower than Node 24, even after Claude tried making some scriptc-specific optimizations. But the executable starts up 12x faster (1.5 ms vs 18.6 ms), uses 72x less memory (2.5 MiB vs 181 MiB), and is a single 370 KB executable with no runtime dependencies.
I can appreciate that as it seems zig has been successfully influencing things.