I'm a JIT lover.What's your favourite JIT-lang? My is Lua (It's from Brasil!)
Retard here, why does JIT compilation exist compared to say a pre compiled language like C?
Is there a JIT scripting language that is NOT LuaJit, because LuaJit is stuck on 5.1 forever
>>106465914because it's flexible and runs everywhere. With CPPbyou have to pick your target, your compiler, no reflection, no garbage collection.
>>106465945>Needs more than 5.1ngmi
>>106465914https://letmegptthatforyou.com/a/v0Q60
>>106465968I just don't like investing into a language that is hardstuck at a version forever
>>106466013>I don't like langs that will just werk⢠forever ok.
>>106465687>What's your favourite JIT-lang?Languages are not JIT or interpreted or compiled, language IMPLEMENTATIONS are. I prefer to compile ahead of time to machine code. But I think the JVM JIT is the most advanced JIT available.
>>106465687Unitonically Java
>>106465914Apparently JIT can perform better optimizations, because it learns about program's usage patterns. You cannot do that at compile time, only at runtime.
>>106465687More like jeet lang.
>>106465687I luv pypy, I watched a couple of lectures from some of the guys on the pypy team about jitting a lang with rpython (the JIT generator if you will)You not gonna believe me but one of them is now a woman
>>106466057>Languages are not JIT or interpreted or compiled, language IMPLEMENTATIONS are.Wrong.
>>106466059Man, I haven't seen this meme in ages.
>>106466013>i'm a retard who loves to see all numbers go up including version numbers
>>106468540>HolyC: JIT compiled C (had to put this first)>GraalVM: native AOT compiled Java>PyPy: JIT compiled Python>Porffor: native AOT compiled JavaScriptI could go on... but you're a dumbass.
>>106468638Gonna tell me the Earth is flat, next?
>>106468656Yes.>https://www.graalvm.org/latest/reference-manual/native-image/>https://pypy.org/>https://porffor.dev/
>>106468664Ain't clicking that shit
>>106468692retard
>>106465687Java! :D
>>106465914Some languages are really dynamic and essentially allow for self-modifying code.It's not impossible to perform static compilation for those languages, but it's typically a lot less headache to just use a JIT.Also, for stuff like GPU shaders, the hardware isn't known ahead of time (every make and generation of GPU has a different architecture), so a JIT is the only option.
>>106465945*stuck on being primarily compatible with 5.1it's still getting development and new features (some forward compat stuff too)maintainer came back after a long hiatus and it's now rolling release (with one function that triggers intentional ABI breakage which my distro patches out)>>106468927>Also, for stuff like GPU shaders, the hardware isn't known ahead of time (every make and generation of GPU has a different architecture), so a JIT is the only option.only really true for NVIDIA gpusAMD uses real gpu binaries for their compute APIs instead of an IR like PTX or SPIR-V, you can target the actual ISAs with LLVM for opencl and their basically 1:1 cuda clone HIP and they ship precompiled binaries for their compute librariesi assume a similar deal is going on with intel and oneapi/opencl/sycl/level zero
>>106468540>I am a dumbass, I don't even know fundamental basic stuff about programming languages, yet I do have an opiniongo away junior jeet
>>106468638>but you're a dumbass.indeed a major dumbass
>>106468927>Some languages are really dynamic and essentially allow for self-modifying code.>It's not impossible to perform static compilation for those languages, but it's typically a lot less headache to just use a JIT.You can have self-modifying code and compile ahead of time to machine language too. It's fairly easy to do in Lisp, since the compiler is also available at runtime.It is also very easy with machine language too (and most vintage viruses did that), for nearly the same reason: no compiler necessary.
>>106468876>retardSays the guy that thinks JIT is a language implementation lmao