Chapter3 says:
As you can see, both monster and knight have similar characteristics, but they
also have some differences. So it is possible to describe their common
properties using typeclasses, but they are different data types in the end.
Do typeclasses describe their common properties (e.g. health) or the common actions that can be taken on them (e.g. fight)?