This was a long but productive day so far: I got to the office at 10 AM to grade COMP 311 midterm exams because one of the graduate TAs was out of town. Due to scheduling conflicts, we didn’t actually grade, but that was fine with me, instead I had nothing better to do than work on subtyping for annotations.
I still don’t load default values, but annotations and arrays as members are now implemented. There’s still one small problem: I don’t quite know the order in which annotation members appear in the return value of a
toString() call. At first I thought the members were sorted alphabetically, so I implemented my
toString() method that way, but now that I have a few more test cases, I see both
@TestTwoAnnotation(s="foo", i=123) and
@TestTwoAnnotation(i=123, s="foo") as output, and so far I can’t a difference in their contexts.