Six architecture properties as part of design mark - #137
Conversation
| - LOLCODE | ||
| - VCalc | ||
| - Gazprea | ||
| * - **Types are decided once.** Your emission pass must not compute or infer the type of an expression. It reads type information recorded by an earlier pass. |
There was a problem hiding this comment.
| * - **Types are decided once.** Your emission pass must not compute or infer the type of an expression. It reads type information recorded by an earlier pass. | |
| * - **Types are decided once.** Your emission pass must not compute or infer the type of an expression. It reads type information recorded by an earlier pass. To heck with dynamic languages!! (-Sir-NoChill) |
😆
| - ✓ | ||
| - ✓ | ||
| - ✓ | ||
| * - **Pass dependencies are written down.** Each pass must state what it requires to already be true when it runs. If reordering two of your passes breaks your compiler, that dependency must appear somewhere a reader can find it. |
There was a problem hiding this comment.
hmmmmmmmmm phase ordering be like.
How do we enforce this?
There was a problem hiding this comment.
Are you sure we need this level of detail? Should this be something they write in their design document vs something we look for in the code?
There was a problem hiding this comment.
@Sir-NoChill my plan for each of these 6 points was to ask claude if they are fulfilled. The GenAI seminar I went through describes bias in LLM grading, but this does not apply to yes/no questions, so I think it is safe here.
| - | ||
| - ✓ | ||
| - ✓ | ||
| * - **Locations are recorded at construction.** Every node carries the source location it came from, assigned when the node is built. |
There was a problem hiding this comment.
Should we mandate dwarf symbol emission behind a -g flag? Similar to -ffast-math ?
There was a problem hiding this comment.
Is debug symbol emission automatic? When I did it before it was a lot of work because you have to describe the symbol to the debugger so it can interpret the contents correctly. I wouldn't mind having an assignment where they add debug to vcalc. Or maybe we could have a lab where they do what they can in 3 hours and we mark it?
rcunrau
left a comment
There was a problem hiding this comment.
I'm saying "request changes" because I want to discuss the detail stuff in the implementation section. As you know, my concern is that the more specific we are, the easier it is to just feed it to Claude and not have to actually think about it. Overall I think this is a pretty good compromise.
| - ✓ | ||
| - ✓ | ||
| - ✓ | ||
| * - **Pass dependencies are written down.** Each pass must state what it requires to already be true when it runs. If reordering two of your passes breaks your compiler, that dependency must appear somewhere a reader can find it. |
There was a problem hiding this comment.
Are you sure we need this level of detail? Should this be something they write in their design document vs something we look for in the code?
| - | ||
| - ✓ | ||
| - ✓ | ||
| * - **Locations are recorded at construction.** Every node carries the source location it came from, assigned when the node is built. |
There was a problem hiding this comment.
Is debug symbol emission automatic? When I did it before it was a lot of work because you have to describe the symbol to the debugger so it can interpret the contents correctly. I wouldn't mind having an assignment where they add debug to vcalc. Or maybe we could have a lab where they do what they can in 3 hours and we mark it?
Add the six properties from another PR to Grading/Design instead.
I am waiting to edit the grading matrix until everything has been added and we have decided on the weights.