Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Move Away from Typed Racket #68

Open
5 of 13 tasks
akuhlens opened this issue Dec 5, 2018 · 0 comments
Open
5 of 13 tasks

Move Away from Typed Racket #68

akuhlens opened this issue Dec 5, 2018 · 0 comments

Comments

@akuhlens
Copy link
Collaborator

akuhlens commented Dec 5, 2018

We tried using typed-racket, but the cost of ~1hr type-check times and the lack of full featured racket outweighs the benefit of types.

Here is a plan for moving away from typed-racket:

  • stop using type checking:
    • remove uses of define-predicate
    • rewrite all uses of #lang typed/racket -> #lang typed/racket/no-check
    • debug this until it works again
    • remove all uses of Typed Racket's cast function.
  • rewrite all language grammars as contracts
  • change all passes to check these contracts
  • find way to toggle contract checking for debug/production
  • add facilities to improve writing of unit tests, such as those found in convert-closures.rkt
  • lazily write unit tests for each pass as we edit them / discover bugs in the future
    • add to coding style
    • add to pull request check list
    • start using coverage checker
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

No branches or pull requests

1 participant