I think that, in the specific case where an application is invoked with no input arguments, there is a reasonable expectation that the abstract class should raise an exception rather than continue execution, even if derived classes would ultimately raise one themselves. A user explicitly providing no inputs is likely an error, and failing fast would provide clearer feedback. It would also guard against cases where input validation has not been implemented correctly in downstream classes.
Tangentially raised in PR #111
I think that, in the specific case where an application is invoked with no input arguments, there is a reasonable expectation that the abstract class should raise an exception rather than continue execution, even if derived classes would ultimately raise one themselves. A user explicitly providing no inputs is likely an error, and failing fast would provide clearer feedback. It would also guard against cases where input validation has not been implemented correctly in downstream classes.
Tangentially raised in PR #111