Type Constructor Polymorphism for Scala door