# Talk:Functor-Applicative-Monad Proposal

### From HaskellWiki

(Difference between revisions)

(New page: === Fail === <hask>fail</hask> is useful for the error monad, <hask>Either String a</hask>. === Pointed === If <hask>return</hask> is the only method of the <hask>Pointed</hask> class t...) |
(→Pure vs. return: new section) |
||

Line 6: | Line 6: | ||

If <hask>return</hask> is the only method of the <hask>Pointed</hask> class then <hask>Pointed</hask> should be included in the hierarchy. Better to be exactly mathematically correct once and for all. | If <hask>return</hask> is the only method of the <hask>Pointed</hask> class then <hask>Pointed</hask> should be included in the hierarchy. Better to be exactly mathematically correct once and for all. | ||

+ | |||

+ | == Pure vs. return == | ||

+ | |||

+ | When combining <hask>pure</hask> and <hask>return</hask>, perhaps we should use the name <hask>pure</hask>, or something else besides <hask>return</hask>? It would defy convention, yes, but we would already be making changes that would require a Legacy module for backwards compatability, and it may reduce confusion over what the function actually does, because Haskell's <hask>return</hask> is nothing like "return" in other languages. |

## Revision as of 20:43, 1 January 2011

### 1 Fail

fail

Either String a

### 2 Pointed

Ifreturn

Pointed

Pointed

## 3 Pure vs. return

When combiningpure

return

pure

return

return