2 KiB
Go (Programming Language)
Go (also golang) is a compiled programming language advertised as the the "modern" successor to C and is co-authored by one of C's authors, Ken Thompson. Of all the new language go is one of the least harmful, however it's still quite shit. Some reasons for this are:
- It is developed by Google and presented as "open-source" (not free software).
- It downloads additional dependencies during compilation, a huge defect due to which it's been rejected e.g. from HyperbolaBSD (https://wiki.hyperbola.info/doku.php?id=en:philosophy:incompatible_packages).
- It has (classless) OOP features.
- It has bloat such as garbage collection, built-in complex number type, concurrency and something akin a package manager (go get/install).
- It forces a programming style in which an opening function bracket (
{
) can't be on its own line. LMAO - Huge standard library with shit like crypto, image and html.
- ...
Anyway, it at least tries to stay somewhat simple in some areas and as such is probably better than other modern languages like Rust. It purposefully omits features such as generics or static type conversions, which is good.
How big is it really? The official implementation by Google has whopping 2 million lines of code of self hosted implementation -- that's ginormous but keep in mind Google would likely implement minesweeper in two million lines of code too, so it may say little. Size of specification may be more informative -- that one has about 130 pages (after converting the official HTML specs to pdf), that's a bit smaller than that of C (the pure language part has about 160 pages), so that's not bad.
As of february 2024 there is no code of conduct in the official repo, that's good too.