Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Language Support: YAML #53

Open
lmt-swallow opened this issue Aug 31, 2021 · 1 comment
Open

Language Support: YAML #53

lmt-swallow opened this issue Aug 31, 2021 · 1 comment

Comments

@lmt-swallow
Copy link
Member

lmt-swallow commented Aug 31, 2021

tree-sitter grammar for YAML is here. It would be helpful to validate YAML quickly.

@lmt-swallow lmt-swallow added the type: feature New feature label Aug 31, 2021
@lmt-swallow lmt-swallow self-assigned this Aug 31, 2021
@lmt-swallow lmt-swallow changed the title YAML Support Language Support: YAML Aug 31, 2021
@lmt-swallow lmt-swallow removed their assignment Aug 31, 2021
@lmt-swallow lmt-swallow added this to To do in Language Support Aug 31, 2021
@lmt-swallow
Copy link
Member Author

lmt-swallow commented Oct 18, 2021

I've considered how this support should be and decided to introduce a new DSL to describe a query, apart from the current one, to search over/transform codes. Note that this decision still needs to be self-reviewed carefully.

Reason

Our existing DSL is good at describing a query in the almost same form as codes to search over/transform. However, for some languages that are used for describing a data structure instead of a control flow, such as JSON or YAML, this kinda DSL could be expressive too much! What we really need to handle them is a simpler one with minimum expressivity.

Initial Design of Our New DSL

Now I'm thinking about syntax & semantics for our new DSL. It can be something like jq or yq; their DSLs are expressive enough to describe what kind of data should be matched and how the data should be like.

Another choice could be some kinda language with a notation to describe the commutativity of components. I may have read an academic paper on this topic.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Development

No branches or pull requests

1 participant