3 ms·
I like Actors. I have played with them in both Pony and Elixir. They were always an obvious next step from Smalltalk style everything-is-a-fricking-message orie
by travisgriggs 6y ago
I like Actors. I have played with them in both Pony and Elixir. They were always an obvious next step from Smalltalk style everything-is-a-fricking-message oriented programming/thinking.
Is it just me, or is Swift getting really complex? As I read through Lattners evaluation, I found myself wondering "hadn't heard of that @Thing yet. I wonder how many there are that I don't know about."
Wile I was impressed about some of the nuance that goes into the combinatorial complexity of the many design patterns Swift wants to capture under its broad umbrella to make it a language for everyone, I kind of have to accept that I will probably never have the bandwidth to acquire the High Priest level of knowledge to really get the thing. Which means the odds of ending up with unexpected and surprising behavior actually rise. I feel more and more this way about Kotlin, Rust, and even Python these days.
Reading/writing code in these increasingly multi-paradigm ecosystems is starting to feel like reading epic poetry (e.g. Dante or Beowulf), but where different sections are written in different languages, with different prose and rhyming styles, some pieces a mix of two left for the reader to figure out.
I used to stress about getting these systems enough to code idiomatically in them, to use them "right." But more and more, I'm finding myself developing personal dietary menus in each, where I pick a nutritious subset that I can wrangle into some sort of expressive consistency, and just write code in that subset, idiomatic-fling-of-the-season be damned.
- dwaite 6y ago> Is it just me, or is Swift getting really complex? As I read through Lattners evaluation, I found myself wondering "hadn't heard of that @Thing yet. I wonder how many there are that I don't know about." Probably a fair few, although I wouldn't blame you for not knowing about something like @Sendable - since that is closely associated with the actor proposal.
- skohan 6y agoMy experience with Swift was that there was a section of the language API that I used heavily, then I had features I would use every now and then, and others I would use almost never (like keypaths). I think one of the advantages of a multi-paradigm language is that you have the freedom to carve out a sub-language which is appropriate for a given problem or for your personal taste. That said, I think Swift does sometimes feel like it's missing a metaprogramming system. Like property wrappers and function builders could probably be generated by a sufficiently powerful macro system, but instead they exist as one-off features with significant complexity.