December 07

On Thursday, 7 December 2023 at 15:53:35 UTC, Martyn wrote:

>

Even John Carmack has spoken about using Python in recent years. It all depends what they are doing with them, I suppose.

If Mike is still 'doing stuff in C#' like the burst compiler then good for him. Sounds like he put a lot of effort into that project and does not want to walk away from it. Again.. point?

John Carmack, three days ago:

"I was helping with some C code yesterday and got a bunch of errors — I hadn’t put a semicolon on any of the lines. I’m writing too much python code!" [1]

:-P

[1] https://twitter.com/ID_AA_Carmack/status/1731689997688832052

December 07

On Thursday, 7 December 2023 at 17:23:28 UTC, Paolo Invernizzi wrote:

>

On Thursday, 7 December 2023 at 15:53:35 UTC, Martyn wrote:

>

Even John Carmack has spoken about using Python in recent years. It all depends what they are doing with them, I suppose.

If Mike is still 'doing stuff in C#' like the burst compiler then good for him. Sounds like he put a lot of effort into that project and does not want to walk away from it. Again.. point?

John Carmack, three days ago:

"I was helping with some C code yesterday and got a bunch of errors — I hadn’t put a semicolon on any of the lines. I’m writing too much python code!" [1]

:-P

[1] https://twitter.com/ID_AA_Carmack/status/1731689997688832052

Because Carmack moved into AI research business.. and there is Python is the only real player.

December 07

On Thursday, 7 December 2023 at 10:08:14 UTC, Siarhei Siamashka wrote:

>

Is this actually true? My understanding is that @nogc code fragments can be called from the GC code just fine. Though some problems may arise with callback functions or delegates/closures here and there.

I would've lied if I said you can't use @nogc code in GC code. But in a reasonably sized framework (eg UI framework) @nogc will start bringing in too much issues eventually. Delegates is just one of the things where @nogc issues are apparent. If you want to have a @nogc control in a UI framework and have callbacks/events in it, you are going to force the user of that control to use @nogc code.

The less apparent issue with @nogc are interfaces\subclasses. If you have a @nogc in your interface, you're kind of forcing @nogc onto all of the users of that interface:

interface A
{
    void a() @nogc;
}

class B : A
{
    void a() { writeln("b"); } // Oops -- a() is @nogc
}
>

Or do you mean that manual dynamic memory allocation/deallocation in the @nogc library can make things much more complicated?

This is probably the least of my concerns, because

>

But if a @nogc library never exposes manually allocated memory slices to its API users, then everything is fine. In fact, various C libraries (such as glibc, zlib, sqlite) are all effectively @nogc and they can be used from D code.

that only works if you don't have any reasonably complex inheritance structure in your code. If you have subclasses and stuff, this manually allocated stuff becomes almost impossible to reasonabley control from either side.

December 07

On Thursday, 7 December 2023 at 14:32:26 UTC, ryuukk_ wrote:

>

On Thursday, 7 December 2023 at 14:21:51 UTC, Paulo Pinto wrote:

>

[...]

That's exactly why Unity went to shit and he left as a result, they picked the wrong language, so they wasted many years working on working around the language

That's what happen when you work with GC/OOP people, nothing good comes out of it, you get replaced by what ever is new and trendy

And then the people will exclude the people who care (Mike Acton) to empower the developprs who need assistance (GC/OOP) because these people can promote idiocracy, as opposed to meritocracy backed by tangible resulsts (how fast code run, and how efficient it is)

Unreal is also full of OOP, and Unreal C++ alongside Blueprints uses a GC.

Their business is doing quite well.

December 07

On Thursday, 7 December 2023 at 18:41:04 UTC, Sergey wrote:

>

Because Carmack moved into AI research business.. and there is Python is the only real player.

Depends which part. You could probably get rid of Python easier than C++. If you're analyzing data, you're probably using Python. Tensorflow, on the other hand, is mostly written in C++.

December 07

On Thursday, 7 December 2023 at 20:21:30 UTC, bachmeier wrote:

>

On Thursday, 7 December 2023 at 18:41:04 UTC, Sergey wrote:

>

Because Carmack moved into AI research business.. and there is Python is the only real player.

Depends which part. You could probably get rid of Python easier than C++. If you're analyzing data, you're probably using Python. Tensorflow, on the other hand, is mostly written in C++.

"If you're analyzing data, you're probably using Python." - which in turn is probably calling some C/Fortran code.

December 07

On Thursday, 7 December 2023 at 19:21:10 UTC, Paulo Pinto wrote:

>

On Thursday, 7 December 2023 at 14:32:26 UTC, ryuukk_ wrote:

>

On Thursday, 7 December 2023 at 14:21:51 UTC, Paulo Pinto wrote:

>

[...]

That's exactly why Unity went to shit and he left as a result, they picked the wrong language, so they wasted many years working on working around the language

That's what happen when you work with GC/OOP people, nothing good comes out of it, you get replaced by what ever is new and trendy

And then the people will exclude the people who care (Mike Acton) to empower the developprs who need assistance (GC/OOP) because these people can promote idiocracy, as opposed to meritocracy backed by tangible resulsts (how fast code run, and how efficient it is)

Unreal is also full of OOP, and Unreal C++ alongside Blueprints uses a GC.

Their business is doing quite well.

Not if you want to write fast and efficient code

Look at what studios are doing with these engines, they all work around these mistakes

In fact, Unreal is internally planning a ECS/data-driven stack, Unreal isn't a new project, it's multiple decades old, with that comes tech debt and poor design that are hard to correct

https://www.youtube.com/watch?v=f9q8A-9DvPo

The value of Unreal isn't OOP, it's its graphics stack, editor and platforms it can reach

December 07

On Thursday, 7 December 2023 at 20:21:30 UTC, bachmeier wrote:

>

On Thursday, 7 December 2023 at 18:41:04 UTC, Sergey wrote:

>

Because Carmack moved into AI research business.. and there is Python is the only real player.

Depends which part. You could probably get rid of Python easier than C++. If you're analyzing data, you're probably using Python. Tensorflow, on the other hand, is mostly written in C++.

Mojo seems to be another potential competitor to D that will get a head-start by (aiming at) being a superset of Python with systems programming features.

"Our overall mission is to unify AI software and we can’t do that without a unified language that can scale across the AI infrastructure stack. That said, we don’t plan to stop at AI—the north star is for Mojo to support the whole gamut of general-purpose programming over time."

December 07

On Thursday, 7 December 2023 at 19:01:26 UTC, GrimMaple wrote:

>

Delegates is just one of the things where @nogc issues are apparent. If you want to have a @nogc control in a UI framework and have callbacks/events in it, you are going to force the user of that control to use @nogc code.

I write code without GC and don't annotate anything with @nogc and don't use betterC, things work better that way.

December 07

Wait, this means D is great by default. The more you overengineer the worse you make it.