IF MS (or some company like them) never existed chances are we'd be paying $5000 for our 286 machines exclusively sold by IBM. Or perhaps we'd paying $10000 for the newest mac model.
Yes, because we know that all of IBM's computers before the PC were made up exclusively of IBM parts. You should have seen their steel foundry in those days - impressive!
The missiles are called "ballistic" because they have a coasting phase. They are certainly not "ballistic" in the bullet sense since they carry fuel and are initially self-propelled. There is no technical reason why these missiles can't be improved to use guided decent to produce a more unpredictable path.
In any case, my point was just that a space elevator platform doesn't move like either the moon or a conventional ICBM anyway.
I'm not an expert in Unix-based sockets so I'm not aware of the difference between Unix-domain sockets and networked sockets beyond what is implied in your comment. So it would be risky to assume Stevens' detailed position based on my high-level understanding.
I can't prove the performance case and I doubt you can prove the opposite either. Yet FIFOs and Pipes continue to be used despite your belief that sockets are better.
Anyway, I don't think I have more to contribute on the subject. I've learned some things I didn't know as a side-effect of this discussion so thank you for participating.
"Any practical GUI solution is going to require that input events be communicated back to the clients."
Usually drawing is done by a different entity than processing input. Does your graphic card send you mouse notifications?
"I'm not "dissing" Stevens; as you said, anyone can make a mistake. It's still an embarrassing omission given the subject of the book. He'd probably agree with me on that."
I phrased my statement badly. What I meant is that in general I don't subscribe to the notion that we should blindly accept what a person says just because they're considered to be an expert.
So I didn't mean to imply that Stevens made a mistake and he wouldn't agree with you because he explicitly defended his choice in the preface. He wrote a whole book about sockets which makes up Volume 1 of Unix Network Programming
To be fair he differentiates between nonnetworked IPC and IPC across a network rather than claiming that sockets aren't IPC at all. On the other hand, he clearly doesn't advocate that networked IPC is a better approach for single-machine applications.
Obviously X11's approach isn't single-machine, but the question is whether that approach compromises the value of local GUI operations. This is the core of our disagreement.
"In his words, if we can hit an enemy ICBM travelling at many times the speed of sound with a laser, surely we can keep one focused on a friendly target with a known/desired trajectory"
But we haven't demonstrated that we can hit an enemy ICBM with a laser, so what's the point?
"What? The application we're talking about is X11, and the X11 protocol requires two-way communication."
No, this discussion is about GUI subsystems and how X11 stacks up against the others. The fact that X11 requires two-way communications doesn't mean it's essential in other solutions.
I love your statement about a FIFO solution "mimicking' sockets as if sockets were some fundamental building block rather than just one arbitrary solution out of a large set of possible solutions.
""Oops". That's a fairly embarrassing omission for a book with Unix, network programming, and IPC all right there in the title."
It's possible for anyone to make a mistake but I don't think you'll get much respect dissing Richard Stevens among Unix developers.
And this is based on the fact that Java was a product that ran both on servers and on desktops. So to support the contention that MS was a monopoly, Sun's market share was excluded, but in order to claim that MS had harmed them, Sun had to be considered in the same market. Thus the contradiction.
Just to set the record straight on Java on Windows, it ran faster than Sun's own JVM. MS however did make a major blunder. If they had simply ignored Java instead of legitimizing it, we probably wouldn't still be talking about it.
So those who were found to have been harmed by MS's monopoly aren't relevant to a discussion of whether there really was a monopoly? Interesting logic.
It's hard to argue with such are well-begged argument but if Sun was in the "server market" and not the "consumer market", how could they have been harmed by MS's actions in a market they didn't participate in?
Well in the application we are talking about there isn't any need for two-way communication. Besides, if you look at Stevens' example you'll see only N+1 one-way pipes are required, not 2N pipes (where N is the number of clients).
Of course Windows has duplex pipes so it's not an issue there.
Interestingly enough Stevens doesn't consider sockets to be an IPC mechanism.
The recent anti-trust scam is about defining the market so that the target is a monopoly by definition. That's why "server" computers (that might even use PC hardware) were artificially excluded from the "market" so that MS could be considered a monopoly.
"Their job is to look out for the interests of the stockholder."
But the job they really do is to look out for the interests of board members in general (e.g. if you give me big bucks for being CEO then I'll give you big bucks for being CEO through my buddy who sits on your board of directors).
It's not hypocritical "from a certain point of view".
So basically you're not principle-based, but you know what you like.
So you're saying that MS is forcing the code to do what MS wants rather than what it wants to do?
You see how ridiculous this anthropomorphism of code sounds?
IF MS (or some company like them) never existed chances are we'd be paying $5000 for our 286 machines exclusively sold by IBM. Or perhaps we'd paying $10000 for the newest mac model.
IBM was a lot more street-savvy as well. MS thought they didn't need to contribute money to politicians, IBM new better.
Now MS learned their lesson from the antitrust case - you must pay the protection money if you want the government off your back.
"They did it -- without IBM parts!"
Yes, because we know that all of IBM's computers before the PC were made up exclusively of IBM parts. You should have seen their steel foundry in those days - impressive!
"By whom?"
Anyone who didn't buy an IBM brand PC would be a candidate.
"But IBM *did* actually reform."
Really, how so?
"Yep - it's not like they have never done anything like that before (Stacker)."
That was about violating patents, not copying code.
I'm hoping for http and html to "drain out". They're a lot more crufty than any browser.
The missiles are called "ballistic" because they have a coasting phase. They are certainly not "ballistic" in the bullet sense since they carry fuel and are initially self-propelled. There is no technical reason why these missiles can't be improved to use guided decent to produce a more unpredictable path.
In any case, my point was just that a space elevator platform doesn't move like either the moon or a conventional ICBM anyway.
I didn't know ICBMs traveled in a known path like the moon does. But the main topic is a space elevator so that's where the ICBM analogy fails anyway.
I'm not an expert in Unix-based sockets so I'm not aware of the difference between Unix-domain sockets and networked sockets beyond what is implied in your comment. So it would be risky to assume Stevens' detailed position based on my high-level understanding.
I can't prove the performance case and I doubt you can prove the opposite either. Yet FIFOs and Pipes continue to be used despite your belief that sockets are better.
Anyway, I don't think I have more to contribute on the subject. I've learned some things I didn't know as a side-effect of this discussion so thank you for participating.
"Any practical GUI solution is going to require that input events be communicated back to the clients."
Usually drawing is done by a different entity than processing input. Does your graphic card send you mouse notifications?
"I'm not "dissing" Stevens; as you said, anyone can make a mistake. It's still an embarrassing omission given the subject of the book. He'd probably agree with me on that."
I phrased my statement badly. What I meant is that in general I don't subscribe to the notion that we should blindly accept what a person says just because they're considered to be an expert.
So I didn't mean to imply that Stevens made a mistake and he wouldn't agree with you because he explicitly defended his choice in the preface. He wrote a whole book about sockets which makes up Volume 1 of Unix Network Programming
To be fair he differentiates between nonnetworked IPC and IPC across a network rather than claiming that sockets aren't IPC at all. On the other hand, he clearly doesn't advocate that networked IPC is a better approach for single-machine applications.
Obviously X11's approach isn't single-machine, but the question is whether that approach compromises the value of local GUI operations. This is the core of our disagreement.
"Hitting a high velocity target with a laser is the challenge they were talking about, and that IS doable."
So you say, but has it been done?
"In his words, if we can hit an enemy ICBM travelling at many times the speed of sound with a laser, surely we can keep one focused on a friendly target with a known/desired trajectory"
But we haven't demonstrated that we can hit an enemy ICBM with a laser, so what's the point?
"What? The application we're talking about is X11, and the X11 protocol requires two-way communication."
No, this discussion is about GUI subsystems and how X11 stacks up against the others. The fact that X11 requires two-way communications doesn't mean it's essential in other solutions.
I love your statement about a FIFO solution "mimicking' sockets as if sockets were some fundamental building block rather than just one arbitrary solution out of a large set of possible solutions.
""Oops". That's a fairly embarrassing omission for a book with Unix, network programming, and IPC all right there in the title."
It's possible for anyone to make a mistake but I don't think you'll get much respect dissing Richard Stevens among Unix developers.
Not at all. The argument that it is "all about Sun" is just your straw-man.
And this is based on the fact that Java was a product that ran both on servers and on desktops. So to support the contention that MS was a monopoly, Sun's market share was excluded, but in order to claim that MS had harmed them, Sun had to be considered in the same market. Thus the contradiction.
Just to set the record straight on Java on Windows, it ran faster than Sun's own JVM. MS however did make a major blunder. If they had simply ignored Java instead of legitimizing it, we probably wouldn't still be talking about it.
So those who were found to have been harmed by MS's monopoly aren't relevant to a discussion of whether there really was a monopoly? Interesting logic.
It's hard to argue with such are well-begged argument but if Sun was in the "server market" and not the "consumer market", how could they have been harmed by MS's actions in a market they didn't participate in?
Well in the application we are talking about there isn't any need for two-way communication. Besides, if you look at Stevens' example you'll see only N+1 one-way pipes are required, not 2N pipes (where N is the number of clients).
Of course Windows has duplex pipes so it's not an issue there.
Interestingly enough Stevens doesn't consider sockets to be an IPC mechanism.
The recent anti-trust scam is about defining the market so that the target is a monopoly by definition. That's why "server" computers (that might even use PC hardware) were artificially excluded from the "market" so that MS could be considered a monopoly.
"Their job is to look out for the interests of the stockholder."
But the job they really do is to look out for the interests of board members in general (e.g. if you give me big bucks for being CEO then I'll give you big bucks for being CEO through my buddy who sits on your board of directors).
If AMD ends up getting money from this and you don't, it'll be exactly like the job they did on Microsoft.