Super excited! I will totally be exploring Swift for quantitative work. Julia has been great so far, but a lack of good IDE tooling is making a large codebase difficult to navigate and keep clean. Python has even less type safety than Julia. Swift has a REPL! Go doesn't, and its lack of generics makes writing most algorithms very limited (there isn't even a matrix 32 library, just 64 bit). Java has horrible native interfacing. C# is pretty anemic on Linux. C++ has too many gotchas, slow compile, to feel productive. Bonus: Swift libs will probably be very easy to deploy on both Android and ios.
It is a huge step for Swift. Finally it is no longer the Apple walled garden and it will become a popular universal platform like Python or JavaScript, for sure. If you want to learn Swift, it is high time. Start with the huge collection of 300+ video tutorials at https://www.youtube.com/user/TheSwiftLanguage
Side note: Julia is great. Very easy to learn, blazing fast, powerful, general-purpose, works everywhere and even integrates well with C/Python/Fortran. As for the IDE, there is Juno based on LightTable, there is Sublime-Julia for Sublime Text, as well as Julia support for Atom.
I definitely need a tooling ecosystem, so I'll be waiting for good integration between IDEs and LLVM for Swift. Maybe Atom or VSCode will get there soon. For libraries, when I really need something, I'll wrap it myself using C FFI. It is very easy to pass C structs by value or reference between Julia and C. Go is not bad either and does a lot of static checking for me. Swift sounds like for value types it should be easy. Java is super painful with the marshalling back and forth.
> C++ has too many gotchas, slow compile, to feel productive.
Which raises the question: Why was the compiler for Swift written in C++? I know writing a compiler in C/C++ is probably an instinctual reaction at this point, but um ... what's the advantage of C++? especially if the language will become self-hosting?
LLVM is written in C++ and I'm assuming that the Swift compiler developers are also very familiar with C++. It's also fairly straight forward to write binding for any language to things written in C/C++. The latter makes it at least theoretically possible to build tools on top of the compiler. C++ is really the obvious and simple choice, that you can get away with without large discussion.
Also if it's actually planned to make Swift self-hosting, the language you write the initial compiler in matters even less. If you're throwing it away anyway at the first opportunity, who cares about a few imperfections?
No, I haven't looked into it much. I've been hesitant to commit too much to the CLR family, but maybe with MS's new stance on open source, I'll give it a second look. I'm also more interested now in languages that can deploy on mobile, so as alternatives to Julia, I'm actively looking into Swift, Go, or just plain C++. Xamarin is pretty compelling but I'm considering options before being locked into a fairly expensive vendor.