Skip to content
This repository was archived by the owner on Apr 1, 2025. It is now read-only.
This repository was archived by the owner on Apr 1, 2025. It is now read-only.

Scope graphing does not take into account a language’s standard library #165

@patrickt

Description

@patrickt

As reported in #164, people find the lack of standard-library awareness unintuitive and limiting. This is hard, though, as I pointed out in the issue:

There are a number of suboptimal solutions: we could re-parse and re-graph the entire standard library of a given language before we start graphing user code, which would be prohibitively slow; we could hardcode details of each supported language’s stdlib into Semantic itself, which is bad for maintainability; we could try to do the work in advance and cache it, but getting caching right is really hard. And whatever method we choose needs to scale to all of our core languages and languages not yet integrated with Semantic.

Do note that just because the scope graphing mechanism is unaware of the standard library doesn’t mean that it ignores stdlib calls—they are tracked and graphed like any other call, they just lack position information. So this isn’t a “we’re missing stdlib support”, it’s a “how do we annotate stdlib calls with their position information (if any), and how do we get that position information from the stdlib?"

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestlanguage-supportLanguage support in general (e.g. new languages, etc.)

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions