Slashdot Mirror


Why Apple and Google Made Their Own Programming Languages

Gamoid writes: This Business Insider article looks into the state of Google Go and Apple Swift, highlighting what the two languages have in common — and why tech companies would bother involving themselves in the programming language holy wars. From the article: "One fringe benefit for Google and Apple is that making your own programming language makes recruitment easier — for instance, since it builds a lot of its own server applications in Go, Google is more likely to hire a developer who's already proficient in the language since she would need less training."

4 of 260 comments (clear)

  1. Re:BI == Business Idiots by TheRaven64 · · Score: 5, Interesting

    Right. Apple created Swift because Objective-C was a nice language for the requirements of '90s computing, but is starting to be limited by its C heritage. They needed a more modern language that interoperates very well with Objective-C (because they have a lot of legacy Objective-C code that isn't going away any time soon) and this required making a new language because there weren't any good contenders available. MacRuby is the closest, but falls short in a number of areas.

    Google didn't create Go as the result of some corporate masterplan, a small team at Google created it and managed to get buy-in from some other groups at Google. It's still far from the most widely used language for new projects inside Google, but it does have some advantages (though is slightly let down by Rob Pike's refusal to accept that some people who are not Rob Pike have had good ideas in the last 30 years).

    The recruiting thing can't really work. It would only really make sense if people would learn a cool language and then discover that there are very few places where they can work and use it. This is sort-of true for something like Erlang or Smalltalk, but Swift is fairly widely used by people developing for iOS and OS X (and would probably not be worth Apple's effort in developing it if it weren't). If the language is successful enough that enough people are learning it to significantly affect the pool of potential applicants for a company the size of Apple or Google, then enough other companies are likely to be using it that it isn't a significant benefit.

    --
    I am TheRaven on Soylent News
  2. Because no one else does by Alomex · · Score: 4, Interesting

    The reason why companies develop new languages is because the ones coming from academia are focused on the wrong things. Product development requires an industrial strength, strongly typed (for the most part) fast language.

    Projects coming from academia are interpreted, JVM based, functional, obsessed with (im)mutability, closures, and lambda functions.

    This is not to say those things are not nice, however they are not central to a programming language as used in large scale industrial systems.

    1. Re:Because no one else does by radish · · Score: 4, Interesting

      As someone who works on such large scale systems, I disagree. When you need to deal with extremely high concurrency the functional paradigm with immutable structures is a really nice way to reason about problems - I'd say it contributes significantly to reliability over standard threaded imperative code.

      "Fast" is such a vague term as to be meaningless - but I can say that we typically hit the performance limits of something external (network, disk, DB) before the fact that we're in a JVM makes any difference. If your problem is purely compute then maybe it's worth looking at C or golang, but the vast majority of stuff I work on is network services, and compute is not the bottleneck.

      I do 100% agree with the strongly typed bit though :)

      --

      ---- Den ene knappen er powerknapp, den andre er Bender voice knapp "Bite My Shiny Metal Ass"

  3. I know why Swift exists. by jcr · · Score: 4, Interesting

    ...and it had nothing at all to do with recruitment.

    When Apple came up with the LLVM static analyzer, they became much more aware of just what kind of coding mistakes were costing them the most time and money, and Swift addresses those issues.

    -jcr

    --
    The only title of honor that a tyrant can grant is "Enemy of the State."