Предположим, что разработчик библиотеки Haskell решает использовать UndecidableInstances
по какой-либо причине. Библиотека отлично компилируется. Теперь предположим, что какая-то программа использует библиотеку (например, определяет некоторые экземпляры ее классов типов), но не использует расширение. Может ли случиться, что компиляция не завершена (не завершается)?
Если такой сценарий может произойти, я был бы рад увидеть пример. Например, поскольку mtl использует UndecidableInstances
много, возможно ли написать программу, которая зависит от mtl (или любой другой стандартной библиотеки, использующей расширение), не использует UndecidableInstances
сам, но не может скомпилироваться из-за неразрешимости?