Effects in Types

I am interested in differentiating between functions with side-effects and functions without side-effects in a type-system. Does any suggestions on papers I should read, or keywords I should search for? [Edit: apart from monads]

Thanks in advance!

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

One Word: monad

Some papers here.

Thank you

I meant to have qualified my question with "other than monads", but thank you very much anyway.

Linear types

In that case, so that I don't feel completely superfluous, one approach is via linear types.

Monads, Substructural Logic, Effect Systems

A logical view of effects.

The approaches I'm aware of are: via monads, as in Haskell; via substructural types, as in Clean; and via an effect system, as in FX-87.


This is a great list, thank you very much. I like that paper too, it is very easy to read.

effect systems

"effect systems" or "type and effect systems" might produce fruitful search results. I'm trying to remember author names... Jouvelot, Talpin, Tofte, Nielson and Nielson come to mind.