G'day all. On Fri, Apr 19, 2002 at 12:44:49AM -0400, Dan Sugalski wrote:
> Ah. Hmmm. Well, we're already attaching some metadata to ops in a > different way--that's what the op and inline keywords are doing. For > metadata that use parameters I can see a scheme like you're > proposing, though for others it doesn't work. The reason I tried a general mechanism is that I didn't know exactly what the optimizer would need before I started. I still don't. I probably won't even when the optimizer is working. A general approach gives people a way to experiment, though admittedly little else. Personally, I'm not sold on the idea either. (My last attempt to send out feelers on the issue succumbed to Warnock's dilemma.) > So things like the potential exception-thrower, dead-end, or > deprecated probably ought to be done the way we're doing now, with > things that take parameters done differently. (Though I can see > parenthesized parameters--branch(3), say) You could always use a Perl 5 modifier-like syntax: inline op eq(in PMC, in PMC, inconst INT : branch_target) : throws(strict_refs), alters_state { # ... insert code here ... } Considered it but didn't want to write the parser given that it was a quick hack. Cheers, Andrew Bromage