3 ms·
“Inferior” and “superior” are broad terms. Architecturally speaking, Powershell (and other modern shells) are a huge improvement. But that’s only half the stor
by hnlmorg 2y ago
“Inferior” and “superior” are broad terms.
Architecturally speaking, Powershell (and other modern shells) are a huge improvement. But that’s only half the story.
Syntax wise, I find powershell a step backwards. It’s too verbose. Bash is too far the other way but if I’m using a REPL then I’d rather have something too terse than too verbose. Granted that’s just my preference but we are back to subjective arguments.
Ubiquity is another consideration. If you’re writing multiplatform bootstrapping code then Bash is a better option than Powershell. And we are back to subjective arguments again.
Broad terms are only true if you can agree on a specific context. But then they’re no longer broad and instead you’re relying on everyone agreeing to that narrow subjective definition.
- CrimsonCape 2y agoAs a thought experiment, Get-ChildItem is a poor choice of API. Instead, it should really just be Get<T> <args> Get<Folder> -path "C:\Users\Me\My Documents" Would return a match of type <Folder|nil> similarly Find<Folder> -path "C:\Users" -match "Me" Would return a match of type <Folder[]|nil> or Find<Any> -path "C:\Users" -match "Me" Would return a match of type <Any[]|nil> where Any is File|Folder|DotFile|Symlink In as few lines I provided a clean API which unfortunately doesn't exist in any one language but rather borrows from multiple languages, <T> representing C# generic types, File|Folder representing an F# union sum type, Any type a la Rust.