4 ms·
1. it's built for async 2. runs everywhere 3. interpreted, making it fast to iterate on 4. decent performance 5. most popular language, llms are decent at writ
by m_ke 2mo ago
1. it's built for async
2. runs everywhere
3. interpreted, making it fast to iterate on
4. decent performance
5. most popular language, llms are decent at writing it
- altmanaltman 2mo agoaren't 3 and 4 a tradeoff though? Yes you have 3 but "decent performance" cannot be an extaled value as compared to "runs everywhere". If its used as a counter balance to 3 then it shouldn't be its own unique point basically saying 4 is true despite 3 in this case.
- m_ke 2mo agowhen you're waiting for network or LLM inference the raw performance doesn't matter at all
- eglintondust 2mo agoThis line of thinking I feel like assumes it's the only program running on your computer. Using less of my CPU and memory means my computer can do more things in parallel, or even run more instances of the harness. My laptop is sweating when I got 5+ claude code sessions running.
- jaapz 2mo agoIs it actually claude using those CPU cycles though, or the agent running test suites and what not? Honestly I would not be surprised when it actually IS claude using those resources... It is very clearly vibed
- eglintondust 2mo agoI haven't monitored CPU usage so closely, but seems to get heavy with basic tool calls and editing. Memory usage definitely is out of hand, have an idle session right now eating 500MB
- altmanaltman 2mo agoyeah fair enough, my entire point is not about the application itself but the contradiction on using superlative terms for all points but a compromising/normal term for one. Like if performance is not revelant why include it in the list of benefits.
- kingstnap 2mo agoYou would think raw performance wouldn't be a problem given most of whats happening is waiting for network calls and streaming tokens. But modern bloat manages perfectly well to make apps that wait for network calls run poorly enough to give you a bad experience.
- Jtarii 2mo agoThis is so very, very incorrect.
- kzsh 2mo agoAn additional benefit of interpreted, I think, is to make plugins easier to distribute and incorporate. With a compiled language you’d need message passing or something.
- nurumaik 2mo agodynamic linking was invented pretty long time ago
- platinumrad 2mo agoYou know that dlopen does not compare.
- zackchew 2mo ago[dead]
- gf000 2mo agoJVM has real and virtual threads and arguably just as good if not better on all these points. (I actually have/am writing a harness in Java fwiw, but mostly as a hobby/experimentation)
- knowaveragejoe 2mo agoBut have you considered that java is gross and nodejs is sexy?
- cmrdporcupine 2mo agoJVM apparently has the disadvantage that nobody under the age of 40 wants to touch it anymore. I admit I haven't worked in it in 20 years, but I do think it's a marvel of engineering and unfairly maligned. It used to be my career but I wanted to be closer to the metal. Having Oracle's tramp-stamp on it may have been the final kiss of death in terms of totally-superficial "coolness" factor.
- rescbr 2mo agoThe JVM has a fixed size heap which for me it is wasteful. IMHO, Microsoft made the correct approach on .NET. For LLMs, I prefer C# and C++ instead of TypeScript, JavaScript or Python as the static + compiled language factor keeps the coding agents on track. Plus, they have a true threading/async implementation.
- cmrdporcupine 2mo agoIt's only appearing wasteful if you're not understanding how memory management works on modern operating systems. It's not wasting any RAM at all if you pay attention to RSS vs VSS. The actual physical RAM is still entirely available to other applications. It's just made the OS know it might want that many pages. Until there's data in the pages, they will not count towards total RSS. It's the kind of things some sysadmins used to gripe to me about and I would question whether they should be in charge of a machine at all. To repeat: just because an application mmaps a large region doesn't mean the OS has actually given it all that physical RAM. It's merely made sure the pagetable knows about it.
- skeledrew 2mo agoThat actually don't like you're describing Python. I've been working on a couple JS/TS projects and it's like the models I use (Claude Sonnet and DeepSeek v4 Flash) continually struggle to do coherent work; I have to always keep close watch to reduce sloppiness. I go to Python and it's smooth sailing with minimal prompting (and reduced token burn) for acceptable outcomes.
- 0xbadcafebee 2mo agodecent performance, lol! compared to what? a shell script? "i'll only take up 200MB of disk and 4GB of RAM to output flickering text on a terminal. boy this is high performance" fast iteration is for POCs. once you have the app built and working, you need performance and stability much more than fast iteration
- slashdave 2mo ago> it's built for async You do know that node is event driven, right?