tenderjit
LuaJIT
Our great sponsors
tenderjit | LuaJIT | |
---|---|---|
10 | 39 | |
417 | 4,396 | |
- | 2.4% | |
7.5 | 8.9 | |
3 months ago | 2 days ago | |
Ruby | C | |
Apache License 2.0 | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
tenderjit
-
JIT Compilers for Ruby and Rails: An Overview
Clone the repository and run the following commands:
-
Asmrepl: REPL for x86 Assembly Language
JIT makes sense given his other current project: https://github.com/tenderlove/tenderjit
-
YJIT: Building a New JIT Compiler for CRuby
Just in case anybody finds the subject interesting and would like to play with this topic, there's an experimental native-Ruby JIT project by @tenderlove: https://github.com/tenderlove/tenderjit (and the companion native-Ruby assembler Fisk: https://github.com/tenderlove/fisk).
- tenderlove/tenderjit: JIT for Ruby that is written in Ruby (/r/ruby)
-
Hacker News top posts: Sep 23, 2021
Tenderjit – A JIT for Ruby Written in Ruby\ (39 comments)
-
Tenderjit – A JIT for Ruby Written in Ruby
It’s x86-64 only. A quick look at the https://github.com/tenderlove/tenderjit/blob/main/lib/tender... linked from the README reveals heavy references to x86-64 registers. The “Fisk” library used appears to be a x86-64 assembler in Ruby.
I guess that’s to be expected with “pure ruby” — all the cross-insn backends you can use (Cranelift, LLVM) are written in not-Ruby.
- tenderlove/tenderjit: JIT for Ruby that is written in Ruby
LuaJIT
-
On the impossibility of composing finalizers and FFI
Unfortunately things aren't so simple, as when doing JIT compilation, LuaJIT _will_ try to shorten the lifetimes of local variables. Using the latest available version of LuaJIT (https://github.com/LuaJIT/LuaJIT/commit/0d313b243194a0b8d239...), the following reliably fails for me:
local ffi = require"ffi"
-
Building a baseline JIT for Lua automatically
I am using https://luajit.org/ in my GCC C++ project.
Can I use this faster Lua JIT in my project as a replacement? And if so, how so?
The existing luajit doesn't do v5.1, so it would be nice to use this newer engine at the newer baseline lua version level.
-
Python 3.13 Gets a JIT
The commit history looks pretty active...
https://github.com/LuaJIT/LuaJIT/commits/v2.1/
- LuaJIT 3.0 Issue Tracker
-
LuaJIT Uses Rolling Releases
I think https://github.com/LuaJIT/LuaJIT/commit/6a2163a6b45d6d251599... improved things a bit, notably making automatic tarballs work again.
-
How to clear a table without wasting memory?
There is nothing on luajit.org, so I assume that 2.0 doesn't have the extensions added (think the site is still on 2.0). However I found some proof in the mirrored git repo, that they do exist and also my luajit interpreter (2.1.0-beta3) shows them as builtins.
- Clone Mike Pall
- Which for loop method is faster
-
Recommendations for JS Engines that could be embedded in my Game Engine
If you absolutely want a performant scripting runtime, I'd recommend taking a look at LuaJit, DaScript or AngelScript.
-
Any embeddable language compatible with C (like Lua) but compiled?
If you don't like that - look towards JIT-compilers. Lua has one
What are some alternatives?
WinREPL - x86 and x64 assembly "read-eval-print loop" shell for Windows
lua-languages - Languages that compile to Lua
duckduckgo-locales - Translation files for <a href="https://duckduckgo.com"> </a>
Wren - The Wren Programming Language. Wren is a small, fast, class-based concurrent scripting language.
natalie - a work-in-progress Ruby compiler, written in Ruby and C++
moonjit - Just-In-Time Compiler for the Lua Programming language. Fork of LuaJIT to continue development. This project does not have an active maintainer, see https://twitter.com/siddhesh_p/status/1308594269502885889?s=20 for more detail.
mb-sound - A library of simple Ruby tools for processing sound.
luajit2 - OpenResty's Branch of LuaJIT 2
cemu - Cheap EMUlator: lightweight multi-architecture assembly playground
nelua-lang - Minimal, efficient, statically-typed and meta-programmable systems programming language heavily inspired by Lua, which compiles to C and native code.
rhizome - A JIT for Ruby, implemented in pure Ruby
ravi - Ravi is a dialect of Lua, featuring limited optional static typing, JIT and AOT compilers