HigherOrderCO / Bend

A massively parallel, high-level programming language
https://higherorderco.com
Apache License 2.0
17.1k stars 420 forks source link

Request: Grammar definition for functional and imperative syntaxes #370

Open lukeribchester opened 3 months ago

lukeribchester commented 3 months ago

Please can you provide a grammar definition for Bend's imperative syntax, and review the grammar definition for the functional syntax? Do you plan to release a language server (LSP)?

I have experience with language integration for the JetBrains IntelliJ Platform and would like to contribute such a language plugin to your project. In fact, I have already submitted the first release to the JetBrains Marketplace for approval. Unfortunately I can't commit to completing the grammar definitions myself, however I can work around incompleteness to maximise the developer experience for the time being.

I will also happily share or migrate both the repository and marketplace page to you guys. 🙌🏻

Plugin References:

developedby commented 3 months ago

We'll definitely write a formal grammar at some point, but for the imperative syntax it'll be uglier since it's indentation dependent. We have an informal grammar definition of the imperative syntax here https://github.com/HigherOrderCO/Bend/blob/main/src/imp/mod.rs except it doesn't cover indentation.

About the LSP, that's definitely something we'd like to have but isn't our focus at the moment. We can help the community build one, but we are a small team and we need to focus into actually completing the language first and making it robust and stable.

lukeribchester commented 3 months ago

I understand. This is already sufficient to get the plugin to a reasonable state for both syntaxes. You're welcome to close this since my questions have been answered, or keep it open and I'll share any helpful grammar-related contributions shy of a pull request.

Thank you!