• Question: how will your program be different from apple, windows, sam learning

    Asked by paradoxman1 to Phil on 15 Jun 2010 in Categories: .
    • Photo: Philip Wadler

      Philip Wadler answered on 15 Jun 2010:


      Apple OS X, Microsoft Windows, and open-source Linux are three different operating systems. Open source means that Linux is distributed for free, and you can get all the code and change it if you want to; OS X and Windows are commercial products, you pay for them and it’s illegal to change them.

      An operating system is the basic software on a computer, that lets you run other programs. You can use a programming language to write a program that does anything you want to. Operating systems, computer games, applets on phones, even the compiler for a programming language itself—in other words, any piece of software whatsoever—starts out as a program written in a programming language. Many programming languages are designed to you can write programs in them that will run in any operating system. For instance, the three main languages I’ve worked with, Haskell, Java, and XQuery, will run on Apple or Microsoft or Linux laptops.

      Interestingly, Apple has recently banned all but three programming languages from iPhones or iPad. (But you can still use any programming language you like on an Apple Powerbook.) They even banned Scratch, which was designed at MIT to allow kids to write their own computer games. You can learn about it here: http://scratch.mit.edu/. There used to be an app that would let you run Scratch on your iPhone, but now Apple has banned it. An interesting question is whether its better to be able to run any program you want (which you can on an Apple or Microsoft computer, or a Google Android phone) or whether you should only be able to run programs approved as ok by the manufacturer (which is what happens on iPhone and iPad).

Comments