Now that Typed Racket has Shallow & Optional modes, we might be able to make the math library work for untyped code without crazy slowdowns.
But it's not as simple as changing the whole math library to use #lang typed/racket/shallow, because that'll slow down all the current #lang typed/racket clients of math.
I think what we need is a graceful way to provide two versions of math (without actually cloning the codebase):
- keep the original
- add
math/untyped or something, which uses Shallow
Now that Typed Racket has Shallow & Optional modes, we might be able to make the math library work for untyped code without crazy slowdowns.
But it's not as simple as changing the whole math library to use
#lang typed/racket/shallow, because that'll slow down all the current#lang typed/racketclients of math.I think what we need is a graceful way to provide two versions of math (without actually cloning the codebase):
math/untypedor something, which uses Shallow