From 4bccbd74d7a28b640d9c22050899f0ab35c6520a Mon Sep 17 00:00:00 2001 From: Arseny Kapoulkine Date: Wed, 21 Apr 2021 09:39:24 -0700 Subject: [PATCH] Update compatibility.md --- docs/_pages/compatibility.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/_pages/compatibility.md b/docs/_pages/compatibility.md index e957ec5c..d65d0d71 100644 --- a/docs/_pages/compatibility.md +++ b/docs/_pages/compatibility.md @@ -36,7 +36,6 @@ Since several features were removed from Lua 5.1 for sandboxing reasons, this ta | feature | notes | |---------|------| -| tail calls | removed to simplify implementation and make debugging and stack traces easier | | `io`, `os`, `package` and `debug` library | note that some functions in `os`/`debug` are still present | | `loadfile`, `dofile` | removed for sandboxing, no direct file access | | `loadstring` bytecode and `string.dump` | exposing bytecode is dangerous for sandboxing reasons | @@ -125,3 +124,4 @@ We have a few behavior deviations from Lua 5.x that come from either a different * Order of table assignment in table literals follows program order in mixed tables (Lua 5.x assigns array elements first in some cases) * Equality comparisons call `__eq` metamethod even when objects are rawequal (which matches other metamethods like `<=` and facilitates NaN checking) +* Tail calls are not supported to simplify implementation, make debugging/stack traces more predictable and allow deep validation of caller identity for security