You have a point that adding static types can mean having to rewrite. But in practice I often start out with Cython and static types, making this a non-issue. If you use Cython in this way it can approach C with Python syntax. See also <a href="http:&#x2F;&#x2F;spacy.io&#x2F;blog&#x2F;writing-c-in-cython&#x2F;" rel="nofollow">http:&#x2F;&#x2F;spacy.io&#x2F;blog&#x2F;writing-c-in-cython&#x2F;</a>