Skip to content

New language front-end (Go/Rust/Java) — deferred until TS is proven end-to-end #65

Description

@Rinkia

Adding a brand-new language front-end (Go, Rust, Java) via tree-sitter, emitting the shared Codebase model like languages/python.py and languages/typescript.py.

Why deferred (not ready yet)

High effort, and the model is not yet proven cross-language: the moddability benchmark is Python-only and the security lens is Python-only. Prove generalization on the TS front-end first (see the TS benchmark target + TS security sinks issues) before committing to a third language.

When it's time

  • Add modscan/languages/<lang>.py implementing the LanguageParser protocol (languages/base.py), registering by name.
  • Map the language's constructs to the shared model (functions/classes/bases/decorators/dynamic-imports).
  • Add a benchmark target + labels for that language.

Tracking this so the idea isn't lost; do TS-completion issues first.

Metadata

Metadata

Assignees

No one assigned

    Labels

    help wantedExtra attention is needed

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions