A wild gaming DSL appears

Epic Games released the first working version of Verse. It was previous used by the Unreal Editor for Fortnite, but with Unreal Engine 6, it is part of the core project now. It seems that it is intended to replace the Blueprints visual language over time.

It seems to have some really interesting language features going on. It's functional. All code can be run at compile time or run time. It has a basic effects system and it has support for software transactional memory. Yes, apparently the team brought in Simon Peyton Jones to consult on the project. This seems bonkers, but Verse is driven by a event loop (state updates on every tick in the system) and is single threaded at the OS level, which makes all the above much more manageable.

In a sense, this does feel a bit like a simplified variant of Haskell. Mutability is allowed and monadic I/O (or monads in general) aren't key to the language. There are more keywords and built in support for things like effects and STM. However, it is also clearly a DSL for gaming. There is no mention of I/O, networking and other common libraries that a general programming language would have.

As it stands, the language is also very much tied to the Unreal Ecosystem and their whole "Metaverse" thing. The idea is that people can publish code and make it available in the Unreal Store, just like game assets and plugins are now. As such, the module system is based on a global namespace with URIs (using { /Verse.org/Random })