[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Couple things...



On Tue, 23 Dec 2003 11:12:04 +0100, Michael Sperber <sperber@xxxxxxxxxxxxxxxxxxxxxxxxxxx> wrote:

"Thomas" == Thomas Bushnell <tb@xxxxxxxxxx> writes:

Thomas> Um, in C a user definitely has cause to care. Importantly, a function Thomas> can be used far more flexibly. Allowing all the forms to be macros is
Thomas> a pain.

Felix will point out that allowing forms to be functions is a
performance consideration.


Not only that. It allows the *implementor* maximal flexibility, which
I consider more important in this case. Allowing a form to be a function
may tempt users to do weird stuff like taking it's address, etc.
Remember: on this level (FFI) things can get extremely fragile and tricky.
The user of an FFI should be *forced* to use it's forms in a straightforward
and simply manner.


cheers,
felix