3 ms·
Go was never meant to be a low-level language. It was called a systems language in that sense that system management software was written with it, rather than s
by karmakaze 3y ago
Go was never meant to be a low-level language. It was called a systems language in that sense that system management software was written with it, rather than say operating systems and the like. It was to be a more tractable language than C/C++ for the many devs at Google.
- acuozzo 3y ago> Go was never meant to be a low-level language. I didn't make this claim.¹ With that being said, high(er)-levels languages can be used for OS development and the like. There's considerable work in providing the underpinnings necessary for the abstractions, but it's doable and has been done. There are plenty of archived discussions from the nascent-Go days on this topic. Using Go in the places C is used was discussed and, given that a directory named "freestanding" exists in the source tree from that time, I'm inclined to believe it was seriously considered. [1] Also, FWIW, C is not a low-level language. As with any other systems language, a generous amount of work has to be done in order to make its abstractions map to the computer architecture. A macro assembler is a low-level language.