The dog programming language

  • Authors:
  • Salman Ahmad;Sepandar Kamvar

  • Affiliations:
  • Massachusetts Institute of Technology, Cambridge, USA;Massachusetts Institute of Technology, Cambridge, USA

  • Venue:
  • Proceedings of the 26th annual ACM symposium on User interface software and technology
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

Today, most popular software applications are deployed in the cloud, interact with many users, and run on multiple platforms from Web browsers to mobile operating systems. While these applications confer a number of benefits to their users, building them brings many challenges: manually managing state between asynchronous user actions, creating and maintaining separate code bases for each desired client platform and gracefully scaling to handle a large number of concurrent users. Dog is a new programming language that provides a solution to these challenges and others through a unique runtime model that allows developers to model scalable cross-client applications as an imperative control-flow --- simplifying many development tasks. In this paper we describe the key features of Dog and show its utility through several applications that are difficult and time-consuming to write in existing languages, but are simple and easily written in Dog in a few lines of code.