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

REPL-like experience #159

Open
jemc opened this issue Nov 22, 2021 · 0 comments
Open

REPL-like experience #159

jemc opened this issue Nov 22, 2021 · 0 comments
Labels
complexity 2: significant This is non-trivial, but still not a major undertaking kind: feature: compiler Adding a new compiler feature or platform target needs design Need to work out a reasonably solid plan before we start doing this.

Comments

@jemc
Copy link
Contributor

jemc commented Nov 22, 2021

Many users of languages like Ruby and Elixir are accustomed to having a REPL tool, where they can make use of an interactive prompt to explore available methods and try out code snippets.

We'd like to support something similar to this in Savi, though perhaps not a full-on REPL, because it is more difficult to do a full REPL in a strongly typed compiled language, than it is to do in a dynamic, interpreted language like Ruby. Crystal has no REPL for this reason. Rust has no official REPL, but there are some user projects aiming to bridge this gap.

In this ticket we'd like to gather relevant use cases for the REPL experience so we can decide on a feature set that gives users most of what they need/want, but without becoming prohibitively complex to implement or maintain. We should be able to meet basic needs using some caching / incremental compilation tricks we already have in the compiler, but we first need to gather features/requirements and make a plan.

@jemc jemc added complexity 2: significant This is non-trivial, but still not a major undertaking kind: feature: compiler Adding a new compiler feature or platform target needs design Need to work out a reasonably solid plan before we start doing this. labels Nov 22, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
complexity 2: significant This is non-trivial, but still not a major undertaking kind: feature: compiler Adding a new compiler feature or platform target needs design Need to work out a reasonably solid plan before we start doing this.
Projects
None yet
Development

No branches or pull requests

1 participant