Hacker News new | past | comments | ask | show | jobs | submit login

I think I may quote this when the periodic "text input/output is stupid" threads come up.

"The output of curl.exe (and every other exe or other command external to PowerShell) is System.String.

"So changing curl to run curl.exe instead ofInvoke-WebRequest` would break this script because the output type would change."




What that actually means is that if you change a command so that it runs a totally different program the script would break, which is equally true in a stringly-typed world.


Though in the stringly-typed world, it's when the format changes from:

  A B C
to:

  A B D C
Or some other such thing. Your string processing code (perl, sed, sort, uniq, etc.) expects certain things that have now changed because <reasons> (which may be totally reasonable or unreasonable).


Yes, but if it's a totally different program there's no real reason to expect the output to be even slightly similar.


That isn't a reason to go back to only passing strings between processes, that's like saying "I can't assign this string to an integer so all strongly typed languages are stupid."




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: