I've heard that Scala has path-dependent types. It's something to do with inner-classes but what does this actually mean and …
scala type-systems path-dependent-typeThere are path dependent types and I think it is possible to express almost all the features of such languages …
scala path-dependent-type dependent-type shapeless