SyncAS: A Virtual Block Approach to Tame Asynchronous Programming

Hiroaki Fukuda, Paul Leger

研究成果: Article査読


Asynchronous programming has been widely adopted in domains such as Web development. This programming style usually uses callback methods, non-blocking operations, allowing high responsive user interactions even if an application works without multi-threading. However, this style requires the uncoupling of a module into two sub-modules at least, which are not intuitively connected by a callback method. The separation of modules spurs the birth of other issues: callback spaghetti and callback hell. This paper proposes a virtual block approach to address the previous two issues. This approach enables a programmer to virtually block a program execution and restart it at arbitrary points in the program. As a result, programmers do not need to uncouple a module even if non-blocking operations are adopted; therefore, callback dependencies disappear. Using aspect-oriented programming, this approach uses aspects to control the execution of a program in an oblivious manner. As a consequence, programmers do not need to be concerned whether pieces of code use blocking or non-blocking operations. We implement a proof-of-concept for this approach, called SyncAS, for ActionScript3. In addition, we apply our proposal to a toy application and conduct experiments to show its modular application, flexibility, and performance.

ジャーナルInternational Journal of Software Engineering and Knowledge Engineering
出版ステータスPublished - 2015 6月 30

ASJC Scopus subject areas

  • ソフトウェア
  • コンピュータ ネットワークおよび通信
  • コンピュータ グラフィックスおよびコンピュータ支援設計
  • 人工知能


「SyncAS: A Virtual Block Approach to Tame Asynchronous Programming」の研究トピックを掘り下げます。これらがまとまってユニークなフィンガープリントを構成します。