A shell that uses objects is asinine. It looks like a bunch of java idiots tried to make a shell. If I wanted objects I would use a programming language, this is supposed to be scripting.
What's asinine is dealing with a bunch of text parsing BS every time I want to pipe some simple data from one program to another. Code to deal with spaces and weird symbols, to convert between hexadecimal and integers and comma-filled integers, to exclude header and footer lines. It wastes a lot of time and makes my scripts failure-prone. I'm speaking as somebody who has a lot of Unix experience and has barely used Powershell, so I don't know how Powershell stacks up in practice, but it's clear to me that an object system is superior in principle.
"If the code and the comments disagree, then both are probably wrong." -- Norm Schryer