These definitions are common in functional programming, see e.g. this page from the F# documentation:  http://msdn.microsoft.com/en-us/library/dd233224.aspx.