Documentation Checking and Compiler Extensions #1830
tothambrus11
started this conversation in
Tooling
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Designing the interaction of HyloDoc and the rest of the compiler requires more research into compiler and language server extensions. Documentation checking relies on having an AST in which we can resolve identifiers and check that expressions like
document.is_loadedare valid in the documented symbol's scope.It could make sense to integrate the documentation parsing into Hylo's frontend, as this will be something that's supposedly needed all the time. Why would somebody want to have their parameter list go out of date?
While this would be probably the most performant option, we can realize that documentation is not uniuqe from a tooling perspective. Seamless interoperating with other languages always requires some level of interaction of the compilers/language servers. E.g. imagine writing SQL queries, of which a tool like squirrel generates Hylo functions and glue code to call them with proper static types. When we rename a projected SQL column, the generated Hylo types change, which would need to be reflected on all the use sites in Hylo as well.
In general, a frontend compiler extension may want to do any of the following:
So my questions are:
All reactions