Ralph's Blog about this and that (RSS | Atom)

Using the Z3 SMT Solver with Go

Published: 1. March 2026  •  go

Learn how to use the Z3 SMT solver with Go to solve complex problems declaratively. This post covers setting up Z3 with Go, core concepts, and real-world examples like package dependency resolution, RBAC policy verification, scheduling, and the knapsack problem.

Waiting for Goroutines with sync.WaitGroup and errgroup.Group

Published: 28. February 2026  •  go

Go makes it easy to run code in parallel with goroutines. To wait for them to finish, you can use sync.WaitGroup or errgroup.Group. This post explains how to use both and when to choose one over the other.