Aha, už to vidím.... ve větvi C je nepoužije se ani jedno... jo, to by se muselo nějak vymyslet "jinak", explicitně.
Scalu neznám, IMO rozdíl oproti unsafePerformIO bude, že tohle bude fungovat jenom ve scope té funkce, aby ta laziness právě nemohla "utéct" moc daleko. No, ale když už jsme u toho použití, tak tohle jsem zatím nepotřeboval, laziness v pure kódu využívám přece jen častěji...