What future for GDScript with C# support coming?

:information_source: Attention Topic was automatically imported from the old Question2Answer platform.
:bust_in_silhouette: Asked By pzagawa
:warning: Old Version Published before Godot 3 was released.

Hi! I’m bit fan of Godot, and the main reason is (was) for me it’s lack of Microsoft dependencies, because its promoted emerywhere C# Mono and Reactive religions are like cancer for multiplatform programmers.

So, instead working in Unity, I prefer Godot beacuse of its great, fast and native GDScript with no external dependencies.

However I see you are loosing control over Godot for sake of C# support and Microsoft.

Will Godot fate share Unity C# to rule them all? Will be GDScript obsolete in the future? Yes or no?

Juan has said that GDscript will always be the main programming language for Godot. C# has been added so as to open up the engine to more developers.

Ertain | 2017-11-02 19:30

Thanks for such quick response. GDScript is unique, simple, and effective, so its great news, that it will not be abandoned.

pzagawa | 2017-11-02 20:52

:bust_in_silhouette: Reply From: eons

GDScript will be the first class scripting language for a long time, is fast to program and integrated to the engine making it easier to test features and bugs.

Also easier to export to many platforms unlike C# and others.

:bust_in_silhouette: Reply From: xCode Soul

I think, the community of godot will decide…

It’s will depends on how the community will used most c# or gdscript

In my opinion, support multiple scripting languages will affect the community and getting support support from others.

Look at unity , in the past , Boo, JavaScript , C#

But now, only c#, no doubt godot will face same issue

One more thing, I think anyone know gdscript very well , will keep using it

But anyone coming from unity or other game engine

May see c# better, since no need to learn, the basics , dive in docs. , and start coding

For me, I really disagree the multiple scripting language
Because it’s will end with one :slight_smile:

So learn from unity mistakes better

Good luck everybody

-xCode Soul

The irony is, that in the Godot’s manual in the beginning, after „„GDScript? Why your own scripting language? Why not Lua, Javascript, C#, etc.?” part, there is good reasoning why C# and other languages SUCK for this particular engine scripting. However, now it seems that Microsoft blessing is magically making C# usage possible and even brings more benefits. Which is of course lie.

I understand that „pizza’s are not for free”, but I’m afraid that team will be focusing on implementing Cstupid# features and fixes instead of improvements for GDScript. This is how all good ideas and solutions die anyway beacuse of Microsoft evil touch.

pzagawa | 2017-11-03 11:26

I don’t know about Boo but what Unity called “javascript” was as much js as GDScript is Python. It was far from ECMA compliant and it seems it was transpiled into c#.
C# is Unity’s main language and it’s built on top of .NET tech.
Godot has GDScript as it’s main language and it’s tightly integrated with the editor.

Lisandro Lorea | 2017-11-03 15:17

This is my own current understanding: C# as C# script, and as a programming language is friendlier than other reduced versions scripting languages, however it costs a performance from game. But I doubt that coding higher level logic requires too much performance for most of games - in that sense C# as scripting language would be a better choice.

From future perspective however we still have godot engine (c++) + scripting language (GDScript or C#) - that’s two programming languages.

And learning another language or mixing two different ecosystems is not so good anyway. (I know the curse of managed c++)

C++ will raise however - there already exists modules support, and I hope that compilation will be one of the modules, after that we could have C++ core + C++ scripting, and forget about other scripting languages.

tapika | 2017-11-05 21:02

:bust_in_silhouette: Reply From: tapika

This is my own current understanding: C# as C# script, and as a programming language is friendlier than other reduced versions scripting languages, however it costs a performance from game. But I doubt that coding higher level logic requires too much performance for most of games - in that sense C# as scripting language would be a better choice.

From future perspective however we still have godot engine (c++) + scripting language (GDScript or C#) - that’s two programming languages.

And learning another language or mixing two different ecosystems is not so good anyway. (I know the curse of managed c++)

C++ will raise however - there already exists modules support, and I hope that compilation will be one of the modules, after that we could have C++ core + C++ scripting, and forget about other scripting languages.