Live data from Hacker News

Swift Distributed Actors

swift.org

131–135 of 135 posts

Re: Swift Distributed Actors

#131

Earlier quoted context omitted.

My understanding (and I invite correction if I'm mistaken) is that the Swift Foundation was created to address the principal concerns you've articulated. But ports have been slow: Linux works but with the previously mentioned lack of libraries, and there is a threadbare port to Windows which barely runs. The app I was working on was CLI-based that generated a log; and even for that non-UI use case, basic libraries we…

It's made quite clear every summer that Apple has a stranglehold on the language steering committee. When a new language feature that just so happen to enable a closed-source Apple framework drops out of the blue and then goes through a retroactive pseudo-open review. Frankly, this distributed actors thing is more of the same -- it's something that someone at Apple thinks is important, so, despite it being just a lib…

Distributed actors don’t actually have compiler support. They use a standalone code generator much like GRPC. The plan is to call the generator automatically during a build process using upcoming SPM plugin support.

EDIT: It looks like there is a plan to remove the SPM plugin and make it a first class feature. This work just started and is going through a normal evolution process.

Re: Swift Distributed Actors

#132
post #34

Earlier quoted context omitted.

> I hope Swift can eventually become more of a general purpose language, as its actually pretty nice and they're introducing features like this that clearly targets server-side programming. I hope for this too. I did a personal project in Swift on Linux and found that I loved the language. However, I was greatly frustrated by the lack of libraries. For Swift to reach the mainstream, IMHO, the Swift Foundation needs t…

I hope not, at least until they solve it being Apple-only. Of course, there's some support for other platforms but it's pretty bad. At this point it's better to invest time and money to the Rust ecosystem.

I think the language and runtime are evolving too fast for good support of other platforms outside of NIO based apps running in a Docker container. This should change once Swift has all the features originally planned for it. They are getting close, but there are several areas that need work. The biggest is an ownership system. But there is also variadic generics, extensions to the pattern matching system, c++ bridging, completing some missing concurrency features, SPM features, and lots of optimizations. Cross platform support is mostly for early community building right now. Much of it funded by Apple directly. Maybe around Swift 7 or 8 it will be better suited for other platforms.

Re: Swift Distributed Actors

#134
post #19

After using a data structure first framework like Dask I can’t imagine ever going back to an actor oriented approach.

You still have value semantics to lean on. They integrate really well with Swift’s actor implementation.

Re: Swift Distributed Actors

#135
post #131

Earlier quoted context omitted.

It's made quite clear every summer that Apple has a stranglehold on the language steering committee. When a new language feature that just so happen to enable a closed-source Apple framework drops out of the blue and then goes through a retroactive pseudo-open review. Frankly, this distributed actors thing is more of the same -- it's something that someone at Apple thinks is important, so, despite it being just a lib…

Distributed actors don’t actually have compiler support. They use a standalone code generator much like GRPC. The plan is to call the generator automatically during a build process using upcoming SPM plugin support. EDIT: It looks like there is a plan to remove the SPM plugin and make it a first class feature. This work just started and is going through a normal evolution process.

> Distributed actors don’t actually have compiler support.

I said from the compiler and OS teams -- there are at least two compiler engineers listed on the proposal.

But this is insupportable nonsense anyways: `distributed` is a brand new keyword, there are new rules about how inits work, magic property behavior... I haven't followed the proposal carefully, but there are also new toolchains being generated to enable the feature.

Post reply on HN