>>>>> "Dan" == Dan Sugalski <[EMAIL PROTECTED]> writes:
Dan> So, I see four real options:
Dan> 1) Someone fixes the Eiffel interface generator to understand
Dan> C variadic functions. 2) We provide a function and method
Dan> call interface that assumes you've already pre-filled in the
Dan> registers according to parrot's calling conventions 3) We
Dan> build some sort of really simple call interface that takes an
Dan> array PMC with the parameters stuffed into it 4) Parrot
Dan> provides some sort of facility to autogenerate shim functions
Dan> based on a passed-in signature
I was thinking of option (3).
Dan> #s 2&3 are sub-optimal,
Dan> and either require some work on the caller's part (or changes
Dan> to the interface generator) or kinda limit what you can do.
It's inevitable that the caller has to do some work in a strongly
typed language.
Dan> Teaching the interface generator about variadic functions is
Dan> probably the easiest thing -- in principle it's not that
Dan> tough (Hey, I did one, I get to say that :) though that does
Dan> depend on what the code in the interface generator looks
Dan> like.
But what code can you possibly generate if the source language is
strongly typed? You can't generate an infinite number of function
definitions.
--
Colin Adams
Preston Lancashire