Hacker News new | past | comments | ask | show | jobs | submit login

Java, C#, Python, Ruby, Perl, PHP, Visual Basic, Scala, Clojure, Dart, Groovy, F#, Kotlin, JavaScript, and Lua are (almost always) interpreted languages.

So that leaves C, C++, Rust, D, Pascal, Haskell, and maybe Go (depending how large the binary gets and if the GC gods are on your side).

Whether or not it is "unique", it is a highly significant choice.




Slightly semantic argument, but most of those languages are normally considered compiled. They have an interpreter, but it operates on a compiled form of the language. Eg: Java is "compiled", Java Byte Code is "interpreted". Slightly semantic but not completely, as a tremendous amount of optimisation can actually be done by that compile step.


Yes that is semantic.

And not real distinguishing, given that most languages have bytecodes. This is true even of many "scripting" languages such as Python, PHP, and Ruby.

> as a tremendous amount of optimisation can actually be done by that compile step.

Not really. Look at something like Proguard which (among other things) is the #1 JVM bytecode optimizer. And yet the runtime performance differs very little before and after optimization. As long as you deliver reasonable bytecode, the JIT will capture every optimization and more that you could make to it.

---

At the end of the day, machine code is thing that actually moves the needle on performance, whether JIT machine code or AOT machine code.




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

Search: