--
You received this message because you are subscribed to the Google Groups "Melbourne Scala User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to scala-melb+...@googlegroups.com.
To post to this group, send an email to scala...@googlegroups.com.
Visit this group at http://groups.google.com/group/scala-melb.
For more options, visit https://groups.google.com/groups/opt_out.
--
You received this message because you are subscribed to the Google Groups "Melbourne Scala User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to scala-melb+...@googlegroups.com.
To post to this group, send an email to scala...@googlegroups.com.
Visit this group at http://groups.google.com/group/scala-melb.
For more options, visit https://groups.google.com/groups/opt_out.
--
The code quality of Epidemy was poor, I agree. But it was nowhere near as mind-bendingly convoluted as the stuff Martin wrote in week 1 (and also in the previous course) where methods would ignore the callee and use the parameter. For example `emptyHeap.isEmpty(nonEmptyHeap) == false`.
I found the fact that the compiler allowed you to use heaps in a fundamentally incorrect way to be extremely poor.
Importing object members would seem far more appropriate
--
And of course, if you are mixing in traits to satisfy internal requirements, you take on a type that advertises menial implementation details; Logger, StampLicker, ShoeLaceTier, etc.My conclusion is that constructors are the only appropriate way to take required input to a class; Cake pattern be damned.
I dont understand what you are meaning here by "incorrect way". Can you give an example of misuse?
Ben
Metaphors about objects sending and responding to messages are appealing and maybe have intuitive appeal, but Martin's code is much closer to how OO code executes on a machine.
--