Describe the bug
As the name of the distribution is set in the __init__, any distribution that subclasses another distribution, needs to make sure that name is set after calling super.
This goes wrong for the StudentT distribution.
StudentT().name # <- prints "Normal"
This is an easy fix in this case, but it might be worse it to change the way name is set.
As it is a class and not an instance variable, it might be easier to just define it in the class body directly and not the __init__. This way it can be overwritten without worrying about the correct order in the init.
Describe the bug As the
name
of the distribution is set in the__init__
, any distribution that subclasses another distribution, needs to make sure thatname
is set after calling super.This goes wrong for the
StudentT
distribution.This is an easy fix in this case, but it might be worse it to change the way
name
is set. As it is a class and not an instance variable, it might be easier to just define it in the class body directly and not the__init__
. This way it can be overwritten without worrying about the correct order in the init.