• DocumentCode
    1636319
  • Title

    Capsule-Oriented Programming

  • Author

    Rajan, Hridesh

  • Author_Institution
    Dept. of Comput. Sci., Iowa State Univ. of Sci. & Technol., Ames, IA, USA
  • Volume
    2
  • fYear
    2015
  • Firstpage
    611
  • Lastpage
    614
  • Abstract
    “Explicit concurrency should be abolished from all higher-level programming languages (i.e. everything except - perhaps- plain machine code.).” Dijkstra [1] (paraphrased). A promising class of concurrency abstractions replaces explicit concurrency mechanisms with a single linguistic mechanism that combines state and control and uses asynchronous messages for communications, e.g. active objects or actors, but that doesn´t remove the hurdle of understanding non-local control transfer. What if the programming model enabled programmers to simply do what they do best, that is, to describe a system in terms of its modular structure and write sequential code to implement the operations of those modules and handles details of concurrency? In a recently sponsored NSF project we are developing such a model that we call capsule-oriented programming and its realization in the Panini project. This model favors modularity over explicit concurrency, encourages concurrency correctness by construction, and exploits modular structure of programs to expose implicit concurrency.
  • Keywords
    concurrency (computers); high level languages; software engineering; NSF project; Panini project; capsule-oriented programming; concurrency abstractions; explicit concurrency mechanisms; higher-level programming languages; nonlocal control transfer; sequential code; single linguistic mechanism; Concurrent computing; Global Positioning System; Java; Message systems; Program processors; Programming; Synchronization; Modularity; capsules; concurrency abstraction; implicit concurrency; modular structure; programming model;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Engineering (ICSE), 2015 IEEE/ACM 37th IEEE International Conference on
  • Conference_Location
    Florence
  • Type

    conf

  • DOI
    10.1109/ICSE.2015.205
  • Filename
    7203025