我知道C#和Java。其他人都知道其他人吗?
答案 0 :(得分:11)
严格地说,JIT是运行时的属性,而不是语言。迂腐,但其含义是,例如在JVM上运行的任何语言都可以利用JVM的JIT。 Jython,JRuby,Groovy等。
Tamarin也有JIT。我认为这可以运行JavaScript和ActionScript?不是积极的......
答案 1 :(得分:4)
维基百科上的Just-In-Time Compilation
文章列出了几个:
还有几个用于C ++的组合emmiters。
至于C# - 所有.NET语言都使用相同的运行时和jit。 VB.NET,C#,F#,IronPython,IronRuby,COBOL.NET等...
答案 2 :(得分:4)
答案 3 :(得分:2)
.NET运行时使用JIT,因此任何语言都可以使用它。您可以找到更多信息here。
答案 4 :(得分:2)
对于Python,有一个PyPy项目,它包含JIT(在许多情况下使代码运行得比在CPython中更快)
答案 5 :(得分:2)
对定义/使用JIT编译器的内容存在一些困惑:它是一种编程语言吗?这是一个程序吗?运行时环境?
实际上,它是特定编程语言的实现,它为特定的目标指令集架构(x86,x86_64,PPC,...)提供JIT编译器。
例如,SBCL实现为Common LISP提供了JIT编译器,但该语言的其他实现没有(例如CLISP)。
另一个例子,Java虚拟机的OpenJDK实现为某些体系结构提供了JIT,但对于仍然解释字节码的其他体系结构(例如ARM)则没有。
作为旁注:不要忘记因子编程语言。重量级的实现使用JIT编译器。
答案 6 :(得分:1)
带有额外库的C ++。
答案 7 :(得分:1)
C#不使用JIT。 C#编译为.NET平台的CIL,.NET在执行时使用JIT。
.NET不仅仅是C#。还有VB.NET,Delphi.NET,Fujitsu Cobol,IronRuby,IronPython,F#等等。所有面向.NET平台的语言都在运行时使用.NET JIT编译器。
答案 8 :(得分:1)
Smalltalk有JIT编译器。
答案 9 :(得分:0)
编程语言不使用JIT。程序使用JIT。
C#没有JIT C#被翻译成CIL而CIL'可执行'被运行JIT。
Dalvik使用Java的语法,但编译为自己的字节码。 Dalvik VM与Java VM完全不同。
答案 10 :(得分:0)
我自己不是Julia专家,但这是一种严重依赖JIT的语言。这里有许多人断言JIT纯粹是语言的运行时实现方面。这就是最初的想法。但是据我了解,Julia作为一种语言的设计受到JIT的强烈影响和构建。
答案 11 :(得分:0)
Julia 的设计初衷是为了工作 使用 JIT 编译器。