| 
									
										
										
										
											2009-02-09 16:51:03 +00:00
										 |  |  | rec { | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   # Identity function. | 
					
						
							|  |  |  |   id = x: x; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   # Constant function. | 
					
						
							|  |  |  |   const = x: y: x; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   # Named versions corresponding to some builtin operators. | 
					
						
							|  |  |  |   concat = x: y: x ++ y; | 
					
						
							|  |  |  |   or = x: y: x || y; | 
					
						
							|  |  |  |   and = x: y: x && y; | 
					
						
							| 
									
										
										
										
											2009-07-02 08:58:30 +00:00
										 |  |  |   mergeAttrs = x: y: x // y; | 
					
						
							| 
									
										
										
										
											2009-02-09 16:51:03 +00:00
										 |  |  |    | 
					
						
							|  |  |  |   # Take a function and evaluate it with its own returned value. | 
					
						
							|  |  |  |   fix = f: let result = f result; in result; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-10-23 07:34:56 +00:00
										 |  |  |   # Flip the order of the arguments of a binary function. | 
					
						
							|  |  |  |   flip = f: a: b: f b a; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-02-09 16:51:03 +00:00
										 |  |  | } |