{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,19]],"date-time":"2025-06-19T04:17:29Z","timestamp":1750306649039,"version":"3.41.0"},"reference-count":48,"publisher":"Association for Computing Machinery (ACM)","issue":"4s","license":[{"start":{"date-parts":[[2014,7,1]],"date-time":"2014-07-01T00:00:00Z","timestamp":1404172800000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"DOI":"10.13039\/501100001659","name":"Deutsche Forschungsgemeinschaft","doi-asserted-by":"publisher","id":[{"id":"10.13039\/501100001659","id-type":"DOI","asserted-by":"publisher"}]},{"DOI":"10.13039\/100013765","name":"National Instruments","doi-asserted-by":"crossref","id":[{"id":"10.13039\/100013765","id-type":"DOI","asserted-by":"crossref"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Embed. Comput. Syst."],"published-print":{"date-parts":[[2014,7]]},"abstract":"<jats:p>\n            Synchronous languages ensure determinate concurrency but at the price of restrictions on what programs are considered valid, or\n            <jats:italic>constructive<\/jats:italic>\n            . Meanwhile, sequential languages such as C and Java offer an intuitive, familiar programming paradigm but provide no guarantees with regard to determinate concurrency. The\n            <jats:italic>sequentially constructive<\/jats:italic>\n            (SC) model of computation (MoC) presented here harnesses the synchronous execution model to achieve determinate concurrency while taking advantage of familiar, convenient programming paradigms from sequential languages.\n          <\/jats:p>\n          <jats:p>In essence, the SC MoC extends the classical synchronous MoC by allowing variables to be read and written in any order and multiple times, as long as the sequentiality expressed in the program provides sufficient scheduling information to rule out race conditions. This allows to use programming patterns familiar from sequential programming, such as testing and later setting the value of a variable, which are forbidden in the standard synchronous MoC. The SC MoC is a conservative extension in that programs considered constructive in the common synchronous MoC are also SC and retain the same semantics. In this article, we investigate classes of shared variable accesses, define SC-admissible scheduling as a restriction of \u201cfree scheduling,\u201d derive the concept of sequential constructiveness, and present a priority-based scheduling algorithm for analyzing and compiling SC programs efficiently.<\/jats:p>","DOI":"10.1145\/2627350","type":"journal-article","created":{"date-parts":[[2014,11,18]],"date-time":"2014-11-18T13:49:53Z","timestamp":1416318593000},"page":"1-26","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":17,"title":["Sequentially Constructive Concurrency\u2014A Conservative Extension of the Synchronous Model of Computation"],"prefix":"10.1145","volume":"13","author":[{"given":"Reinhard Von","family":"Hanxleden","sequence":"first","affiliation":[{"name":"Kiel University, Kiel, Germany"}]},{"given":"Michael","family":"Mendler","sequence":"additional","affiliation":[{"name":"Bamberg University, Bamberg, Germany"}]},{"given":"Joaqu\u00edn","family":"Aguado","sequence":"additional","affiliation":[{"name":"Bamberg University, Bamberg, Germany"}]},{"given":"Bj\u00f6rn","family":"Duderstadt","sequence":"additional","affiliation":[{"name":"Kiel University, Kiel, Germany"}]},{"given":"Insa","family":"Fuhrmann","sequence":"additional","affiliation":[{"name":"Kiel University, Kiel, Germany"}]},{"given":"Christian","family":"Motika","sequence":"additional","affiliation":[{"name":"Kiel University, Kiel, Germany"}]},{"given":"Stephen","family":"Mercer","sequence":"additional","affiliation":[{"name":"National Instruments, Austin, TX"}]},{"given":"Owen","family":"O'brien","sequence":"additional","affiliation":[{"name":"National Instruments, Austin, TX"}]},{"given":"Partha","family":"Roop","sequence":"additional","affiliation":[{"name":"Auckland University, Auckland, New Zealand"}]}],"member":"320","published-online":{"date-parts":[[2014,7,28]]},"reference":[{"key":"e_1_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-54833-8_13"},{"key":"e_1_2_1_2_1","volume-title":"Proceedings of the Workshop on Reconciling Performance with Predictability (RePP'09)","author":"Andalam Sidharta","year":"2009","unstructured":"Sidharta Andalam , Partha Roop , Alain Girault , and Claus Traulsen . 2009 . PRET-C: A new language for programming precision timed architectures . In Proceedings of the Workshop on Reconciling Performance with Predictability (RePP'09) , Embedded Systems Week. Sidharta Andalam, Partha Roop, Alain Girault, and Claus Traulsen. 2009. PRET-C: A new language for programming precision timed architectures. In Proceedings of the Workshop on Reconciling Performance with Predictability (RePP'09), Embedded Systems Week."},{"key":"e_1_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.5555\/1870926.1871325"},{"key":"e_1_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1145\/278283.278285"},{"key":"e_1_2_1_6_1","volume-title":"Proc. IEEE, (Special Issue on Embedded Systems), 91","author":"Benveniste Albert","year":"2003","unstructured":"Albert Benveniste , Paul Caspi , Stephen A. Edwards , Nicolas Halbwachs , Paul Le Guernic , and Robert de Simone . 2003 . The synchronous languages twelve years later . Proc. IEEE, (Special Issue on Embedded Systems), 91 . IEEE, Los Alamitos, CA, 64--83. Albert Benveniste, Paul Caspi, Stephen A. Edwards, Nicolas Halbwachs, Paul Le Guernic, and Robert de Simone. 2003. The synchronous languages twelve years later. Proc. IEEE, (Special Issue on Embedded Systems), 91. IEEE, Los Alamitos, CA, 64--83."},{"volume-title":"Proof, Language, and Interaction: Essays in Honour of Robin Milner","author":"Berry G\u00e9rard","key":"e_1_2_1_7_1","unstructured":"G\u00e9rard Berry . 2000. The foundations of Esterel . In Proof, Language, and Interaction: Essays in Honour of Robin Milner , Gordon Plotkin, Colin Stirling, and Mads Tofte (Eds.), MIT Press , Cambridge, MA , 425--454. G\u00e9rard Berry. 2000. The foundations of Esterel. In Proof, Language, and Interaction: Essays in Honour of Robin Milner, Gordon Plotkin, Colin Stirling, and Mads Tofte (Eds.), MIT Press, Cambridge, MA, 425--454."},{"volume-title":"Version 3.0","author":"Berry G\u00e9rard","key":"e_1_2_1_8_1","unstructured":"G\u00e9rard Berry . 2002. The Constructive Semantics of Pure Esterel. Draft Book , Version 3.0 , Centre de Math\u00e9matiques Appliq\u00e9es , Ecole des Mines de Paris and INRIA, Sophia-Antipolis CDX, France. G\u00e9rard Berry. 2002. The Constructive Semantics of Pure Esterel. Draft Book, Version 3.0, Centre de Math\u00e9matiques Appliq\u00e9es, Ecole des Mines de Paris and INRIA, Sophia-Antipolis CDX, France."},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1002\/spe.4380210406"},{"key":"e_1_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1002\/cpe.v18:5"},{"volume-title":"Asynchronous Circuits","author":"Brzozowski Janusz A.","key":"e_1_2_1_12_1","unstructured":"Janusz A. Brzozowski and Carl-Johan H. Seger . 1995. Asynchronous Circuits . Springer-Verlag , New York . Janusz A. Brzozowski and Carl-Johan H. Seger. 1995. Asynchronous Circuits. Springer-Verlag, New York."},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/1542452.1542455"},{"key":"e_1_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/1176887.1176899"},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/1086228.1086261"},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/762488.762489"},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/24039.24041"},{"key":"e_1_2_1_18_1","doi-asserted-by":"crossref","unstructured":"Mike Gem\u00fcnde Jens Brandt and Klaus Schneider. 2013. Clock refinement in imperative synchronous languages. EURASIP J. Emb. Syst. 3 (2013).  Mike Gem\u00fcnde Jens Brandt and Klaus Schneider. 2013. Clock refinement in imperative synchronous languages. EURASIP J. Emb. Syst. 3 (2013).","DOI":"10.1186\/1687-3963-2013-3"},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1109\/5.97300"},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/312009.312034"},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1016\/0167-6423(87)90035-9"},{"volume-title":"Communicating Sequential Processes","author":"Hoare C. A. R.","key":"e_1_2_1_22_1","unstructured":"C. A. R. Hoare . 1985. Communicating Sequential Processes . Prentice Hall , Upper Saddle River, NJ. C. A. R. Hoare. 1985. Communicating Sequential Processes. Prentice Hall, Upper Saddle River, NJ."},{"key":"e_1_2_1_23_1","series-title":"Lecture Notes in Computer Science","volume-title":"A fundamental theorem of asynchronous parallel computation","author":"Keller Robert M.","unstructured":"Robert M. Keller . 1975. A fundamental theorem of asynchronous parallel computation . In Parallel Processing, Tse-yun Feng (Ed.), Lecture Notes in Computer Science , vol. 24 , Springer , Berlin, Heidelberg , 102--112. Robert M. Keller. 1975. A fundamental theorem of asynchronous parallel computation. In Parallel Processing, Tse-yun Feng (Ed.), Lecture Notes in Computer Science, vol. 24, Springer, Berlin, Heidelberg, 102--112."},{"key":"e_1_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/2535838.2535842"},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1145\/359545.359563"},{"key":"e_1_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/309847.309989"},{"key":"e_1_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1109\/5.97301"},{"key":"e_1_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.1109\/MC.2006.180"},{"key":"e_1_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/2254064.2254110"},{"key":"e_1_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.1109\/43.293952"},{"key":"e_1_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/2505879.2505904"},{"key":"e_1_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10703-012-0144-6"},{"volume-title":"Communication and Concurrency","author":"Milner R.","key":"e_1_2_1_33_1","unstructured":"R. Milner . 1989. Communication and Concurrency . Prentice Hall . R. Milner. 1989. Communication and Concurrency. Prentice Hall."},{"volume-title":"Proceedings of the International Conference on Theoretical Aspects of Computer Software (TACS'91)","author":"Pnueli Amir","key":"e_1_2_1_34_1","unstructured":"Amir Pnueli and M. Shalev . 1991. What is in a step: On the semantics of statecharts . In Proceedings of the International Conference on Theoretical Aspects of Computer Software (TACS'91) . Springer, 244--264. Amir Pnueli and M. Shalev. 1991. What is in a step: On the semantics of statecharts. In Proceedings of the International Conference on Theoretical Aspects of Computer Software (TACS'91). Springer, 244--264."},{"key":"e_1_2_1_35_1","unstructured":"Dumitru Potop-Butucaru Stephen A. Edwards and G\u00e9rard Berry. 2007. Compiling Esterel. Springer.   Dumitru Potop-Butucaru Stephen A. Edwards and G\u00e9rard Berry. 2007. Compiling Esterel. Springer."},{"key":"e_1_2_1_36_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10617-010-9053-3"},{"key":"e_1_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.1145\/2517351.2517360"},{"key":"e_1_2_1_38_1","doi-asserted-by":"publisher","DOI":"10.5555\/646529.695215"},{"key":"e_1_2_1_39_1","volume-title":"Proceedings of the International Workshop on Synchronous Languages, Applications, and Programming (SLAP'05)","author":"Schneider Klaus","year":"2005","unstructured":"Klaus Schneider , Jens Brandt , Tobias Sch\u00fcle , and Thomas T\u00fcrk . 2005 . Improving constructiveness in code generators . In Proceedings of the International Workshop on Synchronous Languages, Applications, and Programming (SLAP'05) . Florence Maraninchi, Marc Pouzet, and Val\u00e9rie Roy (Eds.), Electronic Notes in Theoretical Computer Science, Edinburgh, 1--19. Klaus Schneider, Jens Brandt, Tobias Sch\u00fcle, and Thomas T\u00fcrk. 2005. Improving constructiveness in code generators. In Proceedings of the International Workshop on Synchronous Languages, Applications, and Programming (SLAP'05). Florence Maraninchi, Marc Pouzet, and Val\u00e9rie Roy (Eds.), Electronic Notes in Theoretical Computer Science, Edinburgh, 1--19."},{"key":"e_1_2_1_40_1","doi-asserted-by":"publisher","DOI":"10.1145\/357114.357116"},{"key":"e_1_2_1_41_1","doi-asserted-by":"publisher","DOI":"10.5555\/787259.787602"},{"key":"e_1_2_1_42_1","doi-asserted-by":"publisher","DOI":"10.1145\/1176887.1176908"},{"key":"e_1_2_1_43_1","doi-asserted-by":"publisher","DOI":"10.1137\/0201010"},{"key":"e_1_2_1_44_1","doi-asserted-by":"publisher","DOI":"10.5555\/1882094.1882122"},{"key":"e_1_2_1_45_1","doi-asserted-by":"publisher","DOI":"10.1145\/1629335.1629366"},{"key":"e_1_2_1_46_1","doi-asserted-by":"publisher","DOI":"10.1145\/2594291.2594310"},{"key":"e_1_2_1_47_1","doi-asserted-by":"publisher","DOI":"10.5555\/2485288.2485431"},{"key":"e_1_2_1_49_1","doi-asserted-by":"publisher","DOI":"10.1109\/ACSD.2013.19"},{"key":"e_1_2_1_50_1","doi-asserted-by":"publisher","DOI":"10.1145\/2248418.2248438"},{"key":"e_1_2_1_51_1","doi-asserted-by":"publisher","DOI":"10.1145\/2442516.2442520"}],"container-title":["ACM Transactions on Embedded Computing Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2627350","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/2627350","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T06:56:08Z","timestamp":1750229768000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2627350"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2014,7]]},"references-count":48,"journal-issue":{"issue":"4s","published-print":{"date-parts":[[2014,7]]}},"alternative-id":["10.1145\/2627350"],"URL":"https:\/\/doi.org\/10.1145\/2627350","relation":{},"ISSN":["1539-9087","1558-3465"],"issn-type":[{"type":"print","value":"1539-9087"},{"type":"electronic","value":"1558-3465"}],"subject":[],"published":{"date-parts":[[2014,7]]},"assertion":[{"value":"2013-10-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2014-02-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2014-07-28","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}