News for hackers. Stuff that matters.
Re:Creating Languages in Racket (2011) by sorawee on Wednesday February 03, 2021 @03:35PM (#26018760)
> I like how TS is unsound (has no runtime performance penalty for mixing untyped code), and is easily disabled via any if it's in the way.

This is already done. See https://github.com/racket/typed-racket/pull/952 for RFC and https://github.com/racket/typed-racket/pull/948 for the implementation.

Re:Creating Languages in Racket (2011) by srcreigh on Wednesday February 03, 2021 @03:59PM (#26019029)
Excellent. Can't wait to try it out.

It's exciting to think of "Deep" checking as a complement to optional checking. Use a mix of both in one code base to play their strengths. For example it'd be great to define a deep type checked module for parsing data. You get static errors and runtime validation too. But, also, use that module from an optionally type checked module, which doesn't add any extra runtime costs if some of your other code / dependencies are untyped.