Any ideas on using golang for part of the development?

The efficiency and performance of golang should be the current golden ratio

According to the anti features wiki there are currently no plans for supporting additional languages.

Discord were using Go for their backend stuff. Then they did some performance testing, and discovered that Rust was a whole lot faster. So they have been switching to that.

1 Like

The execution performance of golang should not be inferior to java, right? And comes with high concurrency characteristics, I do not know the views of other regions, in our area is known as the wbe era of c++

To be fair, “not being inferior to Java” is a pretty low bar …

2 Likes

Go’s syntax comes with built-in concurrency, while Rust does not, just to make up for python’s weak multi-core performance, Rust is equivalent to c++ #2, with c++ as the main force less need for Rust

As @LazyDodo said, we won’t be changing languages, so arguing here about the merits of Go versus Rust is like arguing that a Goblin can beat up an Elf.

7 Likes

Blender needs high performance in its renderer and other core parts. You’ll notice that the API mostly allows Python to stay out of those parts.

The blender dev team will switch to rust at some point, but they are not yet ready. [/semi-troll]

1 Like

The real question is not whether re-writing your entire code base is the Worst Thing You Can Do, but how much it would take to bribe LazyDodo into re-doing the whole build system.

2 Likes

Allowing LazyDodo to move away from cmake would be a nice nudge towards future health.

There’s no plans to change either, discussing what language or build-system would be “better” would indeed as @Harleya points out like arguing that a Goblin can beat up an Elf.

2 Likes

CMake is quite a versatile build system. Why do people want to move away from it? Is it more than just changing fashions?

Though there are some aspects of the Blender build system that could be improved, but which the developers seem reluctant to do. A bit of fear of CMake, by any chance?

Heh didn’t know about that one, I’m pretty close to landing a similar change and have some further cmake modernization in the pipeline.

1 Like

No, they explained themselves quite well and clearly in that post. But how does any of this have anything to do with the OP’s ideas on using Go? Not only is this off topic but this entire thread is just an exercise in omphaloscopy.

For my addon, I tried to use a daemon in Go, but parallelism was locked in the limitations of Python itself. If you just call the program from outside and make a connection via a socket, then there is no difference in what language this will be done …

1 Like

Any ideas on using goblin army for part of the development?

3 Likes

go’s code number is slightly more than python, performance is closer to c++, python far away from a lot of distance, multi-core concurrency is also python can not help, I think most of the work of python, I think go become the preferred high-level language c++ and python divide the scales slightly tilted to high-level language some are no problem at all.