3 ms·
Go works reasonably well on openbsd despite syscall churn. You really only need to make it to uname() to decide what to do.
by tedunangst 8y ago
Go works reasonably well on openbsd despite syscall churn. You really only need to make it to uname() to decide what to do.
- int_19h 8y agoIt also means that older compiled code might not necessarily work on new releases. This is probably not a big deal on OpenBSD, but on e.g. macOS it was big enough that they moved to libc.
- favorited 8y agoBy contrast, Go would break constantly on macOS betas. The Mac/iOS kernel interface is libSystem, not direct syscalls. Thankfully, they changed that in Go 1.11 (https://golang.org/doc/go1.11#runtime https://golang.org/doc/go1.11#runtime)
- loeg 8y agoThat's not really contrast; OpenBSD doesn't maintain syscall ABI stability and only supports releases for six months at a time. It's a similar problem.
- favorited 8y agoBy "contrast" I was referring to the statement "Go works reasonably well on openbsd." I don't consider breaking on macOS betas working "reasonably well."
- loeg 8y agoI expect the statement "Go works reasonably well on OpenBSD" is being overly charitable to how frequently it breaks across releases and in reality the experience is likely similar to MacOS betas.