Subscribe / Unsubscribe Enewsletters | Login | Register

Pencil Banner

Q&A: Guido van Rossum on Python's next steps

Paul Krill | June 6, 2016
Mobile use, support via WebAssembly, and many imaginative options are in in the works for the popular object-oriented language.

There's no doubt that Python, a 25-year-old open source, object-oriented dynamic language, has become a major tool for software developers in recent years. They love its programmer-friendliness, as well as its vast ecosystem of frameworks and libraries.

InfoWorld Editor at Large Paul Krill spoke with Python's creator, Guido van Rossum, a principal engineer at Dropbox, about Python's performance, ecosystem, and prospects for both mobile development and the browser.

InfoWorld: What's being done to boost Python's presence in mobile computing? When you think of mobile computing, you usually think of Java with Android or JavaScript or maybe Swift or Objective-C.

Van Rossum: That's still a tough platform to crack for us. Not as bad as the browser platform, as Python is actually capable of running on smartphones of all brands. You just have to find a few people who know exactly how to build a version of Python.

Unfortunately, the standard CPython source code almost, but not quite, compiles to a binary that runs correctly on an Android phone or iPhone. There are a number of people who are really interested in moving that forward and contributing patches and little things like how you check that you're on an Android platform. It's moving forward, though not as fast as I wish it would move forward. But then again, I'm not developing mobile apps myself, so I am not too motivated to dive into that myself. But I'm very happy to see that it's happening.

InfoWorld: Will Python ever have the kind of role in the browser that JavaScript has, or is that not in the cards?

Van Rossum: There are better goals in life.

Because of the structure of the browser world, it's really hard to effectively compete with JavaScript. The best you can do is translate Python to JavaScript. But usually the resulting program runs much slower than it would run in native Python, and it would run much slower compared to a comparable program written in JavaScript. Still, there are exciting experiments in translating Python to JavaScript and running it in the browser.

InfoWorld:While we're talking about JavaScript, what is your impression of WebAssembly?

Van Rossum: This would actually perhaps make running Python in the browser more possible. If it's a replacement for asm.js, it basically removes JavaScript as the only language that you use on the web, and it changes JavaScript to this assemblylike thing. Just like if you write Python, underneath the Python interpreter is written in C. C, when you compile it, translates to machine code, and there's sort of assembly language in between there, too.

If we can't kill JavaScript in the browsers, we may be able to make JavaScript the universal translation target for anything that wants to run in the browser. Then maybe Python and other languages, like Ruby or PHP, can be translated to that low-level thing efficiently.

 

1  2  3  Next Page 

Sign up for CIO Asia eNewsletters.