Я сейчас не могу скомпилировать программу на агде, и у меня нет особого желатия выяснять, почему
apt install agda не дает мне нужных для этого библиотек.
Суть в том, что тотальные с использованием бесконечных (коиндукивных) структур данных могут быть невычислимыми, т.е. при любой семантике выполнения будут иногда выполняться бесконечно долго.
А так, учитывая, что тамошнее IO построено на коиндуктивных
Stream Char, вот, можете попробовать скомпилировать. Termination check проходит.
Код:
module Test where
open import Coinduction
open import Data.Unit
open import Data.String
open import Data.Colist
open import IO
open import IO.Primitive as Prim
bangs : Costring
bangs = '!' ∷ (♯ bangs)
main : Prim.IO ⊤
main = run (putStr∞ bangs)