A forma de expressão { expr with . } só pode ser usada com tipos de registro. Para compilar tipos de objeto use { new Type(.) ...