Selective Applicative Functors 
			
			Andrey Mokhov
						  Date: Mon, November 18, 2019
							
					          
						    Time: 10:35
						  
							
						  Room: Social Data Lab 0.E220
							
						
Applicative functors and monads have conquered the world of functional programming by providing general and powerful ways of describing effectful computations using pure functions. Applicative functors provide a way to compose independent effects that cannot depend on values produced by earlier computations, and all of which are declared statically. Monads extend the applicative interface by making it possible to compose dependent effects, where the value computed by one effect determines all subsequent effects, dynamically.
This talk introduces an intermediate abstraction called selective applicative functors that requires all effects to be declared statically, but provides a way to select which of the effects to execute dynamically.
Part of the Symposium on Build Systems
Previous: 
			    Eelco Dolstra | Reflections on the Nix build system DSL
			  
		  
			Next: 
			    Jeff Smits | Incremental Compilers with Internal Build Systems