Verse (paper/slides, language reference) is the “language for the metaverse” being developed by Epic Games and some very well-known PL researchers.

It has some very ambitious and non-traditional features: first-class types, effects, non-strict evaluation, choice (kind of like non-determinism), and transactional memory. Transactional memory means that a Verse computation (transaction) can be aborted early, and all effects produced by the transaction will be reverted.

Verse also is interoperable with C++, and part of that interop is that C++ functions called in Verse must also have their C++ effects reverted. Furthermore, this is for graphically-intensive realtime games so this rollback implementation must cause as minimal overhead as possible. That’s what this article is about.

There’s already some Verse code running in Fortnite and you can write Fortnite plugins in Verse today, but it’s very WIP.

  • @[email protected]
    link
    fedilink
    English
    18 months ago

    Huh, the docs are the only place where I see if defined in that way; in the slide decks and the paper the term “choice” means what you would expect in a logic programming context, and they even show concrete examples of unification. Maybe the Unreal Engine is using a subset of the full language for its dialect so that it can be mapped to and from C++?

    • @cbarrick
      link
      English
      18 months ago

      Ah, ok. I’ll have to check this out in more detail.