{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,10,4]],"date-time":"2026-10-04T13:28:22Z","timestamp":1791120502772,"version":"4.1.0"},"reference-count":43,"publisher":"Association for Computing Machinery (ACM)","issue":"5","license":[{"start":{"date-parts":[[2004,9,1]],"date-time":"2004-09-01T00:00:00Z","timestamp":1093996800000},"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":["ACM Trans. Program. Lang. Syst."],"published-print":{"date-parts":[[2004,9]]},"abstract":"<jats:p>\n            Polyphonic C\n            <jats:sup>\u266f<\/jats:sup>\n            is an extension of the C\n            <jats:sup>\u266f<\/jats:sup>\n            language with new asynchronous concurrency constructs, based on the join calculus. We describe the design and implementation of the language and give examples of its use in addressing a range of concurrent programming problems.\n          <\/jats:p>","DOI":"10.1145\/1018203.1018205","type":"journal-article","created":{"date-parts":[[2004,10,7]],"date-time":"2004-10-07T17:38:56Z","timestamp":1097170736000},"page":"769-804","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":104,"title":["Modern concurrency abstractions for C#"],"prefix":"10.1145","volume":"26","author":[{"given":"Nick","family":"Benton","sequence":"first","affiliation":[{"name":"Microsoft Research, Cambridge, United Kingdom"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Luca","family":"Cardelli","sequence":"additional","affiliation":[{"name":"Microsoft Research, Cambridge, United Kingdom"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"C\u00e9dric","family":"Fournet","sequence":"additional","affiliation":[{"name":"Microsoft Research, Cambridge, United Kingdom"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"320","published-online":{"date-parts":[[2004,9]]},"reference":[{"key":"e_1_2_1_1_1","volume-title":"ACTORS : A model of Concurrent computations in Distributed Systems","author":"Agha G.","year":"1990","unstructured":"Agha , G. 1990 . ACTORS : A model of Concurrent computations in Distributed Systems . The MIT Press , Cambridge, Mass .]] Agha, G. 1990. ACTORS : A model of Concurrent computations in Distributed Systems. The MIT Press, Cambridge, Mass.]]"},{"key":"e_1_2_1_2_1","doi-asserted-by":"crossref","unstructured":"Agha G. Wegner P. and Yonezawa A. 1993. Research Directions in Concurrent Object-Oriented Programming. MIT Press.]]   Agha G. Wegner P. and Yonezawa A. 1993. Research Directions in Concurrent Object-Oriented Programming. MIT Press.]]","DOI":"10.7551\/mitpress\/2087.001.0001"},{"key":"e_1_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1007\/BF01887214"},{"key":"e_1_2_1_4_1","unstructured":"Andrews G. R. and Olsson R. A. 1993. The SR Programming Language: Concurrency in Practice. Benjamin\/Cummings.]]   Andrews G. R. and Olsson R. A. 1993. The SR Programming Language: Concurrency in Practice. Benjamin\/Cummings.]]"},{"key":"e_1_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1145\/42192.42324"},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1016\/0167-739X(88)90012-X"},{"key":"e_1_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/342009.335424"},{"key":"e_1_2_1_8_1","volume-title":"Tech. Rep. MSR-TR-2002-53, Microsoft Research. June.]]","author":"Barclay T.","year":"2002","unstructured":"Barclay , T. , Gray , J. , Strand , E. , Ekblad , S. , and Richter , J . 2002 . TerraService.NET: An introduction to web services. Tech. Rep. MSR-TR-2002-53, Microsoft Research. June.]] Barclay, T., Gray, J., Strand, E., Ekblad, S., and Richter, J. 2002. TerraService.NET: An introduction to web services. Tech. Rep. MSR-TR-2002-53, Microsoft Research. June.]]"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1002\/(SICI)1096-9128(199805)10:6<485::AID-CPE329>3.0.CO;2-2"},{"key":"e_1_2_1_10_1","unstructured":"Benton N. 2003. Jingle bells: Solving the Santa Claus problem in Polyphonic &Csharp;.]]  Benton N. 2003. Jingle bells: Solving the Santa Claus problem in Polyphonic &Csharp;.]]"},{"key":"e_1_2_1_12_1","volume-title":"Research Report 20, DEC SRC. Aug.]]","author":"Birrell A. D.","year":"1987","unstructured":"Birrell , A. D. , Guttag , J. V. , Horning , J. J. , and Levin , R . 1987 . Synchronization primitives for a multiprocessor: A for mal specification. Research Report 20, DEC SRC. Aug.]] Birrell, A. D., Guttag, J. V., Horning, J. J., and Levin, R. 1987. Synchronization primitives for a multiprocessor: A formal specification. Research Report 20, DEC SRC. Aug.]]"},{"key":"e_1_2_1_13_1","volume-title":"4th International Conference (FOSSACS","volume":"2030","author":"Buscemi M. G.","year":"2001","unstructured":"Buscemi , M. G. and Sassone , V . 2001. High-level petri nets as type theories in the join calculus. In Foundations of Software Science and Computation Structures , 4th International Conference (FOSSACS 2001 ), F. Honsell and M. Miculan, Eds. Lecture Notes in Computer Science , vol. 2030 . Springer, 104--120.]] Buscemi, M. G. and Sassone, V. 2001. High-level petri nets as type theories in the join calculus. In Foundations of Software Science and Computation Structures, 4th International Conference (FOSSACS 2001), F. Honsell and M. Miculan, Eds. Lecture Notes in Computer Science, vol. 2030. Springer, 104--120.]]"},{"key":"e_1_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1109\/32.798321"},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/503272.503278"},{"key":"e_1_2_1_16_1","volume-title":"First International Symposium on Agent Systems and Applications (ASA'99)","author":"Conchon S.","unstructured":"Conchon , S. and Le Fessant, F. 1999. Jocaml: Mobile agents for Objective-Caml . In First International Symposium on Agent Systems and Applications (ASA'99) \/Third International Symposium on Mobile Agents (MA'99). IEEE Computer Society, 22--29. Software and documentation available from http:\/\/pauillac.inria.fr\/jocaml.]] Conchon, S. and Le Fessant, F. 1999. Jocaml: Mobile agents for Objective-Caml. In First International Symposium on Agent Systems and Applications (ASA'99)\/Third International Symposium on Mobile Agents (MA'99). IEEE Computer Society, 22--29. Software and documentation available from http:\/\/pauillac.inria.fr\/jocaml.]]"},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/365813.365819"},{"key":"e_1_2_1_18_1","volume-title":"Research Report 159, DEC SRC. Dec.]]","author":"Detlefs D. L.","year":"1998","unstructured":"Detlefs , D. L. , Leino , K. R. M. , Nelson , G. , and Saxe, J. B. 1998 . Extended static checking. Research Report 159, DEC SRC. Dec.]] Detlefs, D. L., Leino, K. R. M., Nelson, G., and Saxe, J. B. 1998. Extended static checking. Research Report 159, DEC SRC. Dec.]]"},{"key":"e_1_2_1_19_1","volume-title":"Standard ECMA-334: &Csharp","unstructured":"ECMA. 2001. Standard ECMA-334: &Csharp ; Language Specification .]] ECMA. 2001. Standard ECMA-334: &Csharp; Language Specification.]]"},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/237721.237805"},{"key":"e_1_2_1_21_1","volume-title":"Proceedings of the Applied Semantics Summer School (APPSEM), Caminha","volume":"2395","author":"Fournet C.","year":"2000","unstructured":"Fournet , C. and Gonthier , G . 2002. The join calculus: a language for distributed mobile programming . In Proceedings of the Applied Semantics Summer School (APPSEM), Caminha , Sept. 2000 , G. Barthe, P. Dybjer, L. Pinto, and J. Saraiva, Eds. Lecture Notes in Computer Science , vol. 2395 . Springer-Verlag, 268--332.]] Fournet, C. and Gonthier, G. 2002. The join calculus: a language for distributed mobile programming. In Proceedings of the Applied Semantics Summer School (APPSEM), Caminha, Sept. 2000, G. Barthe, P. Dybjer, L. Pinto, and J. Saraiva, Eds. Lecture Notes in Computer Science, vol. 2395. Springer-Verlag, 268--332.]]"},{"key":"e_1_2_1_22_1","volume-title":"FST TCS 2000: Foundations of Software Technology and Theoretical Computer Science. Lecture Notes in Computer Science","volume":"1974","author":"Fournet C.","unstructured":"Fournet , C. , Laneve , C. , Maranget , L. , and R\u00e9my , D . 2000. Inheritance in the join-calculus (extended abstract) . In FST TCS 2000: Foundations of Software Technology and Theoretical Computer Science. Lecture Notes in Computer Science , vol. 1974 . Springer-Verlag, 397--408. Full version to appear in Journal of Logic and Algebraic Programming.]] Fournet, C., Laneve, C., Maranget, L., and R\u00e9my, D. 2000. Inheritance in the join-calculus (extended abstract). In FST TCS 2000: Foundations of Software Technology and Theoretical Computer Science. Lecture Notes in Computer Science, vol. 1974. Springer-Verlag, 397--408. Full version to appear in Journal of Logic and Algebraic Programming.]]"},{"key":"e_1_2_1_23_1","unstructured":"Gosling J. Joy B. and Steele G. 1996. Threads and locks. In The Java Language Specification. Addison Wesley Chapter 17.]]  Gosling J. Joy B. and Steele G. 1996. Threads and locks. In The Java Language Specification. Addison Wesley Chapter 17.]]"},{"key":"e_1_2_1_24_1","volume-title":"Eds. Lecture Notes in Computer Science","volume":"1912","author":"Gurevich Y.","unstructured":"Gurevich , Y. , Schulte , W. , and Wallace , C . 2000. Investigating Java concurrency using abstract state machines. In Abstract State Machines: Theory and Applications, Y. Gurevich, P. Kutter, M. Odersky, and L. Thiele , Eds. Lecture Notes in Computer Science , vol. 1912 . Springer-Verlag, 151--176.]] Gurevich, Y., Schulte, W., and Wallace, C. 2000. Investigating Java concurrency using abstract state machines. In Abstract State Machines: Theory and Applications, Y. Gurevich, P. Kutter, M. Odersky, and L. Thiele, Eds. Lecture Notes in Computer Science, vol. 1912. Springer-Verlag, 151--176.]]"},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1016\/0004-3702(77)90033-9"},{"key":"e_1_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/355620.361161"},{"key":"e_1_2_1_27_1","volume-title":"Communicating Sequential Processes","author":"Hoare C. A. R.","unstructured":"Hoare , C. A. R. 1985. Communicating Sequential Processes . Prentice-Hall .]] Hoare, C. A. R. 1985. Communicating Sequential Processes. Prentice-Hall.]]"},{"key":"e_1_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.1145\/360204.360215"},{"key":"e_1_2_1_29_1","volume-title":"Occam Programming Manual","author":"Limited","unstructured":"INMOS Limited . 1984. Occam Programming Manual . Prentice-Hall Int. ]] INMOS Limited. 1984. Occam Programming Manual. Prentice-Hall Int.]]"},{"key":"e_1_2_1_30_1","volume-title":"Proceedings of the Eighth Asia-Pacific Computer Systems Architecture Conference. Japan. To appear.]]","author":"Itzstein G. S.","unstructured":"Itzstein , G. S. and Jasiunas , M . 2003. On implementing high level concurrency in java . In Proceedings of the Eighth Asia-Pacific Computer Systems Architecture Conference. Japan. To appear.]] Itzstein, G. S. and Jasiunas, M. 2003. On implementing high level concurrency in java. In Proceedings of the Eighth Asia-Pacific Computer Systems Architecture Conference. Japan. To appear.]]"},{"key":"e_1_2_1_31_1","volume-title":"Join Java: An alternative concurrency semantics for Java. Tech. Rep. ACRC-01-001","author":"Itzstein G. S.","year":"2001","unstructured":"Itzstein , G. S. and Kearney , D . 2001 . Join Java: An alternative concurrency semantics for Java. Tech. Rep. ACRC-01-001 , University of South Australia .]] Itzstein, G. S. and Kearney, D. 2001. Join Java: An alternative concurrency semantics for Java. Tech. Rep. ACRC-01-001, University of South Australia.]]"},{"key":"e_1_2_1_32_1","volume-title":"Proceedings of the Seventh Asia-Pacific Computer Systems Architectures Conference (ACSAC2002)","volume":"6","author":"Itzstein G. S.","unstructured":"Itzstein , G. S. and Kearney , D . 2002. Applications of Join Java . In Proceedings of the Seventh Asia-Pacific Computer Systems Architectures Conference (ACSAC2002) , Melbourne, Australia, F. Lai and J. J. Morris, Eds. Conferences in Research and Practice in Information Technology , vol. 6 . ACS, 37--46.]] Itzstein, G. S. and Kearney, D. 2002. Applications of Join Java. In Proceedings of the Seventh Asia-Pacific Computer Systems Architectures Conference (ACSAC2002), Melbourne, Australia, F. Lai and J. J. Morris, Eds. Conferences in Research and Practice in Information Technology, vol. 6. ACS, 37--46.]]"},{"key":"e_1_2_1_33_1","volume-title":"Proceedings of the First ACM-SIGPLAN Workshop on Domain-Specific Languages","author":"Kamin S., Ed.","year":"1997","unstructured":"Kamin , S., Ed. 1997 . Proceedings of the First ACM-SIGPLAN Workshop on Domain-Specific Languages . Paris, France.]] Kamin, S., Ed. 1997. Proceedings of the First ACM-SIGPLAN Workshop on Domain-Specific Languages. Paris, France.]]"},{"key":"e_1_2_1_34_1","volume-title":"Tech. Rep. MSR-TR-2001-39, Microsoft Research. Mar.]]","author":"Larus J. R.","year":"2001","unstructured":"Larus , J. R. and Parkes , M . 2001 . Using cohort scheduling to enhance server performance. Tech. Rep. MSR-TR-2001-39, Microsoft Research. Mar.]] Larus, J. R. and Parkes, M. 2001. Using cohort scheduling to enhance server performance. Tech. Rep. MSR-TR-2001-39, Microsoft Research. Mar.]]"},{"key":"e_1_2_1_35_1","doi-asserted-by":"crossref","unstructured":"Le Fessant F. and Maranget L. 1998. Compiling join-patterns. In HLCL '98: High-Level Concurrent Languages U. Nestmann and B. C. Pierce Eds. Electronic Notes in Theoretical Computer Science vol. 16(3). Elsevier Science Publishers.]]  Le Fessant F. and Maranget L. 1998. Compiling join-patterns. In HLCL '98: High-Level Concurrent Languages U. Nestmann and B. C. Pierce Eds. Electronic Notes in Theoretical Computer Science vol. 16(3). Elsevier Science Publishers.]]","DOI":"10.1016\/S1571-0661(04)00143-4"},{"key":"e_1_2_1_36_1","volume-title":"Concurrent Programming in Java: Design Principles and Patterns","author":"Lea D.","unstructured":"Lea , D. 1999. Concurrent Programming in Java: Design Principles and Patterns , Second Edition. Addison-Wesley .]] Lea, D. 1999. Concurrent Programming in Java: Design Principles and Patterns, Second Edition. Addison-Wesley.]]"},{"key":"e_1_2_1_37_1","first-page":"107","article-title":"Analysis of inheritance anomaly in object-oriented concurrent programming languages. See Agha et al. {1993}","volume":"4","author":"Matsuoka S.","year":"1993","unstructured":"Matsuoka , S. and Yonezawa , A. 1993 . Analysis of inheritance anomaly in object-oriented concurrent programming languages. See Agha et al. {1993} , Chapter 4 , 107 -- 150 .]] Matsuoka, S. and Yonezawa, A. 1993. Analysis of inheritance anomaly in object-oriented concurrent programming languages. See Agha et al. {1993}, Chapter 4, 107--150.]]","journal-title":"Chapter"},{"key":"e_1_2_1_38_1","doi-asserted-by":"publisher","DOI":"10.1145\/174675.174538"},{"key":"e_1_2_1_39_1","series-title":"Lecture Notes in Computer Science","volume-title":"Proceedings of the European Symposium on Programming","author":"Odersky M.","unstructured":"Odersky , M. 2000. Functional nets . In Proceedings of the European Symposium on Programming . Lecture Notes in Computer Science , vol. 1782 . Springer-Verlag , 1--25.]] Odersky, M. 2000. Functional nets. In Proceedings of the European Symposium on Programming. Lecture Notes in Computer Science, vol. 1782. Springer-Verlag, 1--25.]]"},{"key":"e_1_2_1_41_1","volume-title":"Pict: A programming language based on the pi-calculus. In Proof, Language and Interaction: Essays in Honour of Robin Milner","author":"Pierce B. C.","year":"2000","unstructured":"Pierce , B. C. and Turner , D. N . 2000 . Pict: A programming language based on the pi-calculus. In Proof, Language and Interaction: Essays in Honour of Robin Milner , G. D. Plotkin, C. Stirling, and M. Tofte, Eds. MIT Press .]] Pierce, B. C. and Turner, D. N. 2000. Pict: A programming language based on the pi-calculus. In Proof, Language and Interaction: Essays in Honour of Robin Milner, G. D. Plotkin, C. Stirling, and M. Tofte, Eds. MIT Press.]]"},{"key":"e_1_2_1_42_1","volume-title":"Proceedings of the First USENIX Conference on Domain-Specific Languages","author":"Ramming J. C., Ed.","year":"1997","unstructured":"Ramming , J. C., Ed. 1997 . Proceedings of the First USENIX Conference on Domain-Specific Languages . Santa Barbara, California.]] Ramming, J. C., Ed. 1997. Proceedings of the First USENIX Conference on Domain-Specific Languages. Santa Barbara, California.]]"},{"key":"e_1_2_1_43_1","series-title":"Lecture Notes in Computer Science","volume-title":"Concurrent ML: Design, application and semantics. In Programming, Concurrency, Simulation and Automated Reasoning","author":"Reppy J. H.","year":"1992","unstructured":"Reppy , J. H. 1992 . Concurrent ML: Design, application and semantics. In Programming, Concurrency, Simulation and Automated Reasoning . Lecture Notes in Computer Science , vol. 693 . Springer-Verlag , 165--198.]] Reppy, J. H. 1992. Concurrent ML: Design, application and semantics. In Programming, Concurrency, Simulation and Automated Reasoning. Lecture Notes in Computer Science, vol. 693. Springer-Verlag, 165--198.]]"},{"key":"e_1_2_1_44_1","doi-asserted-by":"publisher","DOI":"10.1145\/187387.187391"},{"key":"e_1_2_1_45_1","series-title":"Computer System Series","volume-title":"ABCL: An Object-Oriented Concurrent System -- Theory, Language, Programming, Implementation and Application","author":"Yonezawa A.","year":"1990","unstructured":"Yonezawa , A. 1990 . ABCL: An Object-Oriented Concurrent System -- Theory, Language, Programming, Implementation and Application . Computer System Series . MIT Press .]] Yonezawa, A. 1990. ABCL: An Object-Oriented Concurrent System -- Theory, Language, Programming, Implementation and Application. Computer System Series. MIT Press.]]"}],"container-title":["ACM Transactions on Programming Languages and Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1018203.1018205","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/1018203.1018205","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T21:36:46Z","timestamp":1750282606000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1018203.1018205"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2004,9]]},"references-count":43,"journal-issue":{"issue":"5","published-print":{"date-parts":[[2004,9]]}},"alternative-id":["10.1145\/1018203.1018205"],"URL":"https:\/\/doi.org\/10.1145\/1018203.1018205","relation":{},"ISSN":["0164-0925","1558-4593"],"issn-type":[{"value":"0164-0925","type":"print"},{"value":"1558-4593","type":"electronic"}],"subject":[],"published":{"date-parts":[[2004,9]]},"assertion":[{"value":"2004-09-01","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}