[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: "Redirecting" stdout, stderr
- From: "Andy Stark" <astark@...>
- Date: Thu, 02 Mar 2006 11:38:36 GMT
David Given writes:
>
>I have an embedded system with no stdio (not even FILE*),
>
>so had to hack all that stuff out of the Lua core. It was non-trivial.
I have always thought it would be a major help to embedders if the Lua
source NEVER used the I/O routines from the C standard library directly.
They should all be wrapped inside functions defined in a single source
file. The functions would be called something like "lua_printf", etc, and
would simply pass their parameters onto the standard library routines. All
other parts of the Lua source should then call lua_printf rather than just
printf. Using this system, the crucial I/O routines would all be collected
in one obvious place and would only have to be modified once by anyone
having trouble with them.
This would be a benefit in several cases:-
- Places where no console output is available (eg, microwave oven or pure
GUI environment like classic MacOS).
- PalmOS and possibly others recommended that you use equivalent system
calls instead of C standard library routines in order to save memory.
- Plug-ins (eg, Photoshop) might need to report errors and messages by
some pre-arranged mechanism rather than on the console.
And there must be many other similar cases, all easily handled if the I/O
routine calls are wrapped as described above. Lua's main unique "killer"
feature is its superb embeddability - this feature should be developed as
far as possible.
Ideally, the Lua core (not including the file library, etc) should not use
any I/O routines from the C standard lib, but should pass message strings
upwards to be handled by the embedding program. This would probably be a
major task, however, and might require the Lua team to write their own
version of sprintf!
Just a few observations from my experiences. No need to get angry if you
disagree with me!
&.
#####################################################################################
This e-mail message has been scanned for Viruses and Content and cleared
by NetIQ MailMarshal.
The Blackpool Sixth Form College.
#####################################################################################