Skip to content

Six architecture properties as part of design mark - #137

Merged
novo52 merged 7 commits into
masterfrom
design/architecture-properties
Sep 1, 2026
Merged

novo52 merged 7 commits into
masterfrom
design/architecture-properties

Conversation

@novo52

@novo52 novo52 commented Aug 18, 2026

Copy link
Copy Markdown
Contributor

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.

@novo52
novo52 requested a review from rcunrau August 18, 2026 22:25
Comment thread info/grading.rst
- 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.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
* - **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)

😆

Comment thread info/grading.rst
- ✓
- ✓
- ✓
* - **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.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hmmmmmmmmm phase ordering be like.

How do we enforce this?

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@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.

Comment thread info/grading.rst
-
- ✓
- ✓
* - **Locations are recorded at construction.** Every node carries the source location it came from, assigned when the node is built.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we mandate dwarf symbol emission behind a -g flag? Similar to -ffast-math ?

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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 rcunrau left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

Comment thread info/grading.rst
- ✓
- ✓
- ✓
* - **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.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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?

Comment thread info/grading.rst
-
- ✓
- ✓
* - **Locations are recorded at construction.** Every node carries the source location it came from, assigned when the node is built.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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?

@novo52 novo52 closed this Sep 1, 2026
@novo52 novo52 reopened this Sep 1, 2026
@novo52
novo52 merged commit fc76387 into master Sep 1, 2026
1 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants