Live data from Hacker News

“It's easier to port a shell than a shell script” (1998)

gopher.quux.org

31–40 of 68 posts

Re: “It's easier to port a shell than a shell script” (1998)

#32
post #5

I thought this was quite amusing when I read it back in the late 90's. At one point their proposed shell was called "Monad". I wondered "Why do they want to do this?" I have gone to a number of conferences with MS employees over the years, especially MS lawyers, and with respect to software, they often seem like they have been indoctrinated into a cult. As if the existence of software outside of MS Windows does not e…

You should try powershell. It's actually pretty good and is much better than unix shells.

It's almost better. It's good for automating some system administration tasks. It's not so good for text processing; there are a number of traps and mis-steps. The object pipelines are great, but have to be held in memory (you can't pipe an intermediate state to disk). By default text output wraps at the terminal width even if you're writing to a file, which is just stupid and inconvenient for further automatic processing.

In order to write a script, you first have to change your system security settings.

More subtly, because it's comparatively new it's not very dogfooded and there isn't a rich source of examples. UNIX systems usually have lots of shell scripts in /etc for you to learn from.

Re: “It's easier to port a shell than a shell script” (1998)

#33
post #5

I thought this was quite amusing when I read it back in the late 90's. At one point their proposed shell was called "Monad". I wondered "Why do they want to do this?" I have gone to a number of conferences with MS employees over the years, especially MS lawyers, and with respect to software, they often seem like they have been indoctrinated into a cult. As if the existence of software outside of MS Windows does not e…

You should try powershell. It's actually pretty good and is much better than unix shells.

Haha, yes. Microsoft has always delivered things that are "better" than the standards they are written against.

Re: “It's easier to port a shell than a shell script” (1998)

#34
post #12
post #8

Earlier quoted context omitted.

Alas, it's not a gopher:// link; gopher is just the name of the host. (Perhaps it also is a gopher server, or once was.)

It's running pygopherd http://gopher.quux.org:70/devel/gopher/pygopherd

Exactly, that's how I stumbled upon this. PyGopherd has a very nice feature that supports serving gopher and http on the same port...

Re: “It's easier to port a shell than a shell script” (1998)

#35

Seeing a link to a gopher:// site and discovering that Safari in iOS still supports it made my day.

Unfortunately none of the current latest versions of top browse supports gopher afaik. Firefox dropped it at 3.6 (but still possible with OverbiteFF).

Edit: here's the gopher link for it gopher://gopher.quux.org/0/Humor%20and%20Fun/Microsoft_KSH.txt|/MBOX-MESSAGE/1

Re: “It's easier to port a shell than a shell script” (1998)

#36

So the title of this link is from the title of the email. That in turn is a quote from Larry Wall, who do not seem to be present in the story at all.

Well, I assumed that the point of the quote is that it's fitting for the story, mentioning Larry was for attribution (which I see got removed from the title, I don't mind but I think it should've stayed in there for credit)

Re: “It's easier to port a shell than a shell script” (1998)

#37
post #19

Earlier quoted context omitted.

I know enough and have had enough tangential contact with PowerShell to know that it works on a fundamentally different paradigm, as it does not pipe text, but objects. As such, it's hard to say it's "better" since it's so different. I would hazard that it's better some respects for some things, and the reverse is true as well. It fits well into windows, but would not fit well into UNIX systems, where most things are…

That said, if they are easily comparable to bash, ksh, etc I specifically contrasted them against Bourne or C-like shells, so I thought that much was clear that they are not. I have tried PowerShell. I think this comment summarizes it well: https://lobste.rs/s/vzjalp/why_i_dislike_systemd/comments/sh...

That's because shells on Windows aren't management tools. That role is filled by Group Policy.

Re: “It's easier to port a shell than a shell script” (1998)

#38
I could have easily put Korn in his place if I had been that Microsoft person.

Ah, but no; I would end up saying some things that would have been too ironic to come from a Microsoft person, such as:

- why are you Unix people making a POSIX standard which covers the shell command language, if you're going to insist on one reference implementation being used on everyone? Just dump the source code listing of that into a document, add a few comments here and there, and call it the standard.

- isn't it healthier to have multiple implementations rather than a "monoculture"? Do we all use the same C compiler?

- the MKS shell could be made to diagnose and reject the use of Korn shell extensions, helping the programmer write a more portable script.

- wait, did you say your name was Korn, or Bourne? I didn't quite hear you from the back. If you're Mr. Korn, I would appreciate it if Mr. Bourne would now stand up, if present, and ask you why you don't just use the shell with his name on it.

Re: “It's easier to port a shell than a shell script” (1998)

#39

I could have easily put Korn in his place if I had been that Microsoft person. Ah, but no; I would end up saying some things that would have been too ironic to come from a Microsoft person, such as: - why are you Unix people making a POSIX standard which covers the shell command language, if you're going to insist on one reference implementation being used on everyone? Just dump the source code listing of that into a…

>why are you Unix people making a POSIX standard which covers the shell command language, if you're going to insist on one reference implementation being used on everyone? Just dump the source code listing of that into a document, add a few comments here and there, and call it the standard.

Any shell that isn't compatible with the _reference_ implementation of that shell is flawed.

Re: “It's easier to port a shell than a shell script” (1998)

#40

I could have easily put Korn in his place if I had been that Microsoft person. Ah, but no; I would end up saying some things that would have been too ironic to come from a Microsoft person, such as: - why are you Unix people making a POSIX standard which covers the shell command language, if you're going to insist on one reference implementation being used on everyone? Just dump the source code listing of that into a…

>why are you Unix people making a POSIX standard which covers the shell command language, if you're going to insist on one reference implementation being used on everyone? Just dump the source code listing of that into a document, add a few comments here and there, and call it the standard. Any shell that isn't compatible with the _reference_ implementation of that shell is flawed.

The POSIX standard that came into effect in 1990 doesn't contain or assert any reference implementation.

A reference implementation accompanying a document can be at odds with the specification. If a document says that a reference implementation shall be held correct if there is any discrepancy, then specification is greatly diminished in value. It's obviously just a best effort to describe the reference implementation, and not a forceful standard.

What if a buffer overflow is discovered in the reference implementation? Everyone must have the same one to be compatible?

Post reply on HN