Go scope

Scoping in Go is built around the notion of code blocks. You can find several good explanations of how variable scoping work in Go on Google. I'd like to highlight one slightly unintuitive consequence of Go's block scoping if you're used to a language like Python, keeping in mind, this example does...

Tracking a call stack in Go with context

The use of context in Go can help you pass metadata through your program with helpful, related information about a call. Let's build an example where we set a context key, "stack", which keeps a history of the function names called over the lifetime of the context. As we pass the context object...