Skip to content

Commit e08b359

Browse files
committed
feat: add F#, Gleam, Clojure, Julia, R, Erlang language support
Add Batch 3 (Functional & BEAM) languages to codegraph: - F# (.fs, .fsx, .fsi): modules, functions, union/record types, open imports - Gleam (.gleam): functions, types, type aliases, constants, imports - Clojure (.clj, .cljs, .cljc): namespaces, defn/defprotocol/defrecord, ns requires - Julia (.jl): functions (long + short form), structs, modules, macros, imports - R (.r, .R): function definitions (<-/=), library/require imports, S4 classes - Erlang (.erl, .hrl): modules, functions, records, types, defines, includes Grammar sources: - F#: tree-sitter-fsharp (npm, sub: fsharp/) - Gleam: gleam-lang/tree-sitter-gleam (GitHub) - Clojure: sogaiu/tree-sitter-clojure (GitHub) - Julia: tree-sitter-julia (npm) - R: @eagleoutice/tree-sitter-r (npm) - Erlang: WhatsApp/tree-sitter-erlang (GitHub)
1 parent e279928 commit e08b359

18 files changed

Lines changed: 2130 additions & 76 deletions

package-lock.json

Lines changed: 129 additions & 75 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -146,21 +146,27 @@
146146
"@tree-sitter-grammars/tree-sitter-hcl": "^1.2.0",
147147
"@tree-sitter-grammars/tree-sitter-lua": "^0.4.1",
148148
"@tree-sitter-grammars/tree-sitter-zig": "^1.1.2",
149+
"@eagleoutice/tree-sitter-r": "^1.1.2",
149150
"@types/better-sqlite3": "^7.6.13",
150151
"@vitest/coverage-v8": "^4.0.18",
151152
"commit-and-tag-version": "^12.5",
152153
"husky": "^9.1",
153154
"tree-sitter-bash": "^0.25.1",
154155
"tree-sitter-dart": "^1.0.0",
155156
"tree-sitter-elixir": "^0.3.5",
157+
"tree-sitter-erlang": "github:WhatsApp/tree-sitter-erlang#semver:*",
156158
"tree-sitter-c": "^0.24.1",
159+
"tree-sitter-clojure": "github:sogaiu/tree-sitter-clojure",
157160
"tree-sitter-c-sharp": "^0.23.1",
158161
"tree-sitter-cli": "^0.26.5",
159162
"tree-sitter-cpp": "^0.23.4",
163+
"tree-sitter-fsharp": "^0.1.0",
164+
"tree-sitter-gleam": "github:gleam-lang/tree-sitter-gleam",
160165
"tree-sitter-go": "^0.25.0",
161166
"tree-sitter-haskell": "^0.23.1",
162167
"tree-sitter-java": "^0.23.5",
163168
"tree-sitter-javascript": "^0.25.0",
169+
"tree-sitter-julia": "^0.23.1",
164170
"tree-sitter-kotlin": "^0.3.8",
165171
"tree-sitter-ocaml": "^0.24.2",
166172
"tree-sitter-php": "^0.24.2",

scripts/build-wasm.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,12 @@ const grammars = [
4646
{ name: 'tree-sitter-zig', pkg: '@tree-sitter-grammars/tree-sitter-zig', sub: null },
4747
{ name: 'tree-sitter-haskell', pkg: 'tree-sitter-haskell', sub: null },
4848
{ name: 'tree-sitter-ocaml', pkg: 'tree-sitter-ocaml', sub: 'grammars/ocaml' },
49+
{ name: 'tree-sitter-fsharp', pkg: 'tree-sitter-fsharp', sub: 'fsharp' },
50+
{ name: 'tree-sitter-gleam', pkg: 'tree-sitter-gleam', sub: null },
51+
{ name: 'tree-sitter-clojure', pkg: 'tree-sitter-clojure', sub: null },
52+
{ name: 'tree-sitter-julia', pkg: 'tree-sitter-julia', sub: null },
53+
{ name: 'tree-sitter-r', pkg: '@eagleoutice/tree-sitter-r', sub: null },
54+
{ name: 'tree-sitter-erlang', pkg: 'tree-sitter-erlang', sub: null },
4955
];
5056

5157
let failed = 0;

0 commit comments

Comments
 (0)