notation for hashes is a bit different, @{key=val; key2=val2} to define, $var.key to access.
unfortunately also some vbscript. like the way you compare things. there is no way of enforcing a comparison operator to do a numeric compare.
another annoyance, is that 'pwd' tries to fit 4 representations of your current path in the current window-width. which then causes the relevant information to be truncated. but i think this can be controlled with a display.xml file
escaping is with back-quote, instead of back-slash, as the rest of the world does it. but at least, for the first time, ms actually figured escaping is useful. unfortunately you cannot specify characters by character code with escapes - like "\x1b" or "\033"
You can define anonymous functons, by just specifying them as code blocks {...} like with perl 'map'. a named function can have positional parameters and named parameters. like most unix commands, can have options, and parameters
the current path is replaced by the concept of 'current-location' which is not nescesarily a path on a local drive.
nice things are: exception handling, lambda functions, everything is an object, it is very easy to parse xml. ( just assign it to a object typed as [xml] )
hopefully beta, is that it uses enormous amounts of memory. after playing with it for half an hour, it had 100 M allocated.