* Make fallback accept only strings and numbers (as per standard Lua).
* Remove `luaToString` from the fallback. It fits well presentation
purposes but is too complicated for strict semantic checking in the
evaluator and also wrongly coersed non-string and non-number value.
It may also return a promise but we require synchronous error path.
* Concatenating `nil` now throws "attempt to concatenate nil value" as
per standard Lua.
* Other types throw "attempt to concatenate a non-string or non-number"
which is simplified message diverting from standard Lua which throws
typed error but we do not strictly need that for Space Lua (and can be
easily added anytime in the future).
Signed-off-by: Matouš Jan Fialka <mjf@mjf.cz>
The Lua 5.4 compatible `tonumber` implementation completely reworked
- custom char-by-char parser (no regexes)
- proper Lua space handling
- support for heximal integers and floats
- support for scientific float notation
- extended tests
- updated website docs
Signed-off-by: Matouš Jan Fialka <mjf@mjf.cz>