- Notifications
You must be signed in to change notification settings - Fork79
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
-
I'm creating this discussion to keep track of all our ideas for the VSCode extension. Let's try to keep one idea per top-level comment to keep things organized. |
BetaWas this translation helpful?Give feedback.
All reactions
Replies: 9 comments 6 replies
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
-
Highlight actions We could usesemantic highlighting to have different fontfaces for actions by consulting the effects. I'm not sure how to make that not look completely messy, we should be careful, but I thin that might be very useful if we get it right. |
BetaWas this translation helpful?Give feedback.
All reactions
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
-
Tasks It is possible to read arbitrary files and detect tasks, and these tasks can be run from the VSCode command pallete. Imagine we have some mdx-like (or some other configuration format like .toml files as atomkraft is using), detect tasks from that and have commands like |
BetaWas this translation helpful?Give feedback.
All reactions
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
-
Notebooks For protocol specification, we can have a markdown renderer that parses and processes Quint code blocks. The original |
BetaWas this translation helpful?Give feedback.
All reactions
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
-
How about the opposite: The users could write markdown in Quint comments. We could also render that in nice HTML. This would look like literate programming. |
BetaWas this translation helpful?Give feedback.
All reactions
-
Code completion Using type information + dot call format, we can offercode completion like any OOP language. That is, given a set |
BetaWas this translation helpful?Give feedback.
All reactions
❤️ 1
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
-
Type hints After opening parenthesis, we can show an operator's type (and maybe effect?) signature to help users remember which arguments are needed. PS: Currently, our built-in operators don't have names for their arguments, but it's much helpful to show signatures with named arguments ( Image fromvscode docs |
BetaWas this translation helpful?Give feedback.
All reactions
❤️ 1
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
-
Instead of showing effects on hover, we can actually show the mode, as typescript shows Actions can show the variables they update with the |
BetaWas this translation helpful?Give feedback.
All reactions
-
Type annotation inference We can infer types for the operators, but as in many programming languages, it's nice if the user explicitly annotates top-level operators so they can be sure their intentions are met. We can automate that task by providing a button for annotating an operator with it's inferred type, so the user only has to check for it's correction and then benefit from a established type contract. PS: idk why my gif recorder is so dark, sorry |
BetaWas this translation helpful?Give feedback.
All reactions
-
This would be a really cool feature! |
BetaWas this translation helpful?Give feedback.
All reactions
-
Code Navigation Easily find where a symbol is defined or all references to a symbol. Example fromvscode docs: |
BetaWas this translation helpful?Give feedback.
All reactions
-
Done in#546 |
BetaWas this translation helpful?Give feedback.
All reactions
🎉 3
-
Maybe we can render diagrams for individual actions, similar to what the ANTLR extension does |
BetaWas this translation helpful?Give feedback.
All reactions
❤️ 2
-
This should be relatively easy to implement now, since we have the call graph. Though it may be that people would find "Find all references" more useful than the graph (they are hard to render and hard to navigate). |
BetaWas this translation helpful?Give feedback.
All reactions
-
I was not thinking about this in terms of the call graph, but in terms of state machine transitions. I'm not sure if it is feasible, just raising the idea. For the call graph, I agree that "Go to References" is more useful. |
BetaWas this translation helpful?Give feedback.
All reactions
-
Under the heading of support for literate programming. @konnov noted that there are some standard practices spec authors (in particular
Support for literate formal specs could include templates and linting to |
BetaWas this translation helpful?Give feedback.
All reactions
👀 1