We should replace the core parser with [tree-sitter](http://tree-sitter.github.io/tree-sitter/) and then we could support many more languages.