I don’t think it is a taboo, but it is possibly just worse code in many cases. Handling error values is usually something that should be done thoughtfully. Panic is nice but can easily be overused and should not make it out of a package.
I too wish there was a better way, but in the form of proper enums and result and option types. However, wrapping in functions is fine in some cases not taboo.
As an aside, you probably don’t need a static union type for your min and max functions. I assume you could use comparable.
I just looked at the standard docs and I didn’t realize there was a built-in min and max function. Y’all should really read the standard lib docs… it’s fascinating in there.
I don’t think it is a taboo, but it is possibly just worse code in many cases. Handling error values is usually something that should be done thoughtfully. Panic is nice but can easily be overused and should not make it out of a package.
I too wish there was a better way, but in the form of proper enums and result and option types. However, wrapping in functions is fine in some cases not taboo.
As an aside, you probably don’t need a static union type for your min and max functions. I assume you could use
comparable
.comparible
only allows==
Oh right! What am I saying?
contraints.Ordered
maybe.I just looked at the standard docs and I didn’t realize there was a built-in min and max function. Y’all should really read the standard lib docs… it’s fascinating in there.