I am a computer science student, and as part of my coursework, we are tasked with researching a new technology and presenting it to the class. I chose to present Verse because I found it intriguing that a major company like Epic Games is developing a language specifically for gaming rather than relying on established languages like C++.
However, after doing some research and going through a few tutorials, I’m struggling to understand what makes Verse unique compared to C++ (or even languages like Java/C#, ignoring optimization concerns).
So far, here’s what I’ve gathered:
-Failable expressions must exist in contexts that allow for failure (e.g., within an if statement).
-It seems to offer simplified multithreading, which is beneficial for game development.
Is this really all, or am I missing key features that set Verse apart from other languages? Any insights would be greatly appreciated!
I hope someone higher up the food chain will respond to your question, but since I’ve been studying Verse for almost two years now, I feel I can point you to some things that point to its uniqueness. From what I understand, it is to be the language of the MetaVerse and cannot fail at run time. And it must allow thousands of programmers to be coding changes at the same time while the program is running on the simulation.
At the core, from what I understand, it is based on the concept of transactional memory. What strikes me about the language is how strongly typed it is and how strict it is in letting you know that you are doing something that you are not supposed to. I’ve programmed in Python, Pascal, Java, and a little bit of C# and Verse definitely feels much tighter.
You’re not completely right here, failure can happen and trigger rollback, which will in fact undo pending changes inside the current failure context
I think it’s not still completely implemented, OkStudio already posted but in case you didn’t see the link, this can help you Auto RTFM article
Also there’s no multithreading in Verse (yet), it’s rather coroutine handling (which is an issue related to game dev mostly since there’s this ticking concept) which they call Concurrency
Also I think you might want to look for articles related to MaxVerse since it’s supposed to be the version that will get shipped with UE6 if I’m not mistaken