(I am making the simplifying assumption that identity is solved by magical hand-waving)
Conversation
Pass-by-value means a different thing than pass-by-ref. It makes a copy each time. Sometimes you want a copy; sometimes you don't.
1
right, but assume the language can assign either semantic to any particular pass.
1
How does the language know which the caller means?
2
it *decides* which the caller means. Like I said, identity is hand-waved away. Aside from that it’s optimization.
1
*squiiiiiiint* I don't see how you can hand wave identity away
1
1
pretend it’s by magic up to and possibly including the elimination of state.
1
(for example, you could limit it to any pure type)
1
Okay, so for any immutable type, yes, this makes sense.
2
Now, let’s define all types as being immutable by default. Like, you have to get out a wrench to make it mutable.
1
Replying to
I get it, but I think we're talking about a very different language now. One of the appeals of Swift is its approachability… :/
Replying to
now let’s talk about a dystopian future where this idealistic approachability has subjugated humankind to the whims of state
2
3
6
1
Replying to
But even without this, I think struct/class & the stack makes Swift *less* approachable, not *more*.
4
3
1
Show replies
Replying to
making people make mutability decision for each identifier burns a lot mental energy. tools should make us stronger




