Miguel de Icaza: Swift Godot: Fixing the Multi-million dollar mistake #GodotCon2023

preview_player
Показать описание


In a previous life, Miguel worked tirelessly to get Unity and other game engines to adopt .NET as a runtime to execute their game code, as it blended beauty and speed. And he dreamed that one day the pauses introduced by the garbage collector could one day be solved, but after decades this dream seems further away with each passing day. Meanwhile, a language of equal beauty and ergonomics emerged without any of these downsides. This talk will discuss both the rationale of the Swift bindings for Godot, as well as a bold proposal to integrate Swift into Godot itself.

Miguel de Icaza

#godotcon2023 #Talks
Рекомендации по теме
Комментарии
Автор

I stumbled across this talk totally not intending to do anything programming related today... and while I haven't written Swift in years, I've always loved it. It's a wonderful language, and an absolute pleasure to use. I stopped because I moved to Linux and get paid to write Elixir, but this talk has me wanting to go write it again just to try SwiftGodot. Really excited from this talk about something I didn't even know existed an hour ago.

servando
Автор

Apple should support this for their VR Platform instead of Unity. I hope they will.

reverse
Автор

Swift will really be ready for games when Embedded Swift is out to reduce or eliminate dependencies (like golang) on a particular Linux distribution, target game consoles, and maybe even cross-compile. The runtime metadata and reflection capabilities can be turned off for light binaries. This has me really excited for Swift outside of the Apple ecosystem. The vision document is on Swift Evolution and implementation is already in progress and running on some microcontrollers.

Apple has been very generous with the open sourcing and community. That includes inviting people on Windows/Android/Linux to core teams. They are quite genuine in their desire to have Swift replace C++ and the only language with full C++ interoperability. No C bindings needed.

EricSummers
Автор

What a great talk! Learned a lot, never ever thought about swift before but he makes me want to try it!

TheFreshMakerHD
Автор

Great talk, got me a little interested in swift

jayrulez
Автор

Very interesting talk. 8:54 is on spot. By the time, you realize, you have a big problem, it is too late.

One question about swift: Does Apple/Swift treat none-apple swift user well? Do I (as a Linux user) get the latest versions in time and is the swift tooling well supported on other platforms than macOS? I don't want to use Swift when I get treated as a second class citizen.

One question about SwiftGodot: Where can I track the progress about the project? What target platforms are supported, what features are on the roadmap and so on?

MogohViol
Автор

I love C# but this talk convinced me to give Swift a go for real-time apps like games. Now we just need the proper integration and tooling support (I'm a windows user..).

Measurity
Автор

I've never tried Swift but it seems like a nice trade-off vs. Rust, so you don't have to deal with the borrow checker all the time, but only in cases where you care.

jRsqILVOY
Автор

Me gustó mucho esta plática ya que de alguna manera Miguel de Icaza condensa y explica muy bien todas las características que se han desarrollado en Swift los últimos 10 años. Como desarrollador iOS se aprecia mucho.

ivandavidalmadaperez
Автор

I hope Swift will eventually become an officially supported language by Godot just like C#. Coding games in Swift would be great!

eiolhaso
Автор

I think DLang gives you good control over the garbage collector.

Kapendev
Автор

Great talk, I am very new to Godot; the opening section with the talk about garbage collection etc. was very interesting.

ManjitBedi
Автор

Never did swift, but if it becomes a first class citizen i would prefer it to GDScript.

sealsharp
Автор

I really like Swift. I use it in by job. This project brings me a hope to use Swift for something that is not iOS/MacOS development.
Though, I think Swift needs a big improvement on the cross-platform support. Yes, it's there but it's bare minimum at the moment imo.
There is simply no IDE other than Xcode now. VSCode can be used for Swift development but its features is not even half of what Xcode can do (And it's quite slow maybe my PC sucks ).

So the day when Swift gets a better cross-platform support, I will be super happy.

bluebossaaa
Автор

I know Swift is fast (ex-iOS dev here), question: how does it compare to gdscript when used in Godot? My _only_ temptation to use C# was for performance, so if Swift has similar benefit then yeah, good riddance to C#. Thank you

nftsasha
Автор

i assumed "the mistake" was GDScript...
but i believe Icaza would be much more useful if he had put this effort into fixing the C# "second-class-citizenship" situation with Godot 4. With him is always the same modus operandi, with gnome, mono, xamarin, always moving to the next shining thing, and leaving the work half-done.

AlexandreOliveira-ussy
Автор

This is very interesting! The tutorial in the repo assumes one is using a Mac PC with XCode, but how would one get started on other platforms?

lorenzoarena
Автор

which tool they used for write the documentation?

fiffy
Автор

Rust (and Zig) get all the attention, but I would argue that Swift is the better long term replacement to languages like C++. I see a lot of people coming to Rust from languages like JavaScript, without some understanding, it is easy to shoot yourself in the foot still with Rust and it is all too easy to write code that is less performant than JavaScript if you don't know what you are doing. Swift is a safer language without sacrificing performance, although you can go lower level to be dangerous.

mistymu
Автор

if i was there, i would’ve asked for his opinion on nim’s orc, basically reference counting with a small gc for cycles. nim doesn’t have stuff to catch null problems, at least not as well as i’d like. i’m considering learning swift and using it for my game if i need something more powerful than gdscript for stuff

morgan