Wiem, że C# i Java do. Ktoś jeszcze wie o innych?Które języki programowania mają kompilatory JIT?
Odpowiedz
Ściśle mówiąc, JIT jest własnością środowiska wykonawczego, a nie języka. Pedant point, ale wynika z tego, że dowolny język, który działa na JVM, może na przykład skorzystać z JIT JVM. Jython, JRuby, Groovy, itp.
Tamarin ma również JIT. Myślę, że to może uruchamiać JavaScript i ActionScript? Nie pozytywne ...
C++ z dodatkowymi bibliotekami.
Just-In-Time Compilation
artykuł Wikipedia wymienia kilka innych:
- GNU lightning - biblioteki, który generuje kod języka montaż w czasie wykonywania
- Mozilla nanojit - Niewielki, cross-platform Biblioteka C++, która emituje kod maszynowy. Jest on używany jako JIT dla silników JavaScript Mozilli Tamarin i SpiderMonkey Javascript
I kilka innych emulatorów assemblowych dla C++.
Podobnie jak w języku C# - wszystkie języki .NET używają tego samego środowiska wykonawczego i jit. VB.NET, C#, F #, IronPython, IronRuby, COBOL.NET i więcej ...
runtime .NET używa JIT tak że każdy język uderzenie. Możesz znaleźć więcej informacji here.
C# nie używa JIT. C# kompiluje się do CIL dla platformy .NET, a .NET używa JIT w czasie wykonywania.
.NET to znacznie więcej niż tylko C#. Są też VB.NET, Delphi.NET, Fujitsu Cobol, IronRuby, IronPython, F # i więcej. Wszystkie języki docelowe dla platformy .NET korzystają z kompilatora .NET JIT w środowisku wykonawczym.
Języki programowania nie używają JIT. Programy używają JIT.
C# robi się JIT C# jest tłumaczone CIL i CIL wykonywalny '' prowadzony jest JIT.
Dalvik używa składni języka Java, ale jest skompilowany do własnego kodu bajtowego. Dalvik VM jest zupełnie inny niż Java VM.
+1 za wzmiankę o Dalvik. Właśnie to mnie zmotywowało do zadawania tego pytania. – DJTripleThreat
PLT Scheme miał JIT dla jakiegoś czasu.
Uważam, że oba z nich są ograniczone do x86.
LuaJIT dla x86-64 jest w wersji beta i będzie dostępny wkrótce. – asandroq
Smalltalk ma kompilatory JIT.
dla Pythona, jest PyPy projekt, który obejmuje JIT (umożliwiając kodu aby działał szybciej niż w CPython w wielu przypadkach)
Istnieje pewne zamieszanie na tym, co definiuje/wykorzystuje kompilator JIT: jest to język programowania? czy to program? środowisko uruchomieniowe ?.
W rzeczywistości jest to implementacja określonego języka programowania, który zapewnia kompilator JIT dla określonych architektur docelowych zestawów instrukcji (x86, x86_64, PPC, ...).
Na przykład implementacja SBCL zapewnia kompilator JIT dla wspólnego LISP-a, ale inne implementacje tego języka tego nie robią (takie jak CLISP).
Kolejny przykład implementacji OpenJDK wirtualnej maszyny Java zapewnia JIT dla niektórych architektur, ale nie dla innych (takich jak ARM), gdzie kod bajtowy jest nadal interpretowany.
Uwaga: nie zapomnij o języku programowania czynnikowego. Implementacja korzysta z kompilatora JIT.
- 1. Kompilatory JIT do matematyki
- 2. Języki programowania, które definiują problem zamiast rozwiązania?
- 3. Języki programowania SIMD
- 4. matematyczne Języki programowania
- 5. Języki programowania samochodów
- 6. Czy LuaJIT działa szybciej niż inne dynamiczne języki JIT?
- 7. Które języki programowania ogólnego/implementacje kompilują się do C
- 8. Języki programowania obsługujące literały XML
- 9. Języki, które interpretują do JavaScript?
- 10. Czy języki programowania powinny być intuicyjne?
- 11. Które kompilatory obsługują std :: filesystem?
- 12. Jakie są języki programowania dla GPU
- 13. Jakie języki programowania mogą wspierać testowanie mutacji?
- 14. Języki programowania kierowane na Arduino/AVR
- 15. Jakie języki mają dobre GUI API/Designer?
- 16. języki Co programowania ma czegoś takiego Haskell za `newtype`
- 17. Które kompilatory C++ dla kompilatorów C++ są wielowątkowe?
- 18. Jak języki programowania różnią się w różnych częściach świata?
- 19. Jakie języki programowania są łatwe do napisania dla tłumaczy?
- 20. Jak dodać różne języki programowania do Eclipse (C++, C#, Java)
- 21. W jaki sposób obsługa wyjątków jest realizowana przez języki programowania?
- 22. Optymalizacja IL dla kompilatorów JIT
- 23. JavaScript "kompilatory"
- 24. Unix C++ kompilatory, które nie rozumieją -c -o
- 25. Czy są jakieś przykłady kompilatorów JIT wielowątkowych?
- 26. Czym są języki ISO?
- 27. Sekwencje, na które transakcje nie mają wpływu?
- 28. Wyciąganie bezkształtnych polimorficznych funkcji, które mają zależności
- 29. Które znaczniki HTML nie mają treści
- 30. browserify i pliki, które już mają sourcemap
Dobrze. Zmieniłem tytuł tego pytania, aby odzwierciedlić ten fakt, dzięki! – DJTripleThreat