News for hackers. Stuff that matters.
Re:What's new in Swift 3.1 by chris_7 on Thursday January 26, 2017 @12:56PM (#13493548)
I have always considered this a weird effort. Foundation is not Swifty (delegate protocols with optional methods, etc.). Why do we need a Swift implementation of NSMutableArray or NSNumber? Just use Array or Int/Double!

Of course, a core Swift library for URL handling is important! And on macOS/iOS it can be implemented on top of Foundation. But I don't think that library should come with a bunch of geometry, collections, or number formatting types as well. µframeworks are Swifty. The SPM documentation says something like "in general more modules is better than fewer modules", so it's weird to have a giant framework as an official core library.

Re:What's new in Swift 3.1 by paxcoder on Thursday January 26, 2017 @01:26PM (#13493834)
No networking OR file system access in the free implementation.

You'd be hard pressed to find a Swift project that doesn't depend on Apple's proprietary Foundation because Swift needs it to talk to the world!

I don't understand what IBM is thinking.

Re:What's new in Swift 3.1 by bsaul on Thursday January 26, 2017 @05:25PM (#13495845)
Why are you referring to IBM ?
Re:What's new in Swift 3.1 by adamnemecek on Thursday January 26, 2017 @06:12PM (#13496257)
They are the face of Swift on Linux.
Re:What's new in Swift 3.1 by c0ffe on Thursday January 26, 2017 @06:20PM (#13496322)
What does Kitura use for threading and IO in Linux?

Is there any library for cross platform asynchronus IO?

Re:What's new in Swift 3.1 by paxcoder on Friday January 27, 2017 @02:27PM (#13501931)
Good question.

For networking, Kitura uses Kitura-net, which uses BlueSocket, which in turn uses C library's sockets[1]. On GNU/Linux, this is the GNU C Library, for which a package (Glibc) is provided by the Swift port[2].

For asynchrony they seem to be using libdispatch despite it being "early in the development"[3], but I've also noticed they're wrapping epoll and curl (see 1.B again), so it's hard to gauge the real extent of the hack.

[1]: https://github.com/IBM-Swift/Kitura/blob/master/Package.swif...

https://github.com/IBM-Swift/Kitura-net/blob/master/Package....

https://github.com/IBM-Swift/BlueSocket/blob/master/Sources/...

[2] https://swift.org/blog/swift-linux-port/

[3] https://github.com/apple/swift-corelibs-libdispatch