On 20-3-2012 19:59, Kip Warner wrote:
On Tue, 2012-03-20 at 16:57 +0200, Khaled Hosny wrote:
Older TeX engines had hard memory limit, so in case of such
"syntactical" errors the engine would consume all its allocated memory
and die (with a misleading error message), LuaTeX dynamically allocates
memory (for good reasons) so it won't stop before consuming all your
available memory, its the responsibility of an operating system to
prevent such a faulty application from taking the whole system down.
I'd be very interested in seeing the operating system memory manager's
algorithm that could do such a remarkable thing.
well you can try what happens if you run stock lua:
local t = { }
while true do
t[#t+1] = "just a bogus string: " .. (#t+1)
end
at some point your system will run out of (virtual) memory or lua will
run out of whatever its limits are
Hans
-----------------------------------------------------------------
Hans Hagen | PRAGMA ADE
Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
tel: 038 477 53 69 | voip: 087 875 68 74 | www.pragma-ade.com
| www.pragma-pod.nl
-----------------------------------------------------------------