Looks like no type aliases still? Does anyone know if type aliases are anywhere on the road map for Java? Is there some philosophical objection to them?
// define a type alias
type UserId = Long
// can be used as a regular type
val userId: UserId = 123L
val userIds: List[UserId] = List(1L, 2L, 3L)