This still seems like pretty good protection for someone who has written an interpreter that performs "the best" vis-a-vis any clones. From the end user/customer's perspective, who cares how the function's interface/arguments are structured? What matters is how well the functions are written and thus how well the interpreter, and the programs it runs, perform. Of course, programmers might care about how well interfaces are designed, but unfortunately we can't sue people for crappy interfaces.