You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Good call - REPL support is a high-priority feature on the roadmap :)
The working plan is to provide APIs (in both Rust and GameLisp) which can be used to straightforwardly write a console-based REPL, but which also make it easy to define a custom in-game console, mostly intended for debugging. It's not just (loop (print (eval (read))))... the API will need to deal with let, let-macro, error-handling, stack frame inspection/mutation, and so on.
It'll be important to come up with a design sketch for hotloading (#10) and interactive programming (#9) first, since there's potentially a lot of overlap between these features
yurapyon, travv0, lerouxrgd, Grinshpon, sniperliu and 1 more
Once the REPL is pretty settled I could always look at integrating it into Conjure as a client. It's REPL tooling for various lisps, they share UX and common code as much as possible. Right now it supports Racket, Fennel, Clojure and Janet. Just thought it might be neat to provide some fairly intricate tooling since it's not a huge amount of work on my part 😄
There's a relevant article here, with discussion here.
Initially, I'll only be aiming for a REPL which is good enough to implement a decent in-game debugging console. The REPL-driven development style discussed in the article (and issue #9) will be a non-goal.
Activity
fleabitdev commentedon Jun 13, 2020
Good call - REPL support is a high-priority feature on the roadmap :)
The working plan is to provide APIs (in both Rust and GameLisp) which can be used to straightforwardly write a console-based REPL, but which also make it easy to define a custom in-game console, mostly intended for debugging. It's not just
(loop (print (eval (read))))
... the API will need to deal withlet
,let-macro
, error-handling, stack frame inspection/mutation, and so on.It'll be important to come up with a design sketch for hotloading (#10) and interactive programming (#9) first, since there's potentially a lot of overlap between these features
Olical commentedon Dec 21, 2020
Once the REPL is pretty settled I could always look at integrating it into Conjure as a client. It's REPL tooling for various lisps, they share UX and common code as much as possible. Right now it supports Racket, Fennel, Clojure and Janet. Just thought it might be neat to provide some fairly intricate tooling since it's not a huge amount of work on my part 😄
parse_all
fails #30fleabitdev commentedon Feb 25, 2021
There's a relevant article here, with discussion here.
Initially, I'll only be aiming for a REPL which is good enough to implement a decent in-game debugging console. The REPL-driven development style discussed in the article (and issue #9) will be a non-goal.