The design is still horrendous. I was hoping for a total do over.
The design is still horrendous. I was hoping for a total do over.
To be fair, there’s huge demand for a Swift-like language in the space Go operates, since nobody will ever adopt Swift outside of Apple use cases. Rust is excellent, but garbage collection is not awful at all for most Go use cases. I think Go designers made a mistake by not introducing sum types sooner since there are many ergonomic issues that could be solved with them.
This may lead people to argue for JVM-based languages, but Go seems like a leaner and nicer package overall and compiling to static binaries so simply is still a major winning feature. That and I think Go still has performance advantages over JVM and C#.
In many ways I think Swift is better than Go as a language, but we effectively will never have that as an option people freely choose to use so it would be nice for Go to close some ground where it can and where it makes sense to do so. Go is what people already want to use as a starting point, so it makes sense for it to try and modernize a tad.
I have to warn that is is going to be harsh. Relay was my favorite app and I used it everyday for years. DBrady has sold out here in my mind by sucking up to Reddit - The authors of the other apps deliberately chose not to charge users a subscription and it has put us on a better path long term by taking influence away from Reddit and centralized social media. If Relay won’t flip to Lemmy or decentralized alternatives then I hope it fails.
The truth is that JS is currently “good enough” and all the best (adopted) web frameworks are either server or JS based.
I believe the chunking of script files is currently a bit more natural as well.
WebAssembly is the best choice for certain kinds of apps but most web apps are good enough with JS. If communities pour a lot of polish into WASM frameworks you may start to see wider adoption. Diversity is good, but it does need to be asked why WASM + DOM is objectively better than JS + DOM. It complicates the ecosystem a bit because you might fracture it for no good reason. Should there be Rust, Python, and JS DOM rendering frameworks? Is there a benefit?
If you have a more traditionally native app you want to port, that’s different. That’s a great fit for WASM. Personally I see it becoming more popular when it’s a good replacement for desktop technology and the DOM isn’t used at all (go straight to GPU). I’m a huge fan of WASM, but I also write a lot of web apps and don’t see a super convincing reason to adopt WASM to effectively make the exact same thing. As-is, it’s great for augmenting an app though.
Wait for garbage collection and sockets and you might see the paradigm start to shift.
I don’t think they did?