Skip to content

Comment on Function Arguments Are Not Function Colorsparent

Comments

I don't think there's a way to color functions in Go. That's not terribly special, several languages have no colors in them.

returning error is a function color in Go. That you can discard the error is not relevant, since it creates an incorrect program. Failability is a color in all languages that don't handle it like C (everything is a crash) or like Java (everything can throw - it's not a color if everything is the same color).

Pedantically, colored functions in Go might be ones that produce their output on a channel rather than returning a value. Then, you need select/for-range/<- to get their result, similar to “await”.

Practically, the runtime’s ability to suspend and move goroutines around means that the impact of that (niche/rarely appropriate as a default approach) kind of coloring is much less in Go than in other languages.

That has no propagation up the stack at all. Whether a child function does or does not use channels has no effect on the parent.

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.