In our custom extension, we are currently injecting values when previewing templates (or any other page with arguments) by overriding the preprocessor's newFrame() method so that even root-level pages (i.e., frame->depth = 0) are derivatives of PPTemplateFrame_Hash. This then allows us to use tags like {{#preview:argument|value}} in the template code so the template can be live-previewed with different values. As you can imagine, this is absolutely fantastic for testing and development.
With the recent alterations to the parser framework, and the move towards Parsoid, this functionality has started being hit by deprecations, making it either more difficult or perhaps even impossible to do in 1.35 and above. While this currently affects only our wiki (that I know of), I believe it would be a useful feature to have in the base code, although tags within the template code may or may not be the best method for it. I can envision something like the API sandbox, for example, where you can specify values on a form instead. The key point, however, is to be able to do this //without// saving the template. Template testing pages and the like are certainly useful for this, but are less than ideal since they cannot be tested without saving the page, possibly repeatedly during testing. Live injection would provide a much better mechanism overall.
Edit: in addition to the above, we have other tags that allow injecting argument values at the root level, so these would need a mechanism for doing so as well. In normal calls to a root level PPFrame->getArgument() and similar, it simply returns false. In ours, it returns values set on the template frame within the parser tag. (This allows setting default values for arguments only once, and provides what amount to local variables.)