Blogger :
Commonality
All posts :
All posts by Commonality
Category :
XML
Blogged date : 2008 Oct 18
In the latest
entry in the official PowerShell Blog,
Jeffrey Snover leaves a little tidbit about a change coming on the next CTP of PowerShell
V2:
The cmdlet keyword is going away and we'll just have function.
Notice that now you can specify the [Parameter()] attribute on parameters.
When you do that, we treat the function like a cmdlet.
I don’t mind getting rid of the cmdlet keyword; honestly, but is the
new syntax that much of an improvement? So now instead of an explicit keyword telling
you whether something is a function of a cmdlet, you have an attribute spilled around
the function parameters? Not sure if that’s good or not, but sounds confusing to me,
at first glance.
Maybe what rubs me the wrong way, however, is the [Parameter] attribute.
I’m OK with using an attribute to specify the metadata associated with the parameters,
honestly. But the whole Param + [Parameter] thing just reads
redundant and ugly:
function Emit-XML {
Param ([Parameter(Mandatory=$true,ValueFromPipeline=$true)]$object)
...
}
Can anyone more familiar with this chime in? Am I the only one slightly bothered by
this?