On Tue, 23 Dec 2003 11:12:04 +0100, Michael Sperber <xxxxxx@informatik.uni-tuebingen.de> wrote: >>>>>> "Thomas" == Thomas Bushnell <xxxxxx@becket.net> 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