Lisp and Smalltalk were the first ones.
McCarthy is mentioned for that, but I guess more work on that was done in the Smalltalk and Self context.
Since quite some time most Lisp systems don't use a JIT. They compile the code ahead of time or explicitly incrementally.
> Since quite some time most Lisp systems don't use a JIT. They compile the code ahead of time or explicitly incrementally.
I am aware of type hints, but given Lisp's dynamic nature, wouldn't a JIT provide more optimized code than AOT?
Java -> HotSpot, Python -> PyPy, Javascript -> V8 and friends, PHP -> HHVM