4 ms·
They're both phrased unnaturally, IMO. The suffix "for Linux" strongly implies it's software for use on Linux. It's like the "4j" and "4win" suffixes, implying
by rcoveson 6y ago
They're both phrased unnaturally, IMO.
The suffix "for Linux" strongly implies it's software for use on Linux. It's like the "4j" and "4win" suffixes, implying software built for the Java and Windows environments, respectively.
What's more, Windows or DOS as an adjective of subsystem bind more tightly than "for Linux". So if you were to start dropping parts of the name, you'd drop "for Linux" first. Except you can't, because then it's just the Windows Subsystem.
LSW would have been a much more natural name. In a conversation about Windows subsystems, you could refer to it as the Linux Subsystem. If other operating systems picked up on the idea, they would have their own Linux subsystems, e.g. Linux Subsystem for macOS. If you wanted to check if your OS had anything like it, you could search "is there a Linux subsystem for FreeBSD?" Which might turn up results about the Linux ABI in FreeBSD. Speaking of which, imagine if it had been named the FreeBSD ABI for Linux. What an awful pattern! You can't even repeat the pattern unless both modifiers are proper nouns! Could you have called the VFS Subsystem the "FreeBSD Subsystem for VFS"?
- reaperducer 6y agoThey're both phrased unnaturally, IMO. This is why we teach sentence diagramming in elementary school. Maybe the person who came up with "WSL" wasn't a native English-speaker?
- WorldMaker 6y agoSomething that should come up early in sentence diagramming but often isn't explained well enough is that sentence diagrams aren't context free, often can be ambiguous, and depend on the context of the speaker to determine referents. Sentence diagrams in the real world are rarely as easy as elementary school examples. In this case, the context known to the speaker but often missed when trying to "sentence diagram" WSL involves the part "Windows Subsystem". That referent, to which the original author was quite familiar, is invoked in WSL as a single noun in part of the larger noun phrase, and while you could continue to sentence diagram break "Windows Subsystem" into constituent parts here, it is important to remember it as a single connected "atom" to which "for Linux" modifies in the overall noun phrase of "(Windows Subsystem) for Linux". Given that context/referent, the sentence diagram here is unambiguous to the original team/"speaker". It's the audience with much less familiarity with the referent/context in question that has ambiguity problems in trying to "sentence diagram" the noun phrase.
- Fnoord 6y agoIt follows the same naming convention as SFU (Windows Subsystem for Unix) [1] which was equally confusing. My belief (!!), back then, was that it was intentionally named confusing. Back when it came around, Microsoft was under scrutiny for monopoly behavior. They didn't want Windows to be compatible with Unix in any way; they wanted the world to run Windows (9x, NT) only. That was my belief/theory, as it is now I don't have anything to back it up as it is though. Your theory might equally be viable. [1] https://en.wikipedia.org/wiki/Windows_Services_for_UNIX https://en.wikipedia.org/wiki/Windows_Services_for_UNIX
- kelnos 6y agoI expect it's branding. I'm having trouble coming up with a name that sounds unambiguous while keeping "Windows" as the first word. And I doubt Microsoft's branding people would be happy if "Linux" appeared in the title before "Windows".
- zhte415 6y agoAnd then one learns Shakespeare in secondary school where all that 'sensible' diagramming and rigidity jumps out of the window.
- zapzupnz 6y agoIt's Microsoft. They came up with Xbox, Xbox 360, Xbox One, Xbox One X, and now Xbox Series X. WSL is a drop in the bucket of stupid naming schemes.
- dredmorbius 6y ago"<X> <services|subsystem> on <Y>" strikes me as unambiguous.
- mattnewton 6y agoBut it might have the problem of branding the product as a “Linux subsystem” and they want to sell it as a “windows subsystem”, that runs Linux code