Apple surprised the audience at its Worldwide Developers Conference in San Francisco on Monday with a tool that few attendees expected: a new programming language for iOS and OS X development called Swift (https://developer.apple.com/swift/). There already is a programming language called Swift (http://swift-lang.org/main/) that was developed by the National Science Foundation, some other government agencies, and the University of Chicago for use in parallel computing applications. This isn't that. What it is, is an entirely new syntax that -- in the words of Apple senior VP Craig Federighi, who unveiled it during the Monday morning WWDC keynote -- aims to be "Objective-C without the baggage of C."
Some of that "baggage" will already be familiar to developers who cut their teeth on C but later moved on to scripting languages such as Python (and Federighi compared Swift to Python several times during his presentation). Like scripting languages but unlike C, Swift lets you get straight to the point. The single line println("Hello, world") is a complete program in Swift. Note, also, that you don't even have to end the statement with a semicolon, as you do in C. Those are optional, unless you're combining multiple statements on a single line; i.e. a semi-colon is a statement separator rather than a statement terminator.
In addition to its online documentation, Apple has released an e-book, The Swift Programming Language, that's a free download (https://itunes.apple.com/us/book/the-swift-programming-language/id881256329) from the iBooks Store. To start working with the language itself, you'll need to download the beta release of XCode 6 (https://developer.apple.com/xcode/downloads/), which includes tutorials to get you going.
(Score: 2) by BasilBrush on Tuesday June 03 2014, @08:39PM
Losing an unnecessary punctuation character makes for cleaner code.
If you like them, you are in luck because there's nothing stopping you from using them. They are still there, they are just optional unless you want multiple statements per line.
Hurrah! Quoting works now!
(Score: 0) by Anonymous Coward on Tuesday June 03 2014, @09:14PM
Then practice what you preach and stop using periods in your prose After all, as long as there is a capital letter at the beginning of the sentence or a newline, then the end of the sentence is obvious Of course there is still some ambiguity with acronyms and the like, so continue using periods there Of course there is the slight possibility that less punctuation can in some cases make things harder to read but I suppose that's the price of progress
(Score: 2, Insightful) by Tramii on Tuesday June 03 2014, @10:18PM
Cute, but wrong
If you wanted your example post to be completely accurate, you would have written your post with hard returns at the end of every sentence
If you don't add the hard returns, it would still require that you add periods in between sentences
Frankly, I think would be weird to leave off the semicolons, but I don't foresee any issues with the way Swift implemented it
(Score: 0) by Anonymous Coward on Tuesday June 03 2014, @11:03PM
I see :)
I would note though that GP claimed 'losing an unnecessary punctuation character' made code cleaner; I was trying to argue by example by demonstrating that unnecessary punctuation, like periods, can make prose more readable.
(Score: 2, Interesting) by zsau on Wednesday June 04 2014, @11:45PM
seeing as there is no convention of interpreting a capital letter as a separator (but there is a convention of interpreting a new line as a separator)
and seeing as it's increasingly common to see newlines added in english prose even where paragraph boundaries had not been common
(i've even seen it used in the middle of sentences, e.g. in a transcript of a British minister in a speech about Scottish independence)
then really, if you're going to say "let's get rid of unnecessary english punctuation", it's capital letters and fullstops you'd be killing, replacing them with newlines boundaries
both of which are not uncommon anyway: one day, all english prose might look like this
(Score: 2) by BasilBrush on Tuesday June 03 2014, @10:19PM
Nice try. But you didn't use new lines to separate either, so by analogy with swift you'd need periods in the paragraph you wrote.
When using English in a form where a newline is a separator, such as a bullet pointed list, or title and subtitle, it is indeed common to not terminate each item with a period.
Hurrah! Quoting works now!
(Score: 0) by Anonymous Coward on Tuesday June 03 2014, @10:59PM
FWIW I use punctuation in lists, eg
1) Thing a;
2) Thing b; and,
3) Thing c.
(Score: 2) by BasilBrush on Wednesday June 04 2014, @03:25PM
You're doing it wrong.
But hey, just like English, Swift allows you to put those statement terminators in there if you really want.
Hurrah! Quoting works now!
(Score: 2) by tibman on Tuesday June 03 2014, @10:26PM
Would mod you funny if able : )
SN won't survive on lurkers alone. Write comments.
(Score: 3, Interesting) by forsythe on Tuesday June 03 2014, @10:12PM
I'm not really so interested in what I can do with formatting, or how pretty my code looks (within reason). I'll adapt. I'm interested in the wonderful, subtle bugs that other programmers can create, then leave for me to encounter. If optional semicolons leads to rules that require people to write blog posts like this [benalman.com] to illustrate them, that's rather counterproductive to the notion of `cleaner code'.
Of course, if they're done well, and no unintuitive behavior of any sort arises, then good for Apple. But somehow I doubt that.
(Score: 3, Informative) by BasilBrush on Tuesday June 03 2014, @10:28PM
I'm not a Javascript user, so I can't comment on semi-colon use there. However I do recall reading that Javascript was originally hacked together in about 4 days by one person. So maybe that explains the lack of rationality there.
Swift on the other hand has been in development at Apple for 4 years, before any public release, including major use by their developer tools team. If there were ambiguities introduced by optional semicolons I would expect they'd have spotted them by now, and made semicolons mandatory again.
There's been plenty of other languages that didn't need semi-colon terminators. It's hardly an impossible task.
Hurrah! Quoting works now!