Elm:
एरर्स को हैंडल करना

कैसे करें:

Elm का मूल दर्शन है कोई रनटाइम अपवाद नहीं। इसलिए, Elm अपनी प्रकार (type) प्रणाली का उपयोग करता है, जैसे Maybe और Result प्रकारों के साथ, एरर्स को हैंडल करने के लिए।

Maybe परिदृश्य के लिए:

safeDivide : Float -> Float -> Maybe Float
safeDivide numerator denominator =
    if denominator == 0 then
        Nothing
    else
        Just (numerator / denominator)
        
-- जब आप इसे चलाएंगे:

safeDivide 10 2
--> Just 5

safeDivide 10 0
--> Nothing

Result परिदृश्य के लिए:

type Error = DivisionByZero

safeDivide : Float -> Float -> Result Error Float
safeDivide numerator denominator =
    if denominator == 0 then
        Err DivisionByZero
    else
        Ok (numerator / denominator)

-- और इसका उपयोग करते हुए:

safeDivide 10 2
--> Ok 5

safeDivide 10 0
--> Err DivisionByZero

गहन अध्ययन

Elm की प्रकार प्रणाली सख्त होती है, जो समय से पहले एरर्स को पकड़ने में मदद करती है। ऐतिहासिक रूप से, अधिकांश भाषाओं ने अपवादों और रनटाइम चेक्स पर निर्भर किया था, परन्तु Elm ने संकलन-समय की गारंटियों का चयन किया। Result जैसे विकल्प विस्तृत एरर जानकारी देते हैं, जबकि Maybe हां-नहीं के परिदृश्यों के लिए सरल है। Elm की एरर हैंडलिंग प्रोग्रामर्स को सभी रास्तों पर पहले से विचार करने के लिए प्रोत्साहित करती है, भूले हुए एरर केसेस की पिटफॉल्स से बचने के लिए।

और देखें: