The word "useful" is too subjective to be useful here.
> - It doesn't have macros.
There's MetaLua for those who truly think they need macros. But in reality they're just a convenience.
> - It doesn't have integers.
Lua 5.3 is getting them.
> - It doesn't have arrays.
It has tables that function perfectly well as arrays.
> - It doesn't have lists.
Singly-linked-lists can easily be created using tables.
> - It doesn't have dynamic binding.
Thankfully!
> Also, its 1-based array-like hash tables are just ecchy.
This is purely an imaginary problem. Personally, I prefer 1-baed indices.
> I like Lua; it's cool for what it is (and in fact I'm currently writing some hobby code in it), but it's not Lisp (and in fact my current hobby code is Lisp in Lua…).
So, your favorite language is Lisp? Great. Except, favoritism and bias aren't really compatible with truly constructive criticism.