Like in Java exceptions are checked in Nim and unlike in Java it's easy to 
ignore exceptions. To be forced to handle them use the `.raises: []` construct:
    
    
    import std / os
    
    proc main() {.raises: [].} =
      # does not compile
      copyFile("src.txt", "dest.txt")
    
    
    
    Run

Effects like `.raises` are inferred and `effectsOf` allows for effect 
polymorphism.

Reply via email to