Programming Language Technology for Niche Platforms
Tero Hasu
Abstract
Developers writing software for a niche platform are denied the luxury of a first-class vendor-supported integrated development environment and a large community crafting platform-tailored libraries, tools, and documentation. I outline a strategy for setting up a cross-platform software product line with cost-effective targeting of niche platforms in mind.
The product line setup strategy assumes little tool support from the platform vendor or third parties, instead relying on a suitably-designed, malleable general-purpose programming language for the necessary support. The required language support includes: program translation into the relevant vendor-favored languages; human-comprehensible translator output to allow for basic debugging irrespective of available tools; a component system for managing software assets and assembling products; static reasoning of facts about whole programs for the benefit of configuration management and building; and modifiability of the language from within (and perhaps also from without), to allow for purpose-oriented variability, and low-threshold implementation of abstractions over platform and product-line specific idioms.
I present a collection of technologies aimed at implementing such programming languages, and show a number of ways to apply such languages in ways that suit the niche platform application product line scenario. I use smartphone operating systems as an example platform ecosystem, and focus on error handling and prevention as an example concern that poses reuse, integration, and configuration management challenges in multi-platform codebases.
BibTeX
@phdthesis{hasu-2017-programming, author = {Tero Hasu}, title = {Programming Language Technology for Niche Platforms}, school = {University of Bergen}, year = 2017, address = {Norway}, month = mar, isbn = {978-82-308-3113-7} }
Scribble
(define hasu-2017-programming (make-bib #:title "Programming Language Technology for Niche Platforms" #:author (authors "Tero Hasu") #:date "2017" #:location (dissertation-location #:institution "University of Bergen")))
Publication Details
- ISBN
- 978-82-308-3113-7
- Digital publication
- http://hdl.handle.net/1956/15648
- black and white
- Author's edition
- thesis
- with light colors, hyperlinks, other minor editing
- Presentation
- slides
- Software
- https://bldl.ii.uib.no/software/pltnp
- Press release
- Verktøy for å programmere uten plattformdiskriminering (in Norwegian)