4 ms·
The reason Rob's statements matter is because he's the authority on Go. If you had been a primary inventor of a new language, I'm guaranteeing you'd feel entitl
by BuckRogers 9y ago
The reason Rob's statements matter is because he's the authority on Go. If you had been a primary inventor of a new language, I'm guaranteeing you'd feel entitled to decide what it is and is not. Not have "pjmlp" debate endlessly over something you had already stated was simply not true.
A lot of things work, doesn't mean they meet strict litmus tests (which matter, because definitions matter), nor does it mean it's a good idea.
- pjmlp 9y agoWhen a language is set loose to the world it belongs to its users, and whatever they decide to do with it. Anyone is free to just fork Go and do whatever they feel like with it, regardless of what Rob thinks. That is the beauty of MIT license. So given that Oberon is accepted as a systems programming language in computer science, with multiple published papers and books across two decades, heavily used in OS research at a couple of European universities during the 90's and an influence to Go, with hardware and compilers still being sold for systems programming, although in small scale. What are the actual technical features Go is lacking that makes it impossible to be used for systems programming, given Oberon's influence on its design?
- BuckRogers 9y agoYour concerns have already been answered. Most succinctly stated by two points. 1) A lot of things work, it doesn't make them good ideas. 2) Go doesn't meet the strictest litmus tests of a systems language, never did, never will. It's only a systems PL only if you relax your definition of what it is. Go's own creator says it's not and if any one person is the authority on this topic it's him. There are platforms that meet all definitions, those are definitely systems PLs.
- pjmlp 9y agoIf people cared about litmus tests, whatever that means, JavaScript would never have left the browser. I only care about what Computer Science books and ACM SIGPLAN papers accept as systems programming languages, not random opinions in online forums. Thankfully both of our opinions are meaningless to Go users.
- BuckRogers 9y agoIt doesn't matter what people like yourself think or attempt with a given technology. This is about technological definitions. Go is not a systems PL by the strictest measures available, that's a fact. Designers of C++, Rust, D and Go for the most part agree on that. You're the only odd man out. Redefining terms or loosening the standards for quality is an intellectually deficient venture. Some may partake in that, myself and others refuse to. It's best to leave it at that, it boils down to intellectual honesty vs dishonesty to push your viewpoint.
- steveklabnik 9y agoRust’s designers aren’t really interested in playing the “what is a systems language” game, honestly. We are even considering abandoning the term entirely when describing Rust, as we’re not sure it’s a particularly useful term.
- BuckRogers 9y agoA strong litmus test as the one given by Andrei (creator of D for those not paying attention), settles the definition well enough. I'll even back off that claim because some absolutely refuse to accept a litmus test to meet definitions of things, as they're so hellbent on not being excluded. Unfortunately that's how language and the world works, not everyone gets their way. So we'll just settle on once there's a commercially successful operating system built in a GC'd language then I'll eat crow but till then they're all going to be C/C++/D/Rust or built on similar abstraction layers. Go ahead, wash away Linux, iOS and Windows in the competitive landscape with something written in Go. Let's see it, that's believing after all. It'll never happen because it's unsuited and inferior for that purpose.