{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T04:25:27Z","timestamp":1750220727007,"version":"3.41.0"},"reference-count":18,"publisher":"Association for Computing Machinery (ACM)","issue":"3","license":[{"start":{"date-parts":[[2019,11,25]],"date-time":"2019-11-25T00:00:00Z","timestamp":1574640000000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["SIGBED Rev."],"published-print":{"date-parts":[[2019,11,25]]},"abstract":"<jats:p>General-purpose programming languages C and C++ address only the functional aspect of programs. In contrast, real-time programming languages address not only the functional aspect but also the nonfunctional real-time aspect to automatically ensure the consistency of both aspects in the resulting code. Despite many real-time programming languages proposed in the literature, embedded and real-time programs for economical reasons have continued to be written in C\/C++ with their real-time aspect being dealt separately using modeling tools (e.g., MATLAB\/Simulink) and the consistency of both aspects being checked manually. As embedded and real-time systems permeate through people's lives, it becomes increasingly imperative that both aspects be kept consistent automatically to improve the reliability of the systems. To that end, we propose a real-time programming language called Tice with three novel features: (1) Tice programs are written as modern standard C++ programs. (2) Tice programs can be compiled using any modern off-the-shelf standard C++ compiler. (3) Tice programs compose with other C\/C++ programs as C++ libraries. These novel features make Tice significantly more economical than other real-time programming languages proposed in the literature.<\/jats:p>","DOI":"10.1145\/3373400.3373411","type":"journal-article","created":{"date-parts":[[2019,11,26]],"date-time":"2019-11-26T13:08:55Z","timestamp":1574773735000},"page":"69-74","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":3,"title":["C++ hard-real-time active library"],"prefix":"10.1145","volume":"16","author":[{"given":"Tadeus","family":"Prastowo","sequence":"first","affiliation":[{"name":"DISI, University of Trento, Trento, Italy"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Luigi","family":"Palopoli","sequence":"additional","affiliation":[{"name":"DISI, University of Trento, Trento, Italy"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Luca","family":"Abeni","sequence":"additional","affiliation":[{"name":"Scuola Superiore S. Anna, Pisa, Italy"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2019,11,25]]},"reference":[{"key":"e_1_2_1_1_1","volume-title":"Esterel: Towards a synchronous and semantically sound high-level language for real-time applications. In Proc","author":"Berry G.","year":"1983","unstructured":"G. Berry , S. Moisan , and J.-P. Rigault . 1983 . Esterel: Towards a synchronous and semantically sound high-level language for real-time applications. In Proc . RTSS. IEEE , Silver Spring, MD, USA , 30--37. G. Berry, S. Moisan, and J.-P. Rigault. 1983. Esterel: Towards a synchronous and semantically sound high-level language for real-time applications. In Proc. RTSS. IEEE, Silver Spring, MD, USA, 30--37."},{"key":"e_1_2_1_2_1","unstructured":"S. Cass and P. Bulusu. 2018. The Top Programming Languages 2018. http:\/\/spectrum.ieee.org\/static\/interactive-the-top-programming-languages-2018 Accessed: 2018-09-21.  S. Cass and P. Bulusu. 2018. The Top Programming Languages 2018. http:\/\/spectrum.ieee.org\/static\/interactive-the-top-programming-languages-2018 Accessed: 2018-09-21."},{"key":"e_1_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-39953-4_3"},{"volume-title":"Proc. RTAS 2003 Workshop on Model-Driven Embedded Systems. IEEE","author":"Deters M.","key":"e_1_2_1_4_1","unstructured":"M. Deters , C. Gill , and R. Cytron . 2003. Rate-Monotonic Analysis in the C++ Type System . In Proc. RTAS 2003 Workshop on Model-Driven Embedded Systems. IEEE , Washington, DC. http:\/\/www.cse.wustl.edu\/~cdgill\/RTAS03\/mdes_program.html M. Deters, C. Gill, and R. Cytron. 2003. Rate-Monotonic Analysis in the C++ Type System. In Proc. RTAS 2003 Workshop on Model-Driven Embedded Systems. IEEE, Washington, DC. http:\/\/www.cse.wustl.edu\/~cdgill\/RTAS03\/mdes_program.html"},{"key":"e_1_2_1_5_1","unstructured":"T. Foote. 2017. Celebrating 9 Years of ROS. https:\/\/spectrum.ieee.org\/automaton\/robotics\/robotics-software\/celebrating-9-years-of-ros Accessed: 2018-09-21.  T. Foote. 2017. Celebrating 9 Years of ROS. https:\/\/spectrum.ieee.org\/automaton\/robotics\/robotics-software\/celebrating-9-years-of-ros Accessed: 2018-09-21."},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1109\/REAL.1994.342716"},{"key":"e_1_2_1_7_1","unstructured":"B. Gerkey. 2014. Why ROS 2.0? http:\/\/design.ros2.org\/articles\/why_ros2.html Accessed: 2018-09-21.  B. Gerkey. 2014. Why ROS 2.0? http:\/\/design.ros2.org\/articles\/why_ros2.html Accessed: 2018-09-21."},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-45449-7_12"},{"key":"e_1_2_1_9_1","volume-title":"Proc. RTOSS. IEEE","author":"Hong S.","year":"1928","unstructured":"S. Hong and R. Gerber . 1993. Scheduling with Compiler Transformations: The TCEL Approach . In Proc. RTOSS. IEEE , Washington, DC, USA, 80--84. http:\/\/dl.acm.org\/citation.cfm?id= 1928 06.185857 S. Hong and R. Gerber. 1993. Scheduling with Compiler Transformations: The TCEL Approach. In Proc. RTOSS. IEEE, Washington, DC, USA, 80--84. http:\/\/dl.acm.org\/citation.cfm?id=192806.185857"},{"edition":"1","volume-title":"ISO and IEC. 1996. ISO\/IEC 14977:1996 Extended BNF","key":"e_1_2_1_10_1","unstructured":"ISO and IEC. 1996. ISO\/IEC 14977:1996 Extended BNF ( 1 st ed.). ISO , Geneva, Switzerland . https:\/\/www.iso.org\/standard\/26153.html ISO and IEC. 1996. ISO\/IEC 14977:1996 Extended BNF (1st ed.). ISO, Geneva, Switzerland. https:\/\/www.iso.org\/standard\/26153.html"},{"edition":"1","volume-title":"ISO and IEC. 2006. ISO\/IEC TR 18015:2006 Technical Report on C++ Performance","key":"e_1_2_1_11_1","unstructured":"ISO and IEC. 2006. ISO\/IEC TR 18015:2006 Technical Report on C++ Performance ( 1 st ed.). ISO , Geneva, Switzerland . https:\/\/www.iso.org\/standard\/43351.html ISO and IEC. 2006. ISO\/IEC TR 18015:2006 Technical Report on C++ Performance (1st ed.). ISO, Geneva, Switzerland. https:\/\/www.iso.org\/standard\/43351.html"},{"edition":"4","volume-title":"ISO and IEC. 2014. ISO\/IEC 14882:2014 C++","key":"e_1_2_1_12_1","unstructured":"ISO and IEC. 2014. ISO\/IEC 14882:2014 C++ ( 4 th ed.). ISO, Geneva , Switzerland . https:\/\/www.iso.org\/standard\/64029.html ISO and IEC. 2014. ISO\/IEC 14882:2014 C++ (4th ed.). ISO, Geneva, Switzerland. https:\/\/www.iso.org\/standard\/64029.html"},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-24349-3_5"},{"key":"e_1_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-34688-0"},{"volume-title":"Document Number 2RDU00001 Rev C. Joint Strike Fighter Program Office","year":"2015","key":"e_1_2_1_15_1","unstructured":"Lockheed Martin. 2005. Joint Strike Fighter Air Vehicle C++ CodingStandards , Document Number 2RDU00001 Rev C. Joint Strike Fighter Program Office , Arlington, VA, USA . http:\/\/web.archive.org\/web\/ 2015 07\/jsf.mil\/downloads\/documents\/JSF_AV_C++_Coding_Standards_Rev_C.doc Lockheed Martin. 2005. Joint Strike Fighter Air Vehicle C++ CodingStandards, Document Number 2RDU00001 Rev C. Joint Strike Fighter Program Office, Arlington, VA, USA. http:\/\/web.archive.org\/web\/201507\/jsf.mil\/downloads\/documents\/JSF_AV_C++_Coding_Standards_Rev_C.doc"},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1016\/0164-1212(92)90046-M"},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1093\/comjnl\/38.4.319"},{"key":"e_1_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/2976767.2976772"}],"container-title":["ACM SIGBED Review"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3373400.3373411","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3373400.3373411","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T22:38:16Z","timestamp":1750199896000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3373400.3373411"}},"subtitle":["syntax, semantics, and compilation of Tice programs"],"short-title":[],"issued":{"date-parts":[[2019,11,25]]},"references-count":18,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2019,11,25]]}},"alternative-id":["10.1145\/3373400.3373411"],"URL":"https:\/\/doi.org\/10.1145\/3373400.3373411","relation":{},"ISSN":["1551-3688"],"issn-type":[{"type":"electronic","value":"1551-3688"}],"subject":[],"published":{"date-parts":[[2019,11,25]]},"assertion":[{"value":"2019-11-25","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}