Re: Allow interspersed named and positional arguments?



Beliavsky <beliavsky@xxxxxxx> wrote:

call foo(a1,x3=a3,a4,x5=a5,x6)

is not allowed.

I wish it were allowed, with the interpretation...
....
Making this change would not provide substantial new functionality,
but I think it would be convenient, and it does not seem too difficult
for compiler writers to implement.

I haven't thought much about the question. I might note that the one
area I would worry about complications in would be in generic
resolution. There are some "funny" rules right now about requirements
for the specific procedures in a generic. In particular, at least one of
the rules relates to the relative position of an argument that
disambiguate by position versus one that disambiguates by name. I
couldn't cite the exact rule without just looking it up and quoting it.

Anyway, I don't know that there would be extra complications there, as I
haven't spent the time to study that aspect in detail, but I can at
least see that there might be. I bet that rule depends on their being no
positional arguments after named ones. That's where I'd look anyway.

--
Richard Maine | Good judgement comes from experience;
email: last name at domain . net | experience comes from bad judgement.
domain: summertriangle | -- Mark Twain
.