|
|
|
|
|
by Zach_the_Lizard
994 days ago
|
|
Sum types with pattern matching would likely take the place of (foo, error) in a lot of codebases. This is especially true in cases where a function returns a collection of results where each result is independent from other results and a result can succeed or fail. For instance, a batch report generator that is called every $INTERVAL might return a ([]Report metadata, error) today, but each report could have succeeded or failed without impacting the others. The output is emailed to $SOMEONE to let them know the reports ran and information about each. In today's world, the "error" could be a special error type that capture failures on a per report basis. The ReportMetadata type could also have an Error field, but one is not forced to check either. Sum types could force checking for error on a per report basis, increasing the odds something is done with the error. |
|