How high level is Go


(Bruno Melo) #1

Hi people, I’m new to Go and I am curious about how high level is Go compared to another languages. I have a list of what languages to compare and I wanna know where you would classify Go among them.
The languages I’d like to compare are: C, C++, Objective-C, D, Go, Swift, Pascal, Fortran, BASIC, Cobol, C#, Forth and Java.

When I talk about low and high level language I’m referring to how much control the language gives to the hardware and what has more abstraction levels.


(Chris) #2

Anything you can not do with Go directly, you can interface with C code/libraries with ease via cgo. So, personally in my opinion I’d be putting Go up there alongside C.


(Jakob Borg) #3

GPretty much all languages allow interoperability with C. That does not make them equivalent to C.

C forces you to deal with things like memory management and heap vs stack, and allows insecure access to memory by default. Go abstracts all of that away, and provides further abstractions for concurrency and so on. So while you can dig down and access low level details if you want to, I would certainly not place Go besides C.

Besides that I think the question is hard to answer as it’s very subjective. How do you order all the languages that are not Go - is C# “higher level” than Java? Or Basic?


(Eric Lindblad) #4

As long as the subject is about “Go compared to another languages”, I wonder how Go would fit into the Useful-Safe, going towards Nirvana, description of SPJ.

Haskell is useless