Ask HN: Do any embedded languages support REPL-driven development?
From what I understand, to enable REPL-driven development, a language (or rather, its implementation) would have to satisfy these conditions:
1. Allow user to (re)define a function when encountering an error, without unwinding the stack.
2. Allow user to re-execute the operation that triggered the error.
Most runtimes, whether they belong to compiled or interpreted languages, do not support either of these operations.On the other hand, to be considered a embedded language, an implementation would haver to satisfy the following:
1. Light weight: Low memory and CPU usage
2. Portable: Builds everywhere natively, on each OS and hardware. No Cygwin! Yes C API!
3. Re-entrant and threadsafe: To allow clean multi-threading in the host app, without any GIL, etc. Allow multiple interpreter contexts, for plug-in systems.
4. Simple and Comprehensive API: Letting the host manipulate as many execution characteristics as possible, to serve its exact purpose.
Most well-known languages that do support REPL-driven development don't have these characteristics.So, I wonder, is any any language implementation that is designed to be embedded and also support REPL-driven workflows?