something to think about
joeyh at
Root canal in 2 hours. Maybe I'll find moments where I am able to chew on a tricky change to propellor's types.
I've gotten ghc's type checker to generate an awesome error message like this when it detects conflicting port resources. Just need to find a way to integrate this with propellor's already complicated Property types.
Couldn't match type ‘'Propellor.Resources.Conflicting’
with ‘'Propellor.Resources.NonConflicting’
Expected type: 'Propellor.Resources.NonConflicting
Actual type: Propellor.Resources.Conflict
(Propellor.Resources.UniqueList '['Port 443, 'Port 80, 'Port 443])
(Or maybe I'll just think about buddism. Life is pain.)