View Single Post
Old 05-25-2006   #1 (permalink)
Alex K. Angelopoulos [MVP]


 
 

Adding canonical aliases for Compare-Object, Measure-Object, New-Object

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.


My System SpecsSystem Spec