Proposals for modular asynchronous web programming

Issues and challenges

Hiroaki Fukuda, Paul Leger

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Because of the success in the Internet technologies, traditional applications such as drawing and spreadsheet software are now provided as web applications. These modern web applications adopt asynchronous programming that provides high responsive user interactions even if an application works without multi-threading. At the same time, as the scale of these applications becomes large, modular programming becomes important because it allows developers to separate concerns, meaning that the evolution of one module does not affect other modules. However, applying asynchronous and modular programming is difficult because asynchronous programming requires uncoupling of a module into two sub-modules, which are non-intuitively connected by a callback method. The separation of the module spurs the birth of other two issues: callback spaghetti and callback hell. Some proposals have been proposed without the lack of issues about modular programming. In this paper, we compare and evaluate these proposals applying them to a non-trivial open source application development. We then present a discussion on our experience in implementing the application using these proposals. Finally, we point out challenges that this kind of proposal should overcome toward a modular programming.

Original languageEnglish
Title of host publicationLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
PublisherSpringer Verlag
Pages91-102
Number of pages12
Volume9396
ISBN (Print)9783319247991
DOIs
Publication statusPublished - 2015
Event15th International Conference on Current Trends in Web Engineering, ICWE 2015 Workshops NLPIT, PEWET, SoWEMine - Rotterdam, Netherlands
Duration: 2015 Jun 232015 Jun 26

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume9396
ISSN (Print)03029743
ISSN (Electronic)16113349

Other

Other15th International Conference on Current Trends in Web Engineering, ICWE 2015 Workshops NLPIT, PEWET, SoWEMine
CountryNetherlands
CityRotterdam
Period15/6/2315/6/26

Fingerprint

Drawing (graphics)
Spreadsheets
Internet

Keywords

  • Aspect-oriented programming
  • Asynchronous programming
  • Virtual block

ASJC Scopus subject areas

  • Computer Science(all)
  • Theoretical Computer Science

Cite this

Fukuda, H., & Leger, P. (2015). Proposals for modular asynchronous web programming: Issues and challenges. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 9396, pp. 91-102). (Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics); Vol. 9396). Springer Verlag. https://doi.org/10.1007/978-3-319-24800-4_8

Proposals for modular asynchronous web programming : Issues and challenges. / Fukuda, Hiroaki; Leger, Paul.

Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics). Vol. 9396 Springer Verlag, 2015. p. 91-102 (Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics); Vol. 9396).

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Fukuda, H & Leger, P 2015, Proposals for modular asynchronous web programming: Issues and challenges. in Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics). vol. 9396, Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), vol. 9396, Springer Verlag, pp. 91-102, 15th International Conference on Current Trends in Web Engineering, ICWE 2015 Workshops NLPIT, PEWET, SoWEMine, Rotterdam, Netherlands, 15/6/23. https://doi.org/10.1007/978-3-319-24800-4_8
Fukuda H, Leger P. Proposals for modular asynchronous web programming: Issues and challenges. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics). Vol. 9396. Springer Verlag. 2015. p. 91-102. (Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)). https://doi.org/10.1007/978-3-319-24800-4_8
Fukuda, Hiroaki ; Leger, Paul. / Proposals for modular asynchronous web programming : Issues and challenges. Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics). Vol. 9396 Springer Verlag, 2015. pp. 91-102 (Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)).
@inproceedings{c735e9107d5e4fd1bd03874c92eb1489,
title = "Proposals for modular asynchronous web programming: Issues and challenges",
abstract = "Because of the success in the Internet technologies, traditional applications such as drawing and spreadsheet software are now provided as web applications. These modern web applications adopt asynchronous programming that provides high responsive user interactions even if an application works without multi-threading. At the same time, as the scale of these applications becomes large, modular programming becomes important because it allows developers to separate concerns, meaning that the evolution of one module does not affect other modules. However, applying asynchronous and modular programming is difficult because asynchronous programming requires uncoupling of a module into two sub-modules, which are non-intuitively connected by a callback method. The separation of the module spurs the birth of other two issues: callback spaghetti and callback hell. Some proposals have been proposed without the lack of issues about modular programming. In this paper, we compare and evaluate these proposals applying them to a non-trivial open source application development. We then present a discussion on our experience in implementing the application using these proposals. Finally, we point out challenges that this kind of proposal should overcome toward a modular programming.",
keywords = "Aspect-oriented programming, Asynchronous programming, Virtual block",
author = "Hiroaki Fukuda and Paul Leger",
year = "2015",
doi = "10.1007/978-3-319-24800-4_8",
language = "English",
isbn = "9783319247991",
volume = "9396",
series = "Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)",
publisher = "Springer Verlag",
pages = "91--102",
booktitle = "Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)",

}

TY - GEN

T1 - Proposals for modular asynchronous web programming

T2 - Issues and challenges

AU - Fukuda, Hiroaki

AU - Leger, Paul

PY - 2015

Y1 - 2015

N2 - Because of the success in the Internet technologies, traditional applications such as drawing and spreadsheet software are now provided as web applications. These modern web applications adopt asynchronous programming that provides high responsive user interactions even if an application works without multi-threading. At the same time, as the scale of these applications becomes large, modular programming becomes important because it allows developers to separate concerns, meaning that the evolution of one module does not affect other modules. However, applying asynchronous and modular programming is difficult because asynchronous programming requires uncoupling of a module into two sub-modules, which are non-intuitively connected by a callback method. The separation of the module spurs the birth of other two issues: callback spaghetti and callback hell. Some proposals have been proposed without the lack of issues about modular programming. In this paper, we compare and evaluate these proposals applying them to a non-trivial open source application development. We then present a discussion on our experience in implementing the application using these proposals. Finally, we point out challenges that this kind of proposal should overcome toward a modular programming.

AB - Because of the success in the Internet technologies, traditional applications such as drawing and spreadsheet software are now provided as web applications. These modern web applications adopt asynchronous programming that provides high responsive user interactions even if an application works without multi-threading. At the same time, as the scale of these applications becomes large, modular programming becomes important because it allows developers to separate concerns, meaning that the evolution of one module does not affect other modules. However, applying asynchronous and modular programming is difficult because asynchronous programming requires uncoupling of a module into two sub-modules, which are non-intuitively connected by a callback method. The separation of the module spurs the birth of other two issues: callback spaghetti and callback hell. Some proposals have been proposed without the lack of issues about modular programming. In this paper, we compare and evaluate these proposals applying them to a non-trivial open source application development. We then present a discussion on our experience in implementing the application using these proposals. Finally, we point out challenges that this kind of proposal should overcome toward a modular programming.

KW - Aspect-oriented programming

KW - Asynchronous programming

KW - Virtual block

UR - http://www.scopus.com/inward/record.url?scp=84951043317&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=84951043317&partnerID=8YFLogxK

U2 - 10.1007/978-3-319-24800-4_8

DO - 10.1007/978-3-319-24800-4_8

M3 - Conference contribution

SN - 9783319247991

VL - 9396

T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)

SP - 91

EP - 102

BT - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)

PB - Springer Verlag

ER -