@@ -68,3 +68,63 @@ DVH ideas based on Fall 2021
6868 run DrRacket it complains that the nasm command cannot be found.
6969 Need to run `drracket` from the command line.
7070
71+ DVH ideas based on Fall 2024
72+
73+ * Looking over past notes: the CMOVcc stuff has happened. The early
74+ tooling assignment has happened. Non-x86 machines seem to be
75+ resolved.
76+
77+ * Exams are now 24 hours, which seems right. Miss 1 lecture.
78+
79+ * Before semester starts, get autograders for all assignments out; set
80+ them to be released on appropriate dates. Set up "playground"
81+ autograders to be released at same time with no deadline. Set up
82+ autograders for "practice" midterms too.
83+
84+ * Remove GRACE stuff from notes. Nobody uses it.
85+
86+ * Move string interning to Hoax, cover static data there.
87+
88+ * Create a new assignment 5 that is (1) adding immutable versions
89+ existing mutable data structures. This will require some rethinking
90+ of the encoding scheme. Vectors could be done now by using a bit in
91+ the length field, but boxes are trickier. Probably want that info
92+ in the pointer. (2) adding compound literals: pairs, vectors,
93+ boxes. This is essentially implementing Mug minus symbols, so maybe
94+ that language goes away or becomes only about symbols?
95+
96+ * After Hustle, go to Iniquity. Come back later to Hoax. It's less
97+ essential and better to get into functions and calls earlier. Would
98+ be great to get through lambda before Midterm 2.
99+
100+ * Stay on top of assignment release dates so that you can do 6 regular
101+ assignments and the final project. The trickiest part comes around
102+ Midterm 2 where you're up against Thanksgiving and the end of the
103+ semester soon after.
104+
105+ * Fix Offset to take arbitrary memory expressions (you can do this in
106+ a backward compatible way by overloading the Offset constructor:
107+ - (Offset e) takes a memory expression (new)
108+ - (Offset e1 e2) => (Offset (Plus e1 e2)) backwards compatible
109+ This let's you write much better, e.g., vector code and you can write
110+ (Offset 'rax) instead of (Offset 'rax 0), etc.
111+
112+ * Take past exam questions and make them stand-alone exercises that
113+ have autograders on Gradescope.
114+
115+ * More quizes in the second half of the class.
116+
117+ * Keep developing the slides with more visual presentations later in
118+ the semester.
119+
120+ * Potentially rethink pointer tagging scheme to take advantage of
121+ unused upper bits.
122+
123+ * Hoax and Hustle were a slow slog. Gotta figure out how to get
124+ through that quicker in the future.
125+
126+ * Have a86 provide bindings for all register names.
127+
128+ * Hide current-objs from students, notes, etc. Use run.rkt instead.
129+ Maybe only have run do asm-interp with run-time linked in,
130+ i.e. don't also do bits->value.
0 commit comments