extend language coverage with 15 additional languages and markup formats
Author: mochizzanCreated Aug 9, 2026Updated Sep 14, 2026
Context
CodeGraph currently supports 20 languages through its native Rust parsing kernel:
- TypeScript, JavaScript/TSX/JSX, Java, Python, Go, C, C++, Rust, C#, Ruby, PHP, Swift, Kotlin, Scala, Dart, R, Lua, Luau
Additional languages/markup formats (Svelte, Liquid, Pascal/Delphi) are available via the Tree-sitter/WASM path.
While this coverage is solid for mainstream web, mobile, and backend stacks, significant gaps remain in:
- Functional & JVM-ecosystem languages
- Infrastructure-as-Code
- Smart contracts
- Widely-used config/markup formats in modern monorepos
These languages are currently either completely ignored by the graph or fall back to a generic path with no meaningful symbols or edges.
Proposal: 15 New Languages/Formats
| # | Language/Format | Category | Priority Rationale |
|---|---|---|---|
| 1 | Elixir | Functional / BEAM | Popular for real-time backends (Phoenix); currently not covered |
| 2 | Erlang | Functional / BEAM | Natural pairing with Elixir; often coexists in umbrella projects |
| 3 | Haskell | Functional | Widely used in internal compiler/tooling codebases |
| 4 | OCaml | Functional | Used in infra-critical tools (parts of Rust/JS tooling ecosystem) |
| 5 | Clojure | Functional / JVM | JVM ecosystem gap despite existing Java/Kotlin/Scala support |
| 6 | Groovy | JVM | Extremely common in Gradle build scripts; direct impact on dependency-graph resolution |
| 7 | Objective-C | Mobile (iOS legacy) | Many legacy iOS codebases still mix Swift and Objective-C |
| 8 | Zig | Systems | Growing rapidly as a C alternative |
| 9 | Perl | Scripting / Legacy | Still widely used in legacy systems & DevOps scripting |
| 10 | Julia | Scientific computing | Gap in data-science/scientific ecosystem (complements existing R support) |
| 11 | HCL (Terraform) | Infrastructure-as-Code | Critical for DevOps/infra repos; currently not parsed structurally |
| 12 | Solidity | Smart Contract | Growing Web3/blockchain ecosystem; no graph representation for contract calls/inheritance |
| 13 | GraphQL SDL | Schema / API | Enables query-to-resolver resolution; highly relevant to the getImpactRadius feature |
| 14 | YAML | Config / Markup | Widely used for CI/CD (GitHub Actions, Kubernetes); parsing job/step structure aids context building |
| 15 | HTML | Markup | Foundation for many frameworks; important for cross-referencing with JS/TS components |
Why This Combination
- Functional/JVM languages (1–6) — Fills a gap for functional and JVM-ecosystem developers who are currently completely unserved despite Java/Kotlin/Scala support.
- Systems/legacy (7–9) — Addresses mixed legacy-modern codebases (iOS, C-alternatives, legacy scripting).
- Infra & Web3 (10–12) — A fast-growing category where almost no graph-based tool currently provides good structural queries.
- Schema & markup (13–15) — Not classic programming languages, but critical for cross-service linking (one of CodeGraph’s flagship features), especially GraphQL SDL for
getImpactRadius.
Source: colbymchenry/codegraph