Curry-Howard is not limited to constructive logic, it has been extended to classical logic by Timothy Griffin in 1990 : the instruction call/cc
of Scheme has the Pierce’s law ((non A -> A) -> A
, which is the principle of reasoning by contradiction) as its type. In other words, each time that you raise an exception you’re using classical logic. And I guess it’ll be the same with the future effect system in OCaml.
References:
A formulae-as-types notion of control by Timothy G. Griffin
Typed lambda-calculus in classical Zermelo-Frænkel set theory by Jean-Louis Krivine
A propos de la théorie des démonstrations (du programme de Hilbert aux programmes tout court) by Jean-Louis Krivine.