Stranger in a strange land: Breaking language monocultures with open source
Channel: linux conf au 2017 - Hobart, Australia
Date: 2017-01-19

Russell Keith-Magee
http://linux.conf.au/schedule/presentation/32/
Despite many differences, the popular platforms that have emerged over the last 10 years have one thing in common: they all promote programming language monocultures. The platform manufacturers provide a single language, and strongly encourage all developers to use that one language for all projects - Javascript for browsers; Objective C (or Swift) for iOS; and Java for Android.

The open source world is populated with a wide range of programming languages. Object oriented and Functional, scripting and compiled, mainstream and experimental - there is an almost endless supply of options, each with their own advantages and disadvantages, strengths and weaknesses. However, they've largely remained tied to traditional server environments.

Is it possible to break the language monoculture, and port existing open source languages to these new hardware platforms platforms? Thankfully, the answer is yes. The BeeWare project has successfully ported Python to browsers, phones, tablets, set top boxes and watches. Although the specific implementations of the BeeWare project are Python specific, the general approaches taken could be applied to any language.

In this presentation, you'll be introduced to the task of porting languages to a new platform, and the various approaches that can be used, depending on the restrictions that a particular platform may impose.