RbSyn is non-interactive at the moment---there are specs and then the synthesizer finds some code that satisfies it without any further human input. However, the core of RbSyn supports partial programs in the form of holes, but that functionality is not exposed anywhere. A VSCode plugin will be the best way to write programs (partial/full) and let RbSyn do the completion. This involves the following steps:
[ ] Add surface syntax support to write type and/or effect holes
[ ] Investigate possible ways to integrate type inference of the holes so that types need not be written at the holes
[ ] Refactor RbSyn core into a background server that searches for program candidates
[ ] A VSCode plugin that takes the surface syntax passes that to a server and displays possible solutions
[ ] Investigate with a user study if program synthesis with a human in the loop actually aids in faster and correct programming?
RbSyn is non-interactive at the moment---there are specs and then the synthesizer finds some code that satisfies it without any further human input. However, the core of RbSyn supports partial programs in the form of holes, but that functionality is not exposed anywhere. A VSCode plugin will be the best way to write programs (partial/full) and let RbSyn do the completion. This involves the following steps: