4 ms·
In case it's not obvious, the "Plan 9" in the Go Assembler's name comes from https://en.wikipedia.org/wiki/Plan_9_from_Bell_Labs https://en.wikipedia.org/wiki/P
by rob74 2y ago
In case it's not obvious, the "Plan 9" in the Go Assembler's name comes from https://en.wikipedia.org/wiki/Plan_9_from_Bell_Labs https://en.wikipedia.org/wiki/Plan_9_from_Bell_Labs, and the reason for that is of course that two of the "Go founders" (Rob Pike and Ken Thompson) are Bell Labs alumni. Some more background on the Go assembler: https://go.dev/doc/asm https://go.dev/doc/asm
- colechristensen 2y agoThe same people used the same name for two computer related projects. That's certainly an ... interesting choice.
- lagniappe 2y agoDefinitely don't look into Nix then
- lloeki 2y agoIt is, essentially, the same project. Plan9 is the umbrella term for the whole operating system. https://plan9.io/sys/doc/comp.html https://plan9.io/sys/doc/comp.html IIRC before Go was self compiling, it was compiled using 9c, and its architecture inherits from 9c. EDIT: some nearby threads got the details better!
- floren 2y ago> IIRC before Go was self compiling, it was compiled using 9c, and its architecture inherits from 9c. Back in those days I actually found that, with a few small tweaks, I could compile the Plan 9 operating system using Go's C suite. We didn't pursue it further but this was one of the options we looked into for cross-compiling Plan 9 from other operating systems.
- stonogo 2y agoSince to Go C suite was ported Plan 9 compilers, I'm not sure why this would be a surprise. Since I'm obviously missing something would you share your thoughts on what challenges you expected?
- floren 2y agoIt wasn't any surprise, nor did I intend to imply it was surprising, just relaying an anecdote. There were a few differences that required small tweaks to the source, but we got the Plan 9 kernel compiled with the Go C compilers in a day.
- colechristensen 2y agoInteresting trivia about the connection to plan9 the operating system. >Go uses its own internal assembly language called Plan9. Plan9 is the name of the OS. You wouldn't name a programming language "Linux", even if Linus created it and it was super related or not at all related.
- seryoiupfurds 2y agoIt's not "plan9 assembly language" as in "the assembly language named plan9". Read it as "the otherwise unnamed custom assembly language used in the plan9 operating system". The article simply misspoke by saying that the assembly language is "called plan9".
- debugnik 2y agoNo way, the article consistently refers to the assembler syntax as "Plan9" throughout the text and title and they talk about "x86 Plan9" and "arm Plan9". Considering there is no introduction at all to this beyond "I discovered it's called Plan9", I'm assuming the author really thinks this is a language widely named "Plan9".
- colechristensen 2y agoEDIT: it seems the author is just mistaken, the Go assembler is just referred to by everyone else as "Go Assembler" and nothing to do with plan9, other than the various connections to its origin.
- p_l 2y agoThe reason for that is not just being alumni, but also that Go implementation started on top of Plan 9's compiler infrastructure that was later rewritten in pure Go
- deleted 2y ago[deleted]