Skip to content

Conversation

@tohlh
Copy link
Contributor

@tohlh tohlh commented Feb 24, 2025

This is an implementation of Typed Modules based on this proof-of-concept and this proposal for the FYP titled "Improving Types in the Source Academy".

Previously, module members are mapped to the any type for all variables, function parameters and function return values. This PR enables module authors to define module variables, functions and types inline with TypeScript decorators, enabling the teaching team to teach types more effectively.

Currently, only the rune and curve modules are "migrated" from "untyped" to "typed".

@RichDom2185 RichDom2185 self-requested a review February 24, 2025 03:07
Copy link
Member

@RichDom2185 RichDom2185 left a comment

Choose a reason for hiding this comment

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

Hi, just some minor nits, but I've resolved the other comments I had and pushed them onto this branch, do take a look and double-check, thanks! I'm left with the one comment below:

@RichDom2185 RichDom2185 enabled auto-merge (squash) March 2, 2025 13:56
Copy link
Member

@RichDom2185 RichDom2185 left a comment

Choose a reason for hiding this comment

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

LGTM, thanks!

@RichDom2185 RichDom2185 merged commit dd0f9b2 into source-academy:master Mar 2, 2025
1 check 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.

2 participants