Vote on this, please.
https://connect.microsoft.com/feedba...edbackID=79879
Of the 9 object cmdlets, 6 have at least a canonical alias composed from the
verb:
ForEach-Object: foreach,%
Group-Object: group
Select-Object: select
Sort-Object: sort
Tee-Object: tee
Where-Object: where,?
Given the central role of object cmdlets and that we also want to provide a
standard, uniform experience for users, I suggest that the remaining 3
cmdlets be given aliases based on their verb as well, like this:
Set-Alias compare Compare-Object
Set-Alias measure Measure-Object
Set-Alias new New-Object
Here's a more detailed justification.
+ It simplifies the aliasing scheme.
Although this adds 3 aliases, it reduces cognitive load when people are
trying to understand aliasing. The object cmdlets are already an exception
to the aliasing system's structure; this makes them internally consistent
and complete.
+ No issue with conflicts
If a keyword 'new' is ever introduced, it can be disambiguated by the same
means as the ForEach-Object alias and the foreach keyword.