5 ms·
Oh really? I'm suddenly interested, because the way he generally pushes things to work is the way I like them to work. I've always been uncomfortable with Unit
by reificator 9y ago
Oh really? I'm suddenly interested, because the way he generally pushes things to work is the way I like them to work. I've always been uncomfortable with Unity's "pretend to be OO and pretend to be component based" approach, especially since they (IMO) excel at neither.
If Mike Acton is in charge, I'm going to start paying more attention to new developments there now.
Watching the talk at the bottom of the post, and I'm just at job scheduling. This already seems like a good move forward for Unity.
EDIT: Finished watching the talk. I'm floored. I figured there would be some changes but I didn't realize so much was already done to move to an ECS system. ECS fits the way I think better, performs well, and (IMO) lowers the content creation barriers for the kinds of games I like to make and play.
This is great news, as soon as I can download this, I'm in.
- pjmlp 9y agoThere are lots of other C# goodies and known devs joining Unity, there are other GDC 2018 talks with related content. Also the C# 7.x low level improvements not only had feedback from previous experience on Singularity and Midori, they also got input from Unity's work on HPC#.
- polskibus 9y agoWhat low level improvements in C# 7 do you mean? Ref returns, etc? Anything besides syntactic sugar?
- oblio 9y agoMaybe these? https://github.com/dotnet/corefxlab/blob/master/docs/specs/span.md https://github.com/dotnet/corefxlab/blob/master/docs/specs/s...
- pjmlp 9y agoAll ref and struct related improvements up to the upcoming 7.3. The Span, Memory and related structures. SIMD improvements. As for syntax sugar, MSIL is expressive enough to fully support C++ semantics due to Managed C++ and C++/CLI, so it is quite nice if more such features get exposed at C# level, instead of forcing us to use C++/CLI.
- polskibus 9y agoSome of those like span are more of a library or jit features than language things. There is still a lot to be done to match C++, in the meantime syntax is getting uglier and uglier (I prefer const& to ref readonly). That's the problem when performance is being surfaced into language so late. In my opinion they should focus much more on being able to create zerocost abstractions than they do now. I'm waiting for a ref read-only that can be exploited for performance by jit. There are lots of things missing for performance like generics specialization or type classes. You have to go through box unbox inside typeof(T)==typeof(int) even though the type is fixed inside the if statement. I hope that shapes proposal is going to be worked on, however I doubt it's going to happen any time soon. I hope that c# and jit teams start working on harder things that will help c# dominate performance oriented software engineering in the future.
- pjmlp 9y ago> Some of those like span are more of a library or jit features than language things. Sure, C++ also has got its span and string_view as library. > There is still a lot to be done to match C++, in the meantime syntax is getting uglier and uglier ... Actually I find the opposite regarding syntax. Don't forget C# has roots on the Pascal/Algol family of languages, even if it the syntax is C like. For example Modula-3 also has the same REF and READONLY, just in caps. :) Type classes, well kind of nice, not really into them, given interfaces. Generics specialization is more a matter of improving the compilers (JIT/AOT). Here .NET Native might be interesting given that it uses the same backend as Visual C++. As for the rest, I never felt it was that slow and even with the current language semantics, Unity is quite confident that their new AOT compiler is able to take advantage of the HPC# subset (which still is 100% valid C#) to start moving C++ engine parts into C#.
- polskibus 9y agoWill regular .NET or .NET core be able to take advantage of HPC#?
- 9y ago