std
go

std | go | |
---|---|---|
1 | 2,232 | |
19 | 126,360 | |
- | 0.8% | |
6.8 | 10.0 | |
12 months ago | 3 days ago | |
Go | Go | |
Apache License 2.0 | BSD 3-clause "New" or "Revised" License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
std
go
-
Learning GO: A new beginning
Learning things is fun so I've decided it's time to learn go and because I enjoy making these little series I thought I'd write about it too.
-
A 10x Faster TypeScript
It's not just system calls. E.g. reflection package uses unsafe too: https://github.com/golang/go/blob/master/src/reflect/value.g... .
-
How to distrust a CA without any certificate errors
Unfortunately, OS vendors like microsoft are quite incompetent at running root stores https://github.com/golang/go/issues/65085#issuecomment-25699...
-
The cost of Go's panic and recover
I don't think any reasonable member of the Go community would claim that any aspect of the language and its standard library is perfect. The many open issues on https://github.com/golang/go attest to that.
One example, if I may: the errors.As function is far from ergonomic. It would have been much better if generics had come to the language before that function was added to the standard library. Modern alternatives exist: https://pkg.go.dev/github.com/jub0bs/errutil
-
Tokio and Prctl = Nasty Bug
A similar issue in Go, that I've encountered in real code: https://github.com/golang/go/issues/27505#issuecomment-71370...
In a nutshell, if you want to use the death signal, which is very handy and useful, you also need to lock an OS thread so that it can't be destroyed. Fortunately I'm only spawning one process so I don't need to jump through hoops, I can just dedicate a thread to it, but it would be inconvenient to want to spawn lots of processes that way.
Speaking more generally, a lot of things that I learned in the 200xs apply to "processes", and things I just osmosed over the years as applying to "processes", were changed to apply to "threads" over the decades and a lot of people have not noticed that, even now. Even though I know this, my mental model of what is associated to a thread and what is associated to a process is quite weak, since I've not yet needed to acquire a deep understanding. In general I would suggest to people that if you are dealing with this sort of system programming that you at least keep this general idea in your head so that the thought pops up that if you're having trouble, it may be related to your internal beliefs that things related to "processes" are actually related to "threads" and in fact just because you did something like set a UID or something somewhere in your code doesn't necessarily mean that that UID will be in effect somewhere else.
- Poor spill decisions making code 14% slower
-
5 Best Programming Languages to Learn: Decoding the Future
3. Go (Golang): The Performance Powerhouse
-
How Gost-DOM avoids making HTTP calls
This article is about the implementation of Gost-DOM, the headless browser written in Go.
- Go 1.24
-
Extensible WASM Applications with Go
Unfortunately Go doesn’t support exporting DWARF for WASM atm, so printf is the only option.
https://github.com/golang/go/issues/33503
What are some alternatives?
goptional - An implementation of the Optional functor in Golang.
zig - General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.
fpGo - Monad, Functional Programming features for Golang
v - Simple, fast, safe, compiled language for developing maintainable software. Compiles itself in <1s with zero library dependencies. Supports automatic C => V translation. https://vlang.io
go-optional - A library that provides Go Generics friendly "optional" features.
Nim - Nim is a statically typed compiled systems programming language. It combines successful concepts from mature languages like Python, Ada and Modula. Its design focuses on efficiency, expressiveness, and elegance (in that order of priority).
