This post discusses the authors' work on making Zed extensible, with a focus on extensible language support using Tree-sitter. They used WebAssembly to distribute parsers and implemented a hybrid native + WebAssembly system to improve performance.
Table of contents
Language Support in Zed self.__wrap_n!=1&&self.__wrap_b(":R1nbrrrqbf9la:",1)Challenges with Packaging Parsers self.__wrap_n!=1&&self.__wrap_b(":R5nbrrrqbf9la:",1)Obviously, We Used WebAssembly. But How? self.__wrap_n!=1&&self.__wrap_b(":R9nbrrrqbf9la:",1)A Hybrid Native + WebAssembly System self.__wrap_n!=1&&self.__wrap_b(":Rfnbrrrqbf9la:",1)Extending the Tree-sitter API self.__wrap_n!=1&&self.__wrap_b(":Rmnbrrrqbf9la:",1)Implementation Highlights self.__wrap_n!=1&&self.__wrap_b(":Rtnbrrrqbf9la:",1)Using Language Extensions self.__wrap_n!=1&&self.__wrap_b(":R13nbrrrqbf9la:",1)Closing self.__wrap_n!=1&&self.__wrap_b(":R16nbrrrqbf9la:",1)Interested in trying Zed out? self.__wrap_n!=1&&self.__wrap_b(":Rtbrrrqbf9la:",1)7 Impressions