Oi! :)
Acho que ainda não temos muitos adeptos da linguagem, mas quem sabe a gente consiga discutir um pouco, né?
Estou aprendendo F# agora. Comecei com algo não muito simples: um Lexer. Em um dos códigos que achei com exemplos a respeito do assunto cruzei com Monads, mais especificamente StateMonad.
Dei uma lida a respeito do assunto, mas meu background matemático e funcional é muito fraco. Além disso, ainda não digeri F# por completo o que dificulta ainda mais o entendimento.
Pelo pouco que entendi de monads a idéia é oferecer um mecanismo de execucão lazy e mais especificamente o State Monad, prover um objeto com estado.
Agora a pergunta: alguém ai tem um bom material ou manja bem de monads a ponto de simplificar bem o assunto e/ou fazer um paralelo com algo conhecido em C#/OO?