I received some rather good suggestions when I asked a very similar question here: Accessing Subroutine Arguments
In reply to Re: Your named arguments by vek in thread Your named arguments by Juerd