Відповідно до «Історії Хаскелла: Бути ледачим із класом» (див. Розділ 7) спочатку розглядалися три різні моделі: потоки , продовження та «проходження світу» (я не знаю багато про Clean, але це звучить так, як це Clean Way ?).
Останній абзац розділу 7.2 вказує, що наразі концепція типу унікальності не була розроблена:
Ця модель, що проходить у світі, ніколи не була серйозним претендентом на Haskell, тому що ми не бачили простого способу забезпечити "однопоточний" доступ до світової держави. (Дизайнери «Чистих» врешті вирішили цю проблему завдяки використанню «унікальних типів»)
Концепція монад, здається, була введена (повторно використана з інших робіт) у пізніших редакціях Haskell, оскільки це призвело до отримання більш чистого коду (порівняно з продовженнями / потоками):
Монадичний підхід швидко домінував у попередніх моделях. Типи більш компактні та більш інформативні.