Cleaning up the Tetris module, mainly to favor a MonadState style over explicit `Game -> Game` functions, which were a little awkward. This also led naturally to explicitly isolating `IO`, by having pure state modifiers with types like `Tetris a ~ forall m. StateT Game m a` being executed with `m ~ Identity`, and those few modifiers that need IO specified by `TetrisT a ~ StateT Game IO a`.
		
			
				
	
	
		
			22 lines
		
	
	
	
		
			190 B
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			22 lines
		
	
	
	
		
			190 B
		
	
	
	
		
			Text
		
	
	
	
	
	
*.swp
 | 
						|
*.swo
 | 
						|
tags
 | 
						|
dist
 | 
						|
dist-*
 | 
						|
cabal-dev
 | 
						|
*.o
 | 
						|
*.hi
 | 
						|
*.chi
 | 
						|
*.chs.h
 | 
						|
*.dyn_o
 | 
						|
*.dyn_hi
 | 
						|
.hpc
 | 
						|
.hsenv
 | 
						|
.cabal-sandbox/
 | 
						|
cabal.sandbox.config
 | 
						|
*.prof
 | 
						|
*.aux
 | 
						|
*.hp
 | 
						|
*.eventlog
 | 
						|
.stack-work/
 | 
						|
cabal.project.local
 |