A REPL for Verse?

It seems like the only way one can learn Verse is through the fairly lengthy edit, compile, link, load, run, cycle process of going from a VSCode edits to the LOG screen inside a running Fortnite client. (Right?)

Some command line REPL (Read-Eval-Print-Loop) access to a “core” Verse interpreter would be of great benefit in both learning and prototyping ideas.

Just my thoughts,
André

3 Likes

I’m a big believer in REPL and similar sorts of instant feedback systems.

Every language that I’ve worked on in the past has had some sort of REPL - for example here is the SkookumScript Workbench (REPL) and here is a video of it in action with Unreal.

And feedback from that:

We are working on some cool stuff in this area. I was disappointed that we didn’t have it in time for the UEFN Beta launch. It will come…

7 Likes

Hi Conan,

That’s good news indeed. When you say “disappointed that we didn’t have it in time …”, can one infer that it already exists in some form?

Lastly, can you say roughly when it will come?

Cheers,

André

1 Like

I meant I was disappointed that something like this wasn’t available - I wasn’t speaking to any specific development in progress. I literally started talking about some sort of REPL for Verse on the first day I joined Epic. As I say - I’ve had this sort of feature for other languages.

In terms of any feature ETAs - Epic policy is to not mention anything until at the earliest it is checked in, tested and about to ship in a known release.

Sometimes even then there is some risk of the feature ETA. Occasionally something that seems to work fine needs to be removed at the last minute because it interferes with a completely different feature, or there could be legal issues that need to be resolved, etc., etc.

So the only sure fire time a feature can be listed is after the release that publishes the feature.

At least this way there is no vaporware. :hotsprings:

Sorry - no ETA for Verse REPL. :zipper_mouth_face:

2 Likes

Please make a Stateful REPL like most of the REPLs out there; not like the SkookumScript REPL. It is essential that we can build an experiment with REPL, you know what I mean?

The States will be reset only when the game is restarted or by a user request.

Hey @ChrisK - I hear what you are saying.

Because Verse and SkookumScript are statically typechecked it is tricky to introduce new accessible typed variables on the fly. Both are able to affect the state of variables that are provided in instances based on scoped access. Verse is even pickier than SkookumScript in that Verse does not allow changing the type of a variable dynamically.

That being said, SkookumScript only scratched the surface of what is possible in a REPL. Ideally Verse will do everything that SkookumScript does today and much more - including some mechanism to affect existing state.

3 Likes