Indeed, simply declaring the type of a parameter is not a reference. However, passing a class as an argument to a method call is.
One problem with this approach is that #declaredType property is often overlooked in dependency analysis (especially since in Smalltalk models this prop is rarely used or even set). I don't know what could be the impact of collecting #declaredType with the other dependencies. ---> This is actually a problem in MooseChef and could be largely discussed.
That is a good point.
I have the impression that it would be good to have the option to declare declaredType as reference. Because it would make analyses based on reference sronger and more useful. I think that we historically did not do it because we do not have that in Smalltalk.
Stef