The last paragraph reads as:
Note that all our students only have one name (it's a small town, what do you want?), and each student cannot be added more than once to a grade or the roster.
If a test attempts to add the same student more than once, your implementation should indicate that this is incorrect.
What does roster mean here? a particular grade's roster or the entire school's roster.
If the edge case is encountered, what is the expected emitted error? Would it be through the type system as a result or an exception?
The last paragraph reads as:
What does roster mean here? a particular grade's roster or the entire school's roster.
If the edge case is encountered, what is the expected emitted error? Would it be through the type system as a result or an exception?