I would consider REPL a single pane on my interface…
I have several pane types in the Demo on my website the Ph is how I show this is ‘Augmented’ and not just code, don’t laugh, just my process
The language I dream about building every day is ‘Phas’, Phoenix Assembly (WASM) that runs JIT practically standalone in the browser but as you suggest and as is the case for me, I have used existing implementations in PHP…
If you are considering using eval() , bear in mind these words from the creator of PHP, Rasmus Lerdorf: “If eval() is the answer, you’re almost certainly asking the wrong question .” That is, you should be able to achieve your goals without resorting to eval() ."
Yet… “I know that I know that I know”…
Phox (Phoenix Box) - A box/container/folder/nest
Phout (Phoenix Output) - This is the simple REPL interface as in the video
Phif (Phoenix If) - This is a conditional box/nest, the branch below will only display/follow if this Boolean Expression (be it code or spoken language evaluates to True
Phor (Phoenix For Loop) - As with a for loop each item is the focus of the nest (however it is often important to include the whole list or table in the System Prompt to provide adequate context for spoken language)
I would suggest referencing the PHP link above and extrapolate for other control structures.
You must separate data objects from your REPL submissions or you are restricted to 128k tokens… My systems manage many 10s Gbs of zipped ‘Data Objects’ (Memory) and are restricted only by the computer I have access to (Rog Ally )… AI Selection of datasets via summary and context is useful in separate threaded requests.
Developers must open their minds beyond one-shot systems to provide interface to Users
Function calling is useful, I think I omitted functions in my website demo for now, but here is an example image of what you might add… It’s easier now to call functions with structured calling but it wasn’t particularly difficult even pre JSON with a little string matching etc.
The concept of IDE as I define it is an interface that frontends code as Scratch does because clearly there is a benefit to this… Many people DO code and the fine tuning that can be done makes a difference… Yes we autistic Devs should still feel some love from the community.
That said… The hard problems, the P != NP is the long tail… Devs != Non Devs … Pure voice is the only acceptable solution in my view.
A Non-Dev should be able to ‘Code’ a report, this is simple DTP. I was 10 or 11 when the internet arrived in my home town, sponsored by Apple. The focus then (as it should be now) was in educating people to use computers.
Then you had to teach how to use a mouse, a keyboard, what Windows IS …
Teaching people some simple logical constructs, is rather less of a challenge I am sure… Allowing them to talk to computers.