I don’t have a lot of experience with Swift, so I can’t really comment on it. Rust works very well with web assembly (some assembly required, heh). One of the reasons I picked up Rust was that it made it easy to write tutorials and include a web-runnable version (my Roguelike Tutorial series has each example as a playable web game - e.g. https://bfnightly.bracketproductions.com/rustbook/wasm/chapter-74-darkcity/ ).
There are downsides. If you link with C libraries, chances are you have to come up with some shims to handle the bits of the C library that don’t exist in WASM-land. Also WebGL is almost but not quite compatible with regular GL - so for graphics you’ll have to tweak things a bit.
Thanks Herbert, that’s very helpful (the link to your tutorial goes to a blank page for me tho?)
Would you say Rust is difficult to learn? I’ve heard people say Rust can be quite difficult to pick up (most recently in the article posted here) and I think that is one of my biggest concerns about learning it.
Rust is a systems language, so its harder than Python and other very high-level languages. It tries really hard to not surprise you, and once you have the basics down it’s a relatively smooth learning curve. Some things - like threads - are much easier than other languages. Other things like the borrow checker will cause a bit of head-scratching at first.
I pick up this post out of the grave but I was wondering the same last year.
I really like Swift, despite some weird syntax stuff, like keypath (can’t wrap my head around).
Nevertheless, it lacks promotion for something else other than nOS dev.
IBM was developing Kitura and just leaved the project, now it’s community driven which is great, but there’s no huge site that leverages Swift as a backend language.
Apple has promoted Swift for server-side only this year at the WWDC here.
Vapor is great, I really like how it works, the community, the versatility of the framework, etc.
But it really lacks promotion, there’s few books, quite expensive, some of them outdated due to breaking changes.
Compared to all the books written about Rust, it’s heartbreaking for Swift.
So obviously I’d go for Rust because of Yew, because of Actix or Axum etc.