The Verse Programming Language | GDC 2023

Поделиться
HTML-код
  • Опубликовано: 4 фев 2025

Комментарии • 257

  • @plagiats
    @plagiats Год назад +126

    Can't wait for the soon upcoming job offers requiring years of experience in Verse

    • @shayneoneill1506
      @shayneoneill1506 Год назад +9

      Lol. I remember when the IOS sdk first came out and I started seeing jobs asking for "5+ years in IOS programming". You could always spot when the HR manager instead of someone from IT had written the job requirements. That said I've also had people try and accuse me of lying when I tell them I had been using python since the 90s (Its actually a pretty old language, certainly older than JS, Java and so on)

    • @adamodimattia
      @adamodimattia Год назад +2

      hahaha, so true

  • @dansadler
    @dansadler Год назад +47

    I guess now I understand why they were forced to put a "violence" warning in the start of the video.

    • @Danta1ion
      @Danta1ion Год назад +4

      too hard for teens to understand it lol

  • @Zumito
    @Zumito Год назад +47

    I need someone with 10 years of experience in Verse

  • @TYTYTY81
    @TYTYTY81 Год назад +30

    Time stamps
    0:00 Intro
    7:00 Specifics of the language
    26:25 Future plans
    27:45 Verse API
    39:00 Q & A (more than 30 minutes!)

  • @APaleDot
    @APaleDot Год назад +31

    55:46 "Everybody's code could potentially interact with anybody else's code"
    Is it just me or does this sound like an absolute nightmare?

    • @lennysmileyface
      @lennysmileyface Год назад

      The bugs

    • @pXnTilde
      @pXnTilde Год назад +10

      Well, that's the problem they want to solve, right?

    • @adamz8314
      @adamz8314 Год назад

      not t going to work anyway.

    • @TheBigWazowski
      @TheBigWazowski Год назад +1

      The implication is that they hope to find a way to do that securely

    • @jsonkody
      @jsonkody 9 месяцев назад

      Thats the IDEA - it's nightmare in languages that are not made for this - so they made the Verse so it is NOT nightmare ;)
      Basically any pure functional oriented language with static typing would be order of magnitudes better in this than 'normal' procedural / OOP languages
      You need to be functional and immutable to be safe(r) AND you need static typing to make contract/api of how your program is working.

  • @marcfruchtman9473
    @marcfruchtman9473 Год назад +47

    Not Touching this until it makes it into Unreal Engine 5 for standalone desktop, with no server dependencies.

    • @zoldyg7979
      @zoldyg7979 Год назад

      Bro is it worth it for me as a beginner to dive in It and Unreal engine , cybersecurity all fields interest me , i plan to self-taught, what do you think on these field , and what would you recommend i start with as a beginner?

    • @marcfruchtman9473
      @marcfruchtman9473 Год назад +6

      @@zoldyg7979 Unreal Engine has amazing Tutorials. My advice is first ask yourself, are you willing to spend "years" learning it... if not, then you probably should pick something else.

    • @beatthebag
      @beatthebag 3 месяца назад

      @@zoldyg7979 Not sure Unreal Engine is the best tool to learn if your focus is "Cybersecurity"

  • @lennysmileyface
    @lennysmileyface Год назад +16

    Boy I do love typing redundant : and everywhere

    • @APaleDot
      @APaleDot Год назад +4

      I don't mind the colon to indicate types. Makes some things easier to parse at a glance, but OnBegin():void= is horrendous.

    • @lennysmileyface
      @lennysmileyface Год назад +3

      @@APaleDot I just don't know why we need to use a token that requires 2 keys to type when you could just make it a space like many other languages or something else that just requires 1 key.
      Yeah putting modifiers in inside function declarations hurts my eyes.
      If the idea is to make me type more keys it's doing a good job.

    • @APaleDot
      @APaleDot Год назад

      @@lennysmileyface
      One advantage is just to the compiler. Punctuation makes it easier to distinguish between various expressions. I mean, imagine if functions just used a space instead of parentheses. The compiler would have to check if every single expression was a function.
      One advantage is shown in this video: You can specify that something is a declaration without having to write out the type, which is useful if the type is obvious.
      Compare
      foo : SomeReallyLongClassName = new SomeReallyLongClassName()
      to
      foo := new SomeReallyLongClassName()
      C++ uses auto for this purpose but personally I think the "walrus" operator is cleaner. Ultimately, I think syntax is the least of this language's problems. People will adapt to syntax.

  • @Hector-bj3ls
    @Hector-bj3ls Год назад +11

    Only 8 minutes in and they already fucked it up.
    First guy: "We want a language that is familiar and similar to C#, Typescript, Java, Kotlin, etc..."
    Second guy: "So, the language has semantically significant white space like Haskel or Python."

    • @jambalaya974
      @jambalaya974 2 месяца назад

      idk if you watched the video, but he clarifies that you can use either or

  • @officialnickname
    @officialnickname Год назад +19

    I find the syntax a bit too "clever" and therefore hard to read. With the way this language works it seems like it omits many language features that you can already omit with other languages but shouldn't in order to keep your code readable. For example if you have a complex condition, it makes sense to put that in a bool variable, name it what is does and then put that variable in the if head. This way you can just read the variable's name, instead of having to analyze the whole condition everytime.
    Same with that minesweeper code. Cool that you can put all of that code in one for loop. But why would you do that? Who would want to read that kind of code?

    • @TheBigWazowski
      @TheBigWazowski Год назад +4

      For the “bool” point, it sounds like maybe you don’t like their “failure” system, which behaves similar to Rust’s Result system. If so, you can still have complex conditions that you store in a bool. You would just have to have written your function to return a bool, rather than “fail”. “Failure” is more of an exception system where you only throw upon an unexpected error that is unrecoverable from your current scope. I think it’s common to like terse syntax for exception handling because it can obfuscate the code. You may disagree

    • @everything-bagel
      @everything-bagel Месяц назад

      It reminds me of regex, where you can do a lot of tricky things, but severely sacrifice readability. I can’t imagine learning this as a first language.

  • @RigelOrionBeta
    @RigelOrionBeta Год назад +27

    How do you expect people to spend time learning this new language when you have spent so little time documenting your c++ engine code?
    That goes for all of your documentation, really. UE is a great engine, but the documentation, across the board, is garbage, especially for code. I can't imagine learning and using a new language with bad documentation.
    Do better in this regard. You are incredibly fortunate that you have an enormous and die hard community that fills these gaps for you. Do you expect them to do this for your new language too? I hope not.

    • @lennysmileyface
      @lennysmileyface Год назад +10

      The amount of times I look up something in the documentation and find absolutely nothing about how to use it.

    • @Anonymous_Man
      @Anonymous_Man Год назад +1

      The best UE documentation is the Python API... which makes sense because the python API only works for editor tools so it's the least useful. Just UE things 🤣.

  • @APaleDot
    @APaleDot Год назад +19

    I'm already seeing performance issues with this. For instance, you made array access a failable expression, which builds bounds-checking as a core assumption in the logic of the program. That means that not only do you incur a couple extra operations every time you want to access an array, each access _is potentially a branch!_ And it's not like you can just turn the feature off as an optimization, because it seems like many features of the language _depend_ on this branching in order to function.

    • @APaleDot
      @APaleDot Год назад

      @meatandmeat
      First of all, how do you know? Is there documentation or something?
      Secondly, what happens if I modify the array inside the loop? Is the compiler going to stop me from doing that like in C#, cause that would force me to constantly copy arrays.

    • @fuj1n
      @fuj1n Год назад +4

      Scripting languages are supposed to be safe, if you want to penny pinch that much, stick with C++.

    • @TheBigWazowski
      @TheBigWazowski Год назад +1

      The impact of bounds checking is not a concern for the vast majority of code in a codebase, only the hot paths. Mostly because the branch predictor will typically assume an in bounds access. An out of bounds access should be an ultra rare occurrence since that indicates a software bug. When accessing it inside a hotpath, you should be able to structure your code in such a way that either the compiler can optimize the bounds checking or using an “unsafe” api that you “manually” bounds check. There’s also hope for this to be executable on user/client side, so bounds checking is a nearly non-negotiable security requirement

    • @sttate
      @sttate 11 месяцев назад +2

      @@fuj1n I know this is late, but is Verse not intended to replace C++ eventually?

  • @jackstarsky3268
    @jackstarsky3268 Год назад +21

    The syntax just looks ugly to me with things like 'set' and array with squiggly braces, class definitions look confusing. Being inspired by so many languages why not just make it as simple as doing things on other programming languages(the reason why python and javascript became popular). And it runs in a VM like with blueprints, so if you want to write performant game, you still gotta do c++. it would have been better to just do extensions by which devs can write code in languages they are familiar, instead of learning a whole new system that still does not solve c++ problem in UE.
    As great as everything is world class in UE, I guess not being able to write performant comfortable code will always be an issue

    • @ChrisCarlos64
      @ChrisCarlos64 Год назад +1

      C++ is a great skill to learn if you wish to and it can go beyond UE4/5 even if you're willing to take it. However I think the new language isn't hot looking, but I'm not bothered too much by the syntax than I am by just knowing a new language has an uphill battle to convince people to use it first, documentation needs to be up to par to help newcomers, and it needs to be performant to some degree than the already available tools out there.

  • @aL3891_
    @aL3891_ Год назад +29

    For new language there is an incredibly high bar for utility and this just doesn't show that and nebulously claiming no other language is "scalable" enough doesn't cut it. You call it "open" but it can only be used in unreal engine, there is no open spec, let alone a compiler/runtime implementation available.
    To me this just look like a method to lock developers into the epic ecosystem. You could have added support for one of the many open source languages out there, with incredible performance, support and actual open development that people have been asking you to do for years, but instead you're reinventing the wheel.
    its also kind of funny how you say its timeless while naming it after a concept that is already fading in terms of mindshare

  • @Demnus
    @Demnus Год назад +18

    Love how ESRB rated this stuff as VIOLENCE!

  • @coldtech06
    @coldtech06 Год назад +10

    Not a fan of the syntax, but any text format replacement for blueprints is wellcome

    • @Lycam
      @Lycam Год назад +3

      They could make a bluescript, a typed version of blueprint and call a day.
      Instead they are creating rust/kotlin another new language which solves the same things

    • @coldtech06
      @coldtech06 Год назад +1

      ​@@Lycam yeah... like, you can see it! blueprints do have some sorte of 1 to 1 mapping to a text format. It sill would be a new language, but immediately accessible to everyone that used blueprints before.

  • @ymi_yugy3133
    @ymi_yugy3133 Год назад +23

    The vision for the language looks quite exciting, though the syntax seems a bit clunky in some areas. That said I'm a bit doubtful whether they can actually pull this off. The language looks incredibly ambitious from a design perspective. They are making a lot of decisions based on still unproven hypothesis. I would be kind of surprised they were able to realize their vision without having to do a major redesign of the language.
    This is made even harder by the insanely hard and resource intensive engineering that is needed to actually make this language useful. Just look at the monumental effort Google has to put in to build and maintain V8.

    • @fkknsikk
      @fkknsikk Год назад +1

      Well if we've seen anything it's that Epic doesn't shy away from major redesigns and they have a lot of resources. With time it could actually be quite useful.

    • @tronophono913
      @tronophono913 Год назад +3

      @@JosephSeed Because Apple has a history of abandoning technology after signing contracts. Like firewire, that was a huge mess. Less dependence on a company the better.

    • @Alperic27
      @Alperic27 Год назад

      Only one small criticism … franckenpyskell seems to me much more worthy of this magnificient genetics experiment … .. plus i think it is also missing the ability to redefine all the symbols to means something else locally … .. 🤦‍♂️🤦‍♂️🤦‍♂️🤦‍♂️🤦‍♂️🤦‍♂️🤦‍♂️🤦‍♂️🤦‍♂️

    • @Alperic27
      @Alperic27 Год назад +3

      OnBegin():void =
      … what kind of brain tumor makes a mind produce that for a method signature and make the same mind call it ‘simple for everyone’ … 🤦‍♂️🤦‍♂️

    • @davidzwitser
      @davidzwitser Год назад

      @@Alperic27 I think this is something you can get used to quite quickly and will actually find quite readable

  • @NUCLEARARMAMENT
    @NUCLEARARMAMENT Год назад +26

    Is this meant to fill the gap left by not having a C#-like language inside UE? It feels like it could be the spirtual successor of UnrealScript that was last used in UE3/UDK.

    • @kazioo2
      @kazioo2 Год назад +15

      If that was the case they would just adopt C# or another popular fun language. Verse feels more like something new created to do thins that weren't possible before - native transactions, internet-level variables and multitasking, multi-device code execution etc. Seems more next-genm GaaS oriented than a typical scripting language. A risky experiment, not a typical tool for a known old job.

    • @heinrich6294
      @heinrich6294 Год назад

      @@kazioo2 it this is like more high level type than scratch xD. So many functions implemented

    • @runninggames771
      @runninggames771 11 месяцев назад

      @@heinrich6294no its not. Do you know how to read?

  • @borasemiz9512
    @borasemiz9512 Год назад +23

    Like everything about unreal engine, this will also have a limited documentation.

    • @half_real
      @half_real Год назад

      sic Copilot X on it, it's supposed to add docs for functions

  • @Shrooblord
    @Shrooblord Год назад +31

    So finally the language that was promised when SkookumScript got absorbed reveals itself! I'm excited to see how this project matures. I was a huge fan of Skookum --- I hope Verse will give me similar vibes :)

    • @highdefinist9697
      @highdefinist9697 Год назад +1

      Does it still provide any relevant advantages compared to coroutines/UE5Coro/etc.?

    • @shayneoneill1506
      @shayneoneill1506 Год назад

      @@highdefinist9697 Watch the video dude.

  • @marchaubenstock
    @marchaubenstock Год назад +18

    Is this the Epic's objective-c equivalent? Oh boy

  • @DenninDalke
    @DenninDalke Год назад +17

    I don’t think this will go very far, it started the wrong way already.
    If there’s a need to design a new language, the syntax needs to be much simpler than the existent alternatives, otherwise, why would you create something that it’s even more complex and awkward than C++ itself, it’s just easier to stick to C++ then, of course C++ isn’t a script, but the syntax could be similar, because that’s the syntax most of the languages already uses, from C#, Java to JavaScript, they all have similarities to C++, I’m not saying they should use an existing language, they could just make it more similar to something people are already familiar.
    They’re creating a barrier to themselves, look at what Mojo language is doing, they’re not reinventing the wheel, they’re using a well known syntax to leverage the performance they want to achieve, zero-barrier. Verse seems so wrong to me, why you need to create a whole new language, when everything being proposed here could be done completely with just new APIs, not a new language!
    If the goal was creating a new language so easy that it would sounds like a “Verse” what they came up was a syntax built on top of curse words from an alien civilization.
    Why would you ask your users to learn something so completely different when there are so many languages out there people are already familiar with, that doesn’t share almost anything in common with Verse, that’s wrong, just wrong…

    • @mysticfakir2029
      @mysticfakir2029 Год назад +6

      I completely disagree. Firstly, the syntax IS simple. Secondly, We need a flexible, expressive language to take us into the future.
      Understanding the core fundamentals of programming gives you the ability to pick up new languages fast. If you want to cut corners then you will be left behind. I recognise a lot of great decisions being made by EPIC in designing The Verse here.
      We need a language that can write books like Harry Potter as well as The Sun Also Rises.
      Don’t blame the tools.

    • @TheBigWazowski
      @TheBigWazowski Год назад

      I think it’s mostly cause people hate the angle brackets . If they could find a nicer syntax for overriding and effects, I think it would go a long way, which I think is doable since they’re really more like metadata about the function than it’s in/out signature

    • @eigenfield
      @eigenfield Год назад

      Programmers long enough, doesn't care much of the syntax but instead in the underlying flow or feel of the language. This Verse language is giving us new flows and it is hammering down the repetitive and error prone scaffolding associated with scalability. I don't think that an existing language can be extended to do all this, without getting mangled later on down the road

    • @nanman_chief
      @nanman_chief Год назад

      There are indeed many programming languages ​​that are more obscure than C++, but no programming language is more complex than C++.

  • @abhijitleihaorambam3763
    @abhijitleihaorambam3763 Год назад +34

    Wtf is with the syntax.

    • @lennysmileyface
      @lennysmileyface Год назад +13

      var wtf:String[is this] ?int)

    • @TheBigWazowski
      @TheBigWazowski Год назад +1

      I feel like most of the syntax is pretty familiar if you’re familiar with statically typed languages with generics like (C++, C#, J***, …)

  • @APaleDot
    @APaleDot Год назад +26

    They're calling it Verse because they want it to power the metaverse? Who actually cares about the metaverse? Why would you design a language for games around some fringe concept that most people are not going to care about. It's like building a language around the internet-of-things. People are already designing new languages that are fast and universal, perfectly acceptable for games. You could have used Rust or Odin or Jai, but you chose to just make a new language that has no utility outside your ecosystem under the assumption it will power the "metaverse". If anything, it just relegates the metaverse to be even more fringe than it already is.

    • @kookiemunster-ni4yg
      @kookiemunster-ni4yg Год назад +3

      Um, a verse is part of poetry. Maybe before writing the whole thing you could have just run a quick dictionary search?
      Verse (noun): writing arranged with a metrical rhythm, typically having a rhyme.
      Also this Verse language is apparently designed to be integrated in other applications/engines since it's an opensource project, so there goes the "universal" argument as well.

    • @APaleDot
      @APaleDot Год назад +13

      @@kookiemunster-ni4yg
      Yes, I am aware of what a "verse" is, smh.
      It doesn't negate all the garbage they spewed about the metaverse. It's clearly a play on the word.
      Not sure what you mean by the "universal" argument. My point is they are trying to insert themselves on the ground floor of this "metaverse" concept so they can have substantial control over the space. But building a language that most people aren't going to use in order to serve that function, negates the whole point of it.

    • @kookiemunster-ni4yg
      @kookiemunster-ni4yg Год назад +1

      ​@@APaleDot I'm not at all a fan of the metaverse so please don't think I like the unnecessary (and frankly embarrassing) insistence on the metaverse support. I totally agree with the idea that the metaverse could be a factor in the naming of "Verse" but I was just highlighting that the word by itself does exist and makes sense for the name of a programming language.
      As for the "universal" thing it was in response to what you said: "People are already designing new languages that are fast and universal..."
      You pointed out that they could have used Rust or Odin etc. My point was that they are introducing an open language that can be integrated into engines other than just UE so it's supposedly not just for their own ecosystem. Also having your own language means you can make relatively quick changes based on feedback.
      Now whether or not that actually becomes a thing we'll have to wait and see. Personally I don't think it's going to be adopted by the industry too much, if at all. It'll very likely just stay in use by people who are into UEFN.

    • @APaleDot
      @APaleDot Год назад +2

      @@kookiemunster-ni4yg
      Well Rust and Odin are both open-source. You can use them in whatever project you want. But it seems like they are using the metaverse as a reason to design a whole new language with all these features to ensure that anyone's code can interoperate with anyone else's and it just sounds like so much snake oil. To me it seems like they know they are the 2000 pound gorilla in the room and are trying to mark their territory. Like, "This metaverse is going to change everything so let's make it _our_ language that runs it, rather than any of the new languages I mentioned (which are built for performance), so then we'll control the ecosystem."
      I don't know if you're familiar with the concept of Chokepoint Capitalism, but it's basically that. I understand having a custom scripting language for an engine. It's a little annoying, but it often makes the language simpler and gives the engine developers more control over features in the language. But they are clearly trying to make this THE new thing that everyone uses even outside their engine, and I am not impressed.

    • @MiklosHajma
      @MiklosHajma Год назад

      @@APaleDot That's the same feeling I got when I watched this video. And that whole for loop syntax nightmare is through a kind of macro? How debuggable is this? Oh my.

  • @MusikArsenal
    @MusikArsenal Год назад +5

    Based on my experience with Verse in UEFN, it is an incredibly buggy, limited, restrictive and horrible language so far. Especially having to nest tons of if clauses for nothing else but querying optionals, broken generics without mutables, lack of casting and so on.

  • @jaysnaystube
    @jaysnaystube Год назад +11

    i have no real coding experience, i have only ever coded a few lines in a class many moons ago, i found this easy to follow, maybe being in my mid/late 40's im not to old to learn to code😉well done

  • @MattOstgard
    @MattOstgard Год назад +2

    I'll wait for the performance focused variant language, Inverse.

  • @bashful228
    @bashful228 Год назад +1

    @25:50 the failable indexes for array is a bit like list comprehensions in Haskell. interesting .

  • @sirinath
    @sirinath 7 месяцев назад

    Also ability to run without a VM though in there can be a VM for some cases.

  • @figloalds
    @figloalds Год назад +20

    "The language does also support squiggly braces if you don't like syntactically significant indentation"
    THANK YOU KINDLY
    At first I thought it was going to be trash from the examples I glanced, but now I like it

    • @jensge994
      @jensge994 Год назад +1

      Just out of uni or self tought?

  • @sirinath
    @sirinath 7 месяцев назад

    Also get other big tech companies including those outside gaming on board and as collaborators. This will make it more successful.

  • @blastygamez
    @blastygamez Год назад +1

    Tbh it’s better then I expected

  • @folgoris
    @folgoris 10 месяцев назад +3

    worst syntax I've ever seen, inverted pascal case, the lack of braces, the abuse of white space, the multiple constructors,
    they took all the worst aspects from every language,

  • @Michael-gf2dy
    @Michael-gf2dy 10 месяцев назад +5

    Coming from C++/BP to Verse feels like going from a Tesla to a Horse Cart. Things that take 10 seconds in BP, such as attaching one Actor to another, take a lot of time and effort in Verse. In its current state, it's not really a good language for programming gameplay. Those who endorse Verse, are usually newer developers without much experience or knowledge of what it takes to code complex and intricate gameplay systems. But yea, no offense to those who jump on it for the UEFN money. In times where you need to fight for every wishlist on Steam, it's great that we have a metaverse platform now with millions of potential players. So Epic is on the right track overall, and I'm somewhat hopeful for the future. :)

  • @ymi_yugy3133
    @ymi_yugy3133 Год назад +8

    What about compile times? Looking at Rust or C++ a sophisticated type system seems to be a recipe for slow compile times, which is a bit of a non starter for a scripting language.

    • @SterileNeutrino
      @SterileNeutrino Год назад +3

      That's the problem with dynamic languages - you can write code that will bite you at runtime extremely quickly. I would say good IDE-language integration, leaving out the "#include" and other horribad ideas made out of desperation rather than foresight, and fast CPUs can definitely put you into the "fast enough" comfort zone. Note that I'm not sure whether the difference between scripting and non-scripting languages is valid nowadays. You can script in F#...

    • @ymi_yugy3133
      @ymi_yugy3133 Год назад +2

      @@SterileNeutrino the complexity of the type system isn’t necessarily about whether a language is dynamic. C and Go both have very simple type systems and compile quite quickly, despite having static types.

    • @TheBigWazowski
      @TheBigWazowski Год назад

      They did mention potentially making an interpreter. Which potentially you could use while developing and just compile for release

    • @digitalspecter
      @digitalspecter Год назад +4

      C++'s slowness doesn't come from "a sophisticated type system" because there isn't one. It's slow because of how it handles headers and templates. Look at Ocaml for example that actually has pretty great type system and it compiles really quickly.

    • @heavymetalmixer91
      @heavymetalmixer91 Год назад +1

      @@digitalspecter Don't forget that last week all the three major C++ compilers got support for modules, now only CMake remains and the C++ compiling times (and header guard bugs) wil decrease.

  • @tastysnak
    @tastysnak Год назад +6

    This is great! So much information in the one video. Am going to have to get used to arrays being mutable data structures though. 😳

  • @varuntnindia
    @varuntnindia Год назад +7

    He becomes the Architect of the Metaverse -> the Metaverse becomes conscious -> The AI creates a persona for itself based on the looks and speech pattern of the original Architect -> It uses Metaverse to trap humans into a sustained state of immersion -> It renames Metaverse as Matrix and gives itself the purpose of debugging anomalies!

  • @bra5081
    @bra5081 Год назад +13

    Hmm sounds promising but the syntax can easily become unreadable...

    • @noahlederer8587
      @noahlederer8587 Год назад

      welcome to functional programming 🥲

    • @anilaxsus6376
      @anilaxsus6376 Год назад +1

      @@noahlederer8587 i dont think the syntax is unreadable because its functional programming, i think people implement it that way

  • @ulrich-tonmoy
    @ulrich-tonmoy Год назад +12

    Its ok for game engine to create their own language as keeping uptodate with these scripting language is harder than creating one for yourself but please kindly make the syntax simpler or similar to simple and popular language like Python, C# or JS/TS or make it more simpler not harder like bullshit

  • @Johnjds
    @Johnjds 4 месяца назад

    I understand people’s reactions, but this is huge

  • @SterileNeutrino
    @SterileNeutrino Год назад +2

    So is it like Curry ("A Truly Integrated Functional Logic Programming Language") but with a "mainstream" push? It took about 50 years for "functional programmming" to start being considered by "industry", let's see how this fares. Hell, some people consider Prolog to still be "research", which says a lot.

  • @zombi1034
    @zombi1034 Год назад +20

    Sorry, UE is already complicated enough, I don’t feel like learning a completely new language on top of it😂😂 Maybe in 50 years when I eventually learned most of UE and have free brain capacity again

  • @firstname9150
    @firstname9150 Год назад +1

    Where is SPJ? Don't even see his name in the credits (unless I missed it)

  • @fytubevw
    @fytubevw Год назад +2

    I love the 8 Queens puzzle -sort of thing, with Verse's Minesweeper example. Sometimes defining the goal (or setup) is much more comfortable than thinking about the nitty gritty 'real world' with algorithms, or algorithm-like thinking even. :)

  • @emmettbrown6418
    @emmettbrown6418 Год назад +6

    Is yet another specialized programming language needed?

  • @sirinath
    @sirinath 7 месяцев назад

    Structure, module, classes are types so why make a distinction?
    You can treat them the same and have a unified syntax. This will make the language more powerful as you can use all these in place of generics.

  • @sirinath
    @sirinath 7 месяцев назад

    Another area to think about is effect system.

  • @jeffclark5206
    @jeffclark5206 10 месяцев назад +2

    So instead of just using C# you went and invented something that makes no sense? I cant wait to see how hard it is for people to learn this, everything is going to be an unreadable mess.

  • @Kinos141
    @Kinos141 Год назад +2

    Maybe I will like Verse once its documentation is fully written. Right now, it's not my fav language.

  • @lennysmileyface
    @lennysmileyface Год назад +11

    I don't know why I would want my games connected to a metaverse.

    • @amirhm6459
      @amirhm6459 Год назад

      For me personally, what I am thinking is, I will get more publications, self-growing software because everyone else can improve my game by editing or expanding public functions, and very flexible income opportunity from the deep transaction system. With note, if this metaverse is going well

  • @davidblissett5315
    @davidblissett5315 Год назад +35

    No. no. no!!! C, C++, C#, Javascript Yes!!!! Why make a new language that totally alienates 75% of the Developers on the Planet. Why??? Not learning it. No. Put the language in the C, C++, C#, Javascript family and stop trying to be a Creator of a Language!!! I'm not learning a new language with a whole new coding syntax paradigm. Yes, Creators like to be Creative, but Coders like to keep the syntax simple... Wait... How about this for setting new equal assignment. Instead of X = 1 we will now do "X // \\ => ! For

    • @matissznajder
      @matissznajder Год назад +2

      xd

    • @Rick_Jagger
      @Rick_Jagger Год назад +4

      💯

    • @ulrich-tonmoy
      @ulrich-tonmoy Год назад +8

      these game engine really like to create new language as its much easier to maintain than a thirdparty language but they should keep the syntax similar to simple and popular lang

    • @AuntJemimaGames
      @AuntJemimaGames Год назад +19

      If your custom scripting language makes C++ look like a more accessible starter language, your syntax is just a problem...

    • @HolyItsTruncus
      @HolyItsTruncus Год назад

      I just don’t like that blueprints are not native! It runs in a vm. Not good for performance.

  • @sirinath
    @sirinath 7 месяцев назад

    Make the whole language syntax macro driven over the theoretical primitive so in case uses don't like the given syntax this can be changed locally in a well scoped manner. Also mix and match different syntax again limited in certain scopes.

  • @LeiffNathanAMendoza
    @LeiffNathanAMendoza Год назад +2

    great Q&A awesome questions... kudos!

  • @SnakeEngine
    @SnakeEngine Год назад +3

    In order to create a timeless language that "can do everything", you will have to establish new math that is not based on set theory. But it is hard to break from cultural indoctrination as almost everything taught in academia is based on set theory.
    Just by its syntax, it is evident that the proper way of abstraction is not there. You are repeating the same mistakes as every supposed "game changing" language did.

    • @emmanueloluga9770
      @emmanueloluga9770 Год назад +1

      So what would be the most readily available option to resolving these mistakes? In lieu of the fact that we are not using new maths based on set theory

  • @sirinath
    @sirinath 7 месяцев назад

    Most of the UI should ideally be moved into /Verse.org/ so this can be used in non gamming applications without having to use the gamming engine which most likely not open sourced.

  • @flixfort
    @flixfort Год назад

    That is awesome!

  • @sirinath
    @sirinath 7 месяцев назад

    This would be great. Is it also consider making at least subset of the the language a systems programming language. Esoterically a better and safe C/C++, Rust replacement.

  • @mariab2613
    @mariab2613 Год назад

    Sounds great, I wanna use it. So, where is documentation?

  • @danielsmith5626
    @danielsmith5626 Год назад

    43:55 I'm surprised they didn't double down on objects like in smalltalk.

  • @cryzenx.
    @cryzenx. Год назад +3

    Amazing Tim sweeney

  • @serrion1394
    @serrion1394 Год назад +3

    Can we have verse in rider? XD

  • @Sweenus987
    @Sweenus987 Год назад +39

    Not liking this syntax

    • @Rehd66
      @Rehd66 Год назад

      Join the club

    • @adamodimattia
      @adamodimattia 4 месяца назад

      To me, the syntax is roughly ok, but it seems inconsequential at times, like "?Z:int", shouldn't "?" be part of the type instead of variable name? Like so "Z:int?" like it's been in every other language? But I guess it could be reasoned for too....

  • @sabiplaypuzzles7332
    @sabiplaypuzzles7332 Год назад +1

    Is Tim Sweeney having a delayed midlife crisis? He's already a legend. But apparently he wants to go down in history as the Tim Berners-Lee of the metaverse.

  • @pto2k
    @pto2k Год назад +7

    What if Epic releases a trained GPT AI model that can write verse inside UEFN to take care all the :=[?](?){?}: stuff ?

  • @crim3522
    @crim3522 Год назад +1

    Meanwhile Unity:
    Has no Jump function in Character Controller

  • @cojocaruernest5406
    @cojocaruernest5406 Год назад

    I am like 7 months in python and its libraries ... man , i really do not need anything else right now 😁

    • @eigenfield
      @eigenfield Год назад

      As stated, why those Rust decorations when the compiler can deal with them, is the explanation.

  • @highdefinist9697
    @highdefinist9697 Год назад +6

    I feel like this is a bit late, considering that C++ now has coroutines, and can do all those "wait until one/some/all finished"-type commands with only moderate effort (basically, you just shift around coroutines between different Unreal tick functions), while being very efficient. Considering there is also Unreal Mass (if you want performance and some composition-expressivity at the cost of conciseness), and of course Blueprints (if you want ease of use and... not much else), I am not sure for which use case this is not just good for, but significantly better than the alternatives - but who knows, I would like to be proven wrong.

    • @CyberWolf755
      @CyberWolf755 Год назад +4

      This slots in between BP and C++. Where it can get the iteration and simpler syntax like BP, with the easier source control and writing of text format files.
      BPs will stay in UE, especially for animation and control rig, but Verse will be geared for easier gameplay logic, AI and such.

    • @highdefinist9697
      @highdefinist9697 Год назад +3

      @@CyberWolf755 Well, if you were to write the scripts they wrote in C++, they would look almost the same - the main difference being way more curly brackets for the lambdas. Some things would even be simpler, for example you would not need as many deferred removals of objects, as C++ automatically destructs objects when they go out of scope.
      The main thing missing in C++ before C++ 20 were really latent operations, but that is no longer the case.
      Now, in practice, C++ has a couple of downsides, like tedious debugging of coroutines, slow compile times, potentially confusing memory allocation etc... but Unreal actually comes with a lot of stuff to make these things a lot easier, so... yeah. I just don't see the benefit of Verse. The best I can realistically see coming out of this is Unreal Engine Developers taking some inspiration from this system to remove some more rough edges associated with using C++ in Unreal.

    • @bashful228
      @bashful228 Год назад +1

      its both scripting, server and application language with seperate implementations for a start. function programming roots was what Simon Peyton jones claimed here: ruclips.net/video/832JF1o7Ck8/видео.html
      but the release notes don't reflect what he was foreshadowing.

  • @jamesc9168
    @jamesc9168 Год назад +2

    The syntax is actually pretty good after using it for a bit... I like it better without the curly braces. I think it needs better linting in VSCode though... and a way to write CLI programs with it (VM? Interpreter?)

  • @VirtualShaft
    @VirtualShaft Год назад +13

    Could have used an existing language. This is so weird and their explanation is not convincing.

  • @bojordan64
    @bojordan64 Год назад

    Was only half listening in the background, but its neat that it will print all parts of Sommer Ray. Powerful.

  • @adiazpolo
    @adiazpolo Год назад +2

    reminds me of unrealscript

  • @DigitalSavior
    @DigitalSavior Год назад +2

    Doesn't seem very C# inspired at least in regards to syntax.

  • @zhenzhang3451
    @zhenzhang3451 Год назад +12

    when you develop something please ask your customers ..... why put money on this?........

  • @necuz
    @necuz Год назад +9

    Yup, that's a programming language.

  • @klovvin
    @klovvin Год назад +1

    Why create weird new syntax?? Just use JS style of C# or anything anybody uses

  • @dozerthecat
    @dozerthecat Год назад +1

    Instead of making something good better... and since we have infinite money, lets reinvent the wheel, but make it oval.
    The world doesnt need new syntax. Smh. This is typical of people who no longer code, but want to make something new. Just add features to python ffs.

  • @xirtus
    @xirtus 10 месяцев назад

    verse + gpt

  • @RottenPineGames
    @RottenPineGames 5 месяцев назад

    This language should be classified as a war crime. I actually came back to edit this. I am sure the language is fine, the Documentation is the crime against humanity

  • @PaulNelligan
    @PaulNelligan Год назад +2

    I really find myself wondering as a game developer; how will this change the gaming industry?, are we all just going to be developing tiny parts of a big system now? Will traditional gaming die off? Will world-building become a relic of the past?

    • @TemporaryVoid
      @TemporaryVoid Год назад

      In the long term it's probably Unreal that is going to become a relic of the past.

  • @DLVRYDRYVR
    @DLVRYDRYVR Год назад

    Cool 😎

  • @Rakhu-e2f
    @Rakhu-e2f Год назад

    Will this verse language replace C++ in UE ?

    • @SnakeEngine
      @SnakeEngine Год назад +3

      No, it will be complementary.

  • @Failofsociety
    @Failofsociety Год назад +14

    capitalized values? yeah, everyone like tapping the shift key constantly ... NOT!
    Why make things the opposite of everyone else?! Oh, because you want noone to use it, I get it!

  • @bashful228
    @bashful228 Год назад

    how many ads? never had more ads on a single video than this @unreall! so much for education...

  • @L.archeDeNoe
    @L.archeDeNoe Год назад +4

    It looks nice

  • @gitbuh12345qwerty
    @gitbuh12345qwerty 11 месяцев назад +2

    i DON'T KNOW DUDE, what a waste of time and resources.

  • @duncsi968
    @duncsi968 Год назад +2

    51:40 its why you come here ( ͡° ͜ʖ ͡°)

  • @grimfairytail4804
    @grimfairytail4804 Год назад +2

    Let’s go!!

  • @carlosrivadulla8903
    @carlosrivadulla8903 Год назад +6

    pls wrap verse with GTP to use it with natural language or pseudocode. If not, at least make verse blueprints to overcome the syntax complexity.

  • @cyancaelus6456
    @cyancaelus6456 Год назад

    What Programming Language is Unreal Engine Written in?

  • @muneebhero1159
    @muneebhero1159 Год назад

    The best in the west

  • @Rumble_Ball
    @Rumble_Ball Год назад +21

    The syntax is the worst i've ever seen ...

  • @ДімаГубатенко
    @ДімаГубатенко 9 месяцев назад

    Might this language be created by influencing of MetaVerse?

  • @thomase5286
    @thomase5286 Год назад +1

    more people will use blueprints no teaching req

  • @LtdJorge
    @LtdJorge Год назад +5

    Another lang to learn...

  • @encryption767
    @encryption767 Год назад +13

    No thanks. Stop wasting your time on the next failed uscript please.

  • @not_amanullah
    @not_amanullah 9 месяцев назад

  • @hyperbolee1060
    @hyperbolee1060 Год назад +5

    I don't understand how it's even possible to come up with syntax this ugly

  • @folgorem
    @folgorem 10 месяцев назад

    continue with unreal tournament

  • @Alperic27
    @Alperic27 Год назад +2

    Yeah… perl is back!!! … another unending clusterfuck of cryptic redefinitions of simple symbols… all that is missing are more of these xxxxx: … and then of course, icing of all icings… the ability to redefine everything in a local context… … cant wait 😀😀😀… to see that … just one tiny criticism though: verse … what’s that for a name… franckenpyskell would have been a much more worthy name for this marvell of modern genetic cloning…

  • @Headshots_fn
    @Headshots_fn Год назад +2

    First, so will UEFN eventually be as advanced as UE5 and 6?

  • @theaninova
    @theaninova Год назад +7

    I don't think most people enough of an appreciation for the elegance of its syntax. Some parts look ugly coming from other languages but its only until you start seeing the bigger picture of why certain parts of the syntax are designed in some specific way. And the truth is just that practically every other language has made mistakes in the past that are now impossible to recover from, be that dynamic typing in Python, exceptions in C#, shallow mutability in practically all languages. The elegance of a language comes from providing simple, generalized concepts that are easy to understand and deriving common patterns from that.
    "actually, b is basically just a so you can do that yourself as well"
    Like the inline lambdas and trailing lambda syntax of Kotlin being the foundation for Jetpack Compose. And from what I've seen so far Verse seems to do that on a level I've rarely ever seen outside of obscure (non-practical) language like Haskell.