Slide with text: “Rust teams at Google are as productive as ones using Go, and more than twice as productive as teams using C++.”

In small print it says the data is collected over 2022 and 2023.

  • FizzyOrange
    link
    fedilink
    arrow-up
    1
    ·
    9 months ago

    Find references / go to definition / rename has absolutely nothing to do with types.

    It absolutely does. Without static types an IDE/LSP can’t reliably find all the references / definition and therefore can’t refactor reliably either.

    Consider something like this:

    class Foo:
      bar: int
    
    class Baz:
      bar: str
    
    def a(f: Foo) -> int:
      return f.bar + 1
    
    def b(f: Baz) -> str:
      return f.bar + "1"
    

    Now imagine you want to rename Foo.bar or find all references to it. Impossible without the type annotations.