Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Open Source Programming Apple

Reactions To Apple's Plans To Open Source Swift 246

itwbennett writes: At Apple's WWDC 2015 event yesterday, Craig Federighi, Apple's senior vice president of software engineering, announced that the company planned to open source the Swift language. Reaction to this announcement so far has sounded more or less like this: Deafening applause with undertones of "we'll see." As a commenter on this Ars Technica story points out, "Their [Apple's] previous open-source efforts (Darwin, WebKit, etc) have generally tended to be far more towards the Google style of closed development followed by a public source dump." Simon Phipps, the former director of OSI, also expressed some reservations, saying, "While every additional piece of open source software extends the opportunities for software freedom, the critical question for a programming language is less whether it is itself open source and more whether it's feasible to make open source software with it. Programming languages are glue for SDKs, APIs and libraries. The real value of Swift will be whether it can realistically be used anywhere but Apple's walled garden."
This discussion has been archived. No new comments can be posted.

Reactions To Apple's Plans To Open Source Swift

Comments Filter:
  • It's good (Score:5, Insightful)

    by phantomfive ( 622387 ) on Wednesday June 10, 2015 @02:30AM (#49881187) Journal
    Whenever a company open sources its code, it's a good thing. Even if no one wants to use it, it still sets a precedent. It wasn't long ago, no one was open-sourcing their code. Now, even Microsoft does some of it.
    This strengthens that trend.
  • Linux Support (Score:4, Informative)

    by nateman1352 ( 971364 ) on Wednesday June 10, 2015 @03:11AM (#49881251)

    I seem to remember that during the presentation they explicitly stated that would be releasing a Linux version of the runtime libraries for Swift. At least that should give you the basics for a console/text user interface.

    I doubt Apple is going to be making any GUI binding other than for Cocoa. I also doubt that the bindings for Cocoa will be included in the open source packages. It will be interesting to see how accepting they will be of community contributions.

    • by DMJC ( 682799 )
      It's basically meaningless without GNUstep support. Frankly I'd rather see GNUstep get a webkit implementation finished before they start trying to pack in Swift support.
      • Re: (Score:2, Insightful)

        by mveloso ( 325617 )

        Gnustep? It's 2015, not 1993. If you want gnustep support write it yourself.

      • GNUStep is one path. It'd potentially be useful for porting apps from OSX to Linux.

        Another is to create wrappers around another UI toolkit such as Qt, and create apps with that. That's for people that just want to use Swift for it's features, rather than because they want to port stuff.

    • That's a good point....lack of libraries are one of the major things that stopped objective-C adoption as well.
    • Re:Linux Support (Score:5, Interesting)

      by Feral Nerd ( 3929873 ) on Wednesday June 10, 2015 @08:57AM (#49882249)

      I seem to remember that during the presentation they explicitly stated that would be releasing a Linux version of the runtime libraries for Swift. At least that should give you the basics for a console/text user interface.

      I doubt Apple is going to be making any GUI binding other than for Cocoa. I also doubt that the bindings for Cocoa will be included in the open source packages. It will be interesting to see how accepting they will be of community contributions.

      I'm pretty sure somebody will implement GUI bindings. The ability to port iOS/OS X software to Linux and the ability to port Linux GUI programs to OS X without running an X11 server is far too interesting a capability to pass up. If there were GUI bindings for Linux as well as OS X you could simply recode your old GUI in Swift but leave the business logic in tact. Since Swift can link to C and C++ libraries (C++ with a Obj C wrapper) this should not be a big problem.

      • I'm pretty sure somebody will implement GUI bindings.

        I think it will be pretty straightforward: OpenStep already exists, which is already ObjC and the same model as OSX/iOS, given the same NextStep heritage.

        AFAICT, Swift is essentially the ObjC machine and object model in a sane language, so it ought to plug right into OpenStep.

        • I'm pretty sure somebody will implement GUI bindings.

          I think it will be pretty straightforward: OpenStep already exists, which is already ObjC and the same model as OSX/iOS, given the same NextStep heritage.

          AFAICT, Swift is essentially the ObjC machine and object model in a sane language, so it ought to plug right into OpenStep.

          It's nice if that is true, but experience has taught me to believe that when I see my iOS/OS X program plug straight into OpenStep and compile, ready for deployment on Linux PCs and Mobile devices.

        • AFAICT, Swift is essentially the ObjC machine and object model in a sane language, so it ought to plug right into OpenStep.

          Close. So close.

          LLVM, not ObjC. Swift is basically is an interface to LLVM. Chris Lattner, one of the major people behind LLVM, works at Apple and created Swift.

  • by kyrsjo ( 2420192 ) on Wednesday June 10, 2015 @03:35AM (#49881291)

    > the critical question for a programming language is less whether it is itself open source and more whether it's feasible to make open source software with it.

    I have to disagree - a language which only has one single implementation which is closed source means that the developers using it is locked in and completely at the mercy of the owners of this implementation. Just like with VB6.

    I would never consider a closed language for anything else than small, short-lifetime hacks which I do not intend to maintain.

    • by Capsaicin ( 412918 ) * on Wednesday June 10, 2015 @04:46AM (#49881401)

      the critical question for a programming language is less whether it is itself open source and more whether it's feasible to make open source software with it.

      I have to disagree - a language which only has one single implementation which is closed source means that the developers using it is locked in and completely at the mercy of the owners of this implementation. Just like with VB6.

      The point that was being made was simply to raise the question: Will an open-sourced Swift have any realistic application other than writing software exclusively for iOS and OSX. If it can't, you should find yourself every bit as locked in and at the mercy of the owners of the ecosystem, as if you were locked in by the owners of a proprietary language.

      • Just because a language is open source doesn't mean it's not still controlled by a single entity. Nowdays, a language needs a good framework to go along with it, and as we're seeing with Oracle v Google, just because something is open source doesn't mean anyone can just pick it up and run with it. And even if they could, there's no guarentee that someone would pick up your favorite language/framework and continue to support it.

    • by Dog-Cow ( 21281 )

      You aren't a professional developer then, making your opinion on this topic less than useless.

      • by kyrsjo ( 2420192 )

        Well, a large part of my job is to develop software (although usually not the pointy-clicky/touchy if-this-then-that type), so your comment is both wrong and very useless.

  • by Anonymous Coward on Wednesday June 10, 2015 @04:08AM (#49881339)

    Funny, I was just the other day thinking, "what the world really needs right now, is another programming language".

    The tiny number of choices in programming languages is the main thing holding back the industry, so it is great to finally see a new one. It's far too common that I think, "I've got this great idea for a new program... if only I had a viable language to program it in".

    • For any readers not in the programming community, he is of course kidding: there are dozens of programming languages in active use, far too many. The problem is that there is no one modern programming language that has gotten wide adoption. Swift is taking over Apple's rapidly growing software ecosystem, giving Swift momentum. Open sourcing is a good first step toward making Swift a candidate for replacing C++ and Java, but they will need to do more. I'd like to see a Swift development environment for smal
      • by Jack9 ( 11421 )

        > Open sourcing is a good first step toward making Swift a candidate for replacing C++ and Java,

        It helps Swift replace Objective-C. Why would you think Swift is appropriate to "replace" C++ or Java?

    • Comment removed based on user account deletion
      • Yes a programming language specifically designed like a walled garden or more like a labor camp.

        Only an insensitive dickhead like you, with no idea of what a real "labor camp" is would make such a ridiculous analogy.

        Go read some history before you throw around the term "labor camp". It is deeply insulting to those who had family members who actually lived (and usually died) in labor camps.

    • by nine-times ( 778537 ) <nine.times@gmail.com> on Wednesday June 10, 2015 @08:37AM (#49882113) Homepage

      Funny, because I was just thinking, what the computing industry really needs is stagnation. I'm tired of all this innovation and people trying to create new things. It would be so nice if we'd just stuck with the technologies that we had in the 70s, but no, people had to ruin it by coming up with new things. We should know by now that no one can improve on the wonderful language that is Javascript.

      • Anything is better than JavaScript. The world would be a much better place with something like TypeScript but children don't want to play in the same sandbox together so we're stuck with this until Microsoft, Google, Apple and Mozilla grow up and start working together.

      • If you enjoy 1970's technology, try translating BASIC games [atariarchives.org] into Python. That's an exercise in unraveling spaghetti code, chasing GOTO statements, and figuring out what parts of the code was to get around hardware limitations.
        • You do know I was joking, right?
        • If you enjoy 1970's technology, try translating BASIC games [atariarchives.org] into Python. That's an exercise in unraveling spaghetti code, chasing GOTO statements, and figuring out what parts of the code was to get around hardware limitations.

          You CAN write nicely structure, well-documented code in almost any language, including BASIC and Assembly. I know, I've done it many, many times. It is simply that some languages ALLOW sloppy programming techniques, and that some developers write sloppy, undocumented code.

          Don't blame the language; blame the developer.

          • I wasn't assigning blame to either the language or the developer. What I'm doing to learn Python better is revisiting the BASIC games of my misbegotten youth from 30 years ago. Some of these programs were submitted by readers of Creative Computing magazine, written for the DEC PDP minicomputers, or floating around the university computer labs at Dartmouth, Berkeley or Stanford. Translating the classics into a modern language is a bit of challenge.

            The Dice [atariarchives.org] program warns that rolling the dice 5,000+ times wil

      • Funny, because I was just thinking, what the computing industry really needs is stagnation.

        All joking apart, I think it could do with a slow down. We've already got a growing gulf between the bleeding edge and the mission-critical users who need a year or two just to test and plan migration to a new OS. Start a 2-year project on a new development platform and you're two major, often incompatible, releases behind by the end of the project. You end up with a workforce bifurcated between the old legacy project people with wisdom and experience but out-of-date technical knowledge, and the bright, yo

        • That's how things like NoSQL, significant whitespace, binary log files and flat mystery-meat UIs happen.

          Regarding your examples: Is NoSQL bad? I've never dealt with it, but was under the impression that it was pretty good for particular things, but perhaps being implemented too widely by people who are overenthusiastic. Significant whitespace is just dumb. The concept of binary log files don't necessarily seem bad to me, if we have a universal format with high-quality tools to access them.

          And I actually tend to favor the "flat mystery-meat UIs" when executed well rather than trying to make everything look

        • The last time I updated the CPU/memory/motherboard on my gaming rig was in 2007, switching from Windows XP to Windows Vista. Since then I switched out the dual-core processor for a quad-core processor, replaced the PSU and video card, and went from Windows Vista to 7 to 8 to 8.1. After eight years, it might be time to replace the underlying hardware for Windows 10. I can only deal with so much stagnation between major hardware upgrades.
        • 5-10 years of stagnation. Hurrah! Time to refine designs, sort out that crufty code you've been meaning to fix for 10 years, deal with 10-year-old feature requests and sort out interoperability, [...]

          Not to change the subject; but that's EXACTLY why I was so happy to NOT see an endless parade of "new technologies" and "4,000 new APIs" in yesterday's OS X and iOS Keynote presentations. Ya gotta show off something new; but I think that Apple has "gotten" the idea, at least internally, that they can/should take a pause and firm-up what is there, before starting any new paradigm-changing/life-changing feature-sets. That is why, IMHO, you see them talking about better performance, overall. They are internall

  • Wrong comparision (Score:5, Informative)

    by igomaniac ( 409731 ) on Wednesday June 10, 2015 @04:21AM (#49881355)

    ... It's a lot more appropriate to compare the open sourcing of Swift to the LLVM/Clang projects than to Darwin. LLVM is by any measure a thriving open source project with lots of contributers, both individuals and from many large organisations (Intel/AMD/ARM/Google/Microsoft, etc. etc.). I also follow Webkit development to some degree and it's far from "the Google style of closed development followed by a public source dump", a fact that should be clear to anyone who takes a minute to look at the webkit-dev mailing list.

  • by DrXym ( 126579 ) on Wednesday June 10, 2015 @06:07AM (#49881581)
    A large part of a language's value is the API and framework it works against. It's no good just throwing out a compiler and a barebones set of APIs and thinking it's going to catch on. Unless Swift comes with a set of high level APIs that allow people to build applications / apps on non-Apple platforms then I don't see what the attraction to it will be.
    • by StonyUK ( 173886 )

      I completely agree. Apple have said they will release the standard library, which is tiny and apparently doesn't even have file or socket I/O.

      • So you're whining now that the cake you're given for free hasn't got cream on top. Remember, the open source idea isn's supposed to be about just taking. If you want more libraries, make them.

    • by LWATCDR ( 28044 )

      Correct. Frankly that is what killed Objective C. Languages really stopped mattering about 20 years ago. It is all about the libraries.

    • by descubes ( 35093 )

      The language alone is not good enough, but it is simple to share. By contrast, building a complete web browser today is a bit difficult [slashdot.org], and even a smaller "graphic" language like Tao3D [sf.net] is not that easy to build, in particular if you include all the dependencies. For Tao3D, you need Qt with WebKit, OpenGL, VLC, XLR, LLVM and I forget half a dozen. So I think that exposing the language-only part is interesting. For a while, Tao3D was the same project as XLR, but we decided to split early on. We wanted XLR to

  • by Ronin Developer ( 67677 ) on Wednesday June 10, 2015 @07:36AM (#49881819)

    http://elementscompiler.com/el... [elementscompiler.com]

    RemObjects has developed an implementation of Swift in a product called "Silver" that, per their website, claims:

    "With Silver, you can use Swift to write code directly against the .NET, Java, Android and Cocoa APIs. And you can also share a lot of non-UI code between platforms."

    Their implementation isn't open source...but, the tool and their implementation are free.

    • There's already Microsoft SilverLight, so why the hell did RemObjects pick "Silver" for the name of their product?

    • http://elementscompiler.com/el... [elementscompiler.com]

      RemObjects has developed an implementation of Swift in a product called "Silver" that, per their website, claims:

      "With Silver, you can use Swift to write code directly against the .NET, Java, Android and Cocoa APIs. And you can also share a lot of non-UI code between platforms."

      Their implementation isn't open source...but, the tool and their implementation are free.

      Well, there's your proof that Apple doesn't intend to prosecute anyone regarding Swift.

      If Apple isn't going to prosecute someone who reverse-engineered Swift BEFORE it was Open-Sourced, then they sure as HELL aren't going to go after anyone AFTER they release it as Open Source.

      Amirite?

  • iOS Dev on Windows (Score:4, Interesting)

    by gnupun ( 752725 ) on Wednesday June 10, 2015 @07:54AM (#49881907)

    Does open source Swift mean we finally don't have to buy a mac machine just to run XCode to develop iOS apps? Does Apple have plans to release an open source iOS simulator, so we can simulate iOS apps on Windows/Linux etc?

  • Not an Apple first (Score:5, Insightful)

    by HnT ( 306652 ) on Wednesday June 10, 2015 @08:10AM (#49881957)

    Apple has a much longer history of releasing open source or opening standards than most people like to give them credit for.

    • "We're going to the standards bodies, starting tomorrow, and we're going to make FaceTime an open industry standard." - Steve Jobs, WWDC 2010

      But it never happened.

      • So that's your one example of one that didn't pan out. Does that somehow cancel out the many open source projects that Apple has released?

      • Re: (Score:2, Insightful)

        by Anonymous Coward

        You have patent trolls to thank for that. Facetime was largely peer to peer in the original implementation, so operating costs were low. Apple was forced to change that after the VirtnetX lawsuit and as of August 2013 was being forced to spend $2.4 million per month in costs for relay servers to work around their patent. Obviously Apple isn't going to expend that kind of money to bring Facetime to competing platforms.

        http://appleinsider.com/articles/13/08/30/apples-facetime-workarounds-for-virnetx-patent

      • by macs4all ( 973270 ) on Wednesday June 10, 2015 @02:58PM (#49885327)

        "We're going to the standards bodies, starting tomorrow, and we're going to make FaceTime an open industry standard." - Steve Jobs, WWDC 2010

        But it never happened.

        And, as has been explained many times in these pages, that was SJ talking out his ass, without clearing it with his legal team. Turns out that Facetime was using some decidedly NON Open Source CODECS (and maybe other stuff), and so there was NO WAY that Apple could "Open" Facetime in any meaningful way.

        In fact, Apple was fined $368 million [imore.com] regarding Facetime, for violating 4 patents by patent troll VirnetX. So, even if Apple had tried to make Facetime an Industry Standard (which I fully believe was SJ's intent), VirnetX would simply have been waiting in the wings to sue anyone who tried to implement said standard.

        I am not apologizing for Apple; them's the facts. So, can we finally stop this meme? Of course not; this is Slashdot, afterall.

  • by nine-times ( 778537 ) <nine.times@gmail.com> on Wednesday June 10, 2015 @08:43AM (#49882149) Homepage

    the critical question for a programming language is... whether it's feasible to make open source software with it

    I don't see any clear reason to think that it wouldn't be feasible to make open source software. They're releasing some kind of development kit for Linux, claiming that the released materials will be open sourced under a permissive license. Now they could by lying, or they might have a crazy idea about what constitutes a "permissive license", but otherwise, how could it not be feasible to make open source software with it? Even if their tools are somehow geared toward developing Mac apps, if they're open sourced, those tools can be rewritten.

    It seems to me that the question that's more critical is, "Will the open source community want to use this language?" I don't know the answer to that.

  • So what.

    People who are heavily invested in Apple and Apple development are going to be ecstatic because they think it will mean a groundswell of openings for Swift.

    I remember the creation of mono and the open sourcing of ,Net which were supposed to do the same for .Net programming. Did that happen? A bit not nowhere near wht they were hoping for.

    In the end Swift will be another niche language, which just a slightly bigger niche.

  • FaceTime (Score:4, Informative)

    by ArcadeMan ( 2766669 ) on Wednesday June 10, 2015 @09:03AM (#49882281)

    "We're going to the standards bodies, starting tomorrow, and we're going to make FaceTime an open industry standard." - Steve Jobs, WWDC 2010

    But Apple never followed-up on that.

For God's sake, stop researching for a while and begin to think!

Working...