An Evaluation of Reactive Programming and Promises for Structuring Collaborative Web Applications

Research output: Chapter in Book/Report/Conference proceedingForeword/postscriptResearch

28 Citations (Scopus)


JavaScript programs are highly event-driven, resulting in 'asynchronous spaghetti' code that is difficult to maintain as the magnitude programs written in the language grows. To reduce the effects of this callback hell, various concepts have been employed by a number of JavaScript libraries and frameworks. In this paper we investigate the expressiveness of two such techniques, namely reactive extensions and promises. We have done this by means of a case study consisting of an online collaborative drawing editor. The editor supports advanced drawing features which we try to model using the aforementioned techniques. We then present a discussion on our overall experience in implementing the application using the two concepts. From this, we propose a roadmap of how to improve support of programming event-driven web applications in JavaScript.
Original languageEnglish
Title of host publicationProceedings of the 7th Workshop on Dynamic Languages and Applications (DYLA '13)
Place of PublicationNew York, NY, USA
Number of pages9
ISBN (Print)978-1-4503-2041-2
Publication statusPublished - 7 Jul 2013

Publication series

NameProceedings of the 7th Workshop on Dynamic Languages and Applications (DYLA '13)


  • Javascript
  • Reactive Programming
  • Futures
  • Promises

Cite this