← Back to context

Comment by rurban

10 hours ago

I did a similar project, a typed perl. cperl. I could import most the modules, and did add types to some of the important modules. Eg testing was 2x faster. I needed typing patches for about 10% for most CPAN packages.

A type is a contract, not a hint!

> A type is a contract, not a hint!

In Python it is a hint.

  • Exactly. That was their worst mistake ever

    • I agree. I use Beartype to get runtime type checks, but it shouldn’t be necessary. Some support for type checking, whether at byte compile time or runtime, should land upstream.