Hacker News new | ask | show | jobs
by jamil7 2074 days ago
> I’ve got a feeling that swift is becoming a very polluted mashup of features that come from parties with conflicting interests.

There some truth to that I guess, but I'd also add that a lot of these modern multiparadigm languages feel like they're converging feature-wise (with a few outliers). I feel like Swift still has a unique enough feel to it and I enjoy working with it a lot. I think Chris Lattner has also expressed some concern about the focus on features over everything else.

1 comments

Yeah also having worked more with Rust, it seems that a lot of the features added to Swift recently could be covered by decent meta-programming support.

That said, automatic differentiation could be a game-changer and should absolutely be included in the core language.

AD in the core language? Why? Automatic differentiation would be prime candidate to be implemented as a metaprogramming library.
The choice may have been made because Swift doesn’t support meta programming well enough to do it well purely in a library. The plan they have/had (https://github.com/apple/swift/blob/main/docs/Differentiable...) claims “First-class language support for differentiation will enable convenient, extensible, and performant differentiable programming in Swift - more so than library-based approaches”.
I think OP is claiming that if Swift had better meta programming abilities that GP have suggested, differentiable programming would have been a prime example for a good use of the capability.
If the language defines a way for you to ask the program for the computation graph in order to differentiate -- couldn't you add meta programming functions on top of that computation graph?

Seems to me like there's at least an argument that it should be possible grow diff programming into a general purpose meta programming system rather than use general purpose meta programming as implementation mechanism for differentiable programming ...