15 hours ago
- Zig uses strongly-typed error codes for minimal error handling, leaving error reporting to the user via Diagnostics sink pattern.
- For script-like code, a middle-ground approach logs error context as key=value pairs using errdefer, reducing friction by avoiding explicit error messages and preserving try statements.
- The drawback is that error context is logged even when errors are handled, especially problematic for cancellation errors in Zig 0.16 that are meant to be handled gracefully.