4 ms·
Ah, a young lad :) I started tinkering with Turbo Pascal 3 and even have some experience with Pascal on the Apple II. (Not because I am THAT old, but that were
by _ph_ 7y ago
Ah, a young lad :) I started tinkering with Turbo Pascal 3 and even have some experience with Pascal on the Apple II. (Not because I am THAT old, but that were the only computers my school had at the end of the 80ies)
The successors of Pascal are also highly interesting. I used Modula-2 quite a lot, but never got deep into Oberon. I do think one big advantage of Go is, that it so strongly draws on the Wirth languages that it almost can be considered a modern successor.
And I fully agree, one shouldn't use a language these days for general programming without some kind of automatic memory management. Which is the other aspect which drew me towards Go, a nice nativley compiled language with a GC.
- pjmlp 7y agoYeah, quite young indeed. :) I was initially also drawn into Go, mainly due to its Oberon-2 influence as well. Even did a couple of contribution attempts during pre-v1 days , but they weren't that good anyway. However back in the Oberon days, what I liked was the evolution that followed suit, Oberon-2, Component Pascal, Active Oberon and finally Zonnon. As such, I never appreciated the minimalism discussions around Go and not having modern language features. For that we already have Wirth cutting down Oberon features in every Oberon-07 language specification document revision. Still, I do look forward for some Go 2.0 roadmap items to actually land in Go, and advocate for its use in applications that would be otherwise written in C, if Go wasn't a thing. And I also collect examples of actual systems work done in Go, regardless of it not being suitable in the opinions of anti-GC crowd.
- _ph_ 7y agoHonestly, I am quite happy with the role of Go as a better C. A lot of applications still get written in C because C++ isn't making things better. And Go has a lot of higher level constructs than C, so it reaches into much further domains than C. Structs with methods and struct inheritance as well as interfaces give a surprising amount of power. Also, having first class functions and closures gives a ton of power C (and even C++) lack. Add to that the great GC, and there are surprisingly few tasks I consider Go unfit for. I am certainly watching the work on Go 2.0, it is certainly worth to continue working on enhancing the language, but I am very happy how carefully it is done as adding too much complexity to the language would be detrimental. There are only a very few things I miss generics for and usually they can be worked around. I might have to add the disclaimer, that my paying job is mainly about programming in Lisp, so for me there is a high-level alternative to Go, but this also shows me how Go is a great solution for a lot of problems.