I understand that the evolution of Swift goes both by the highway, and by the byway.
And I feel uneasy about that dual direction, and have difficulty understanding the reasoning that goes with it.
In order to make clear why I have that feeling let me explain.
- The highway is the official Swift documentation « The Swift Programming Language » as one can find and read it in iBooks.
- The byway is the « macro language » growing more with function builders, project wrappers and much much more.
A question was asked some time wether SwiftUI discussions had their place on swift.org was raised some time ago, and a couple of the following messages concluded that no, probably no/yes.
It illustrates how confusing it is.
« I’ll answer the part that is related to Swift syntax, and then a little tangent about SwiftUI. However, it should not be treated as a signal/encouragement to post SwiftUI related question on this forum. Questions purely about SwiftUI should still be in Apple Dev's forum. »
In the same conversation one hears even neater things.
« We encourage questions that are just about using Apple frameworks like SwiftUI to be asked on the Apple developer forums 5. »
So one way to understand this can be : « SwiftUI is NOT part of Swift. »
Another way to understand this could be: « I do not encourage questions about this person, he’s kind of family but we do not like to talk about him.
Additional confusion, for me, comes from proposals and discussions that lead to new features, largely SwiftUI oriented. Even if admittedly others areas of application exist.
And then after building for SwiftUI, trying to relegate the result as a second zone citizen that is an unwanted topic of conversation.
Or as not part of the language.
I would love to hear more generally what the community thinks, especially since I have seen expressed wishes for SwiftUI for Linux and Windows.
So I do no think that it can be resumed as an Apple Framework issue.
To put it differently:
Does the @ in front of a language keyword mean the it marks the beginning of a macro?
Or should it identify a new keyword and is part of the language?
Is the spelling the most important factor?
Or is it the measure of the impact of the possibilities of development the most important factor?