{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,11,25]],"date-time":"2025-11-25T06:45:21Z","timestamp":1764053121375},"reference-count":53,"publisher":"Wiley","issue":"1","license":[{"start":{"date-parts":[[2006,10,24]],"date-time":"2006-10-24T00:00:00Z","timestamp":1161648000000},"content-version":"vor","delay-in-days":5013,"URL":"http:\/\/onlinelibrary.wiley.com\/termsAndConditions#vor"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Concurrency: Pract. Exper."],"published-print":{"date-parts":[[1993,2]]},"abstract":"<jats:title>Abstract<\/jats:title><jats:p>Management of the communications among a set of concurrent processes arises in many applications and is a central concern in parallel computing. In this paper we introduce MANIFOLD: a <jats:italic>co\u2010ordination<\/jats:italic> language whose sole purpose is to describe and manage complex interconnections among independent, concurrent processes. In the underlying paradigm of this language the primary concern is not with <jats:italic>what<\/jats:italic> functionality the individual processes in a parallel system provide. Instead, the emphasis is on <jats:italic>how<\/jats:italic> these processes are interconnected and how their interaction patterns change during the execution life of the system. This paper also includes an overview of our implementation of MANIFOLD.<\/jats:p><jats:p>As an example of the application of MANIFOLD, we present a series of small manifold programs which describe the skeletons of some adaptive recursive algorithms that are of particular interest in computer graphics. Our concern in this paper is to show the expressiveness of MANIFOLD, the feasibility of its implementation and its usefulness in practice. Issues regarding performance and optimization are beyond the scope of this paper.<\/jats:p>","DOI":"10.1002\/cpe.4330050103","type":"journal-article","created":{"date-parts":[[2006,11,18]],"date-time":"2006-11-18T06:34:42Z","timestamp":1163831682000},"page":"23-70","source":"Crossref","is-referenced-by-count":97,"title":["An overview of manifold and its implementation"],"prefix":"10.1002","volume":"5","author":[{"given":"F.","family":"Arbab","sequence":"first","affiliation":[]},{"given":"I.","family":"Herman","sequence":"additional","affiliation":[]},{"given":"P.","family":"Spilling","sequence":"additional","affiliation":[]}],"member":"311","published-online":{"date-parts":[[2006,10,24]]},"reference":[{"key":"e_1_2_1_2_2","series-title":"Prentice\u2010Hall International Series in Computer Science","volume-title":"Communication and Concurrency","author":"Milner R.","year":"1989"},{"key":"e_1_2_1_3_2","doi-asserted-by":"publisher","DOI":"10.1145\/359576.359585"},{"key":"e_1_2_1_4_2","series-title":"Prentice\u2010Hall International Series in Computer Science","volume-title":"Communicating sequential processes","author":"Hoare C.","year":"1985"},{"key":"e_1_2_1_5_2","doi-asserted-by":"publisher","DOI":"10.1145\/129630.129635"},{"key":"e_1_2_1_6_2","doi-asserted-by":"publisher","DOI":"10.1145\/63334.63337"},{"key":"e_1_2_1_7_2","doi-asserted-by":"publisher","DOI":"10.1109\/2.44903"},{"key":"e_1_2_1_8_2","volume-title":"Specification of manifold","author":"Arbab F.","year":"1992"},{"key":"e_1_2_1_9_2","unstructured":"United States Department of Defense Reference Manual for the Ada Programming Language November1980."},{"key":"e_1_2_1_10_2","doi-asserted-by":"crossref","first-page":"821","DOI":"10.1002\/j.1097-024X.1986.tb00013.x","article-title":"Concurrent C","volume":"16","author":"Gehani N.","year":"1986","journal-title":"Software\u2014Practice and Experience"},{"key":"e_1_2_1_11_2","volume-title":"The Concurrent C Programming Language","author":"Gehani N.","year":"1989"},{"key":"e_1_2_1_12_2","doi-asserted-by":"publisher","DOI":"10.1002\/spe.4380181205"},{"key":"e_1_2_1_13_2","series-title":"Series in Computer Science","volume-title":"OCCAM 2, Reference Manual","author":"INMOS Ltd.","year":"1988"},{"key":"e_1_2_1_14_2","doi-asserted-by":"publisher","DOI":"10.1145\/72551.72552"},{"key":"e_1_2_1_15_2","doi-asserted-by":"publisher","DOI":"10.1111\/j.1467-8659.1988.tb00583.x"},{"key":"e_1_2_1_16_2","unstructured":"T.DoeppnerJr. \u2018A Threads tutorial\u2019 Tech. Rep. CS\u201087\u201006 Brown University (1988)."},{"key":"e_1_2_1_17_2","doi-asserted-by":"publisher","DOI":"10.1002\/spe.4380200906"},{"key":"e_1_2_1_18_2","unstructured":"M.Accetta R.Baron W.Bolosky D.Golub R.Rashid A.TevanianandM.Young \u2018Mach: A new kernel foundation for UNIX development\u2019 in Proceedings of the Summer Usenix Conference Atlanta GA July (1986)."},{"key":"e_1_2_1_19_2","doi-asserted-by":"publisher","DOI":"10.1109\/2.53353"},{"key":"e_1_2_1_20_2","unstructured":"SUN Microsystems SunOS Manuals Lightweight Processes revision A (1990)."},{"key":"e_1_2_1_21_2","unstructured":"F.ArbabandI.Herman \u2018Examples in Manifold\u2019 Tech. Rep. CS\u2010R9066 Centrum voor Wiskunde en Informatica Amsterdam (1990)."},{"key":"e_1_2_1_22_2","unstructured":"F.ArbabandI.Herman \u2018Manifold: A language for specification of inter\u2010process communication\u2019 in Proceedings of the EurOpen Autumn Conference A. Finlay (Ed.) Budapest September (1991) pp.127\u2013144."},{"key":"e_1_2_1_23_2","volume-title":"Computing and Information ICCI'92","author":"Arbab F.","year":"1992"},{"key":"e_1_2_1_24_2","volume-title":"More examples in Manifold","author":"Herman I.","year":"1992"},{"key":"e_1_2_1_25_2","doi-asserted-by":"publisher","DOI":"10.1111\/j.1467-8659.1988.tb00632.x"},{"key":"e_1_2_1_26_2","doi-asserted-by":"publisher","DOI":"10.1111\/1467-8659.1030209"},{"key":"e_1_2_1_27_2","unstructured":"J.Peterson R.BogartandS.Thomas \u2018The Utah Raster Toolkit\u2019 in Proceedings of the Usenix Workshop on Graphics Monterey California (1986)."},{"key":"e_1_2_1_28_2","doi-asserted-by":"publisher","DOI":"10.1109\/38.56300"},{"key":"e_1_2_1_29_2","unstructured":"C.Upson \u2018Scientific visualization environments for the computational sciences\u2019 in Proceedings of the 34th IEEE Computer Society International Conference San Francisco (1989)."},{"key":"e_1_2_1_30_2","unstructured":"Silicon Graphics Inc. \u2018IRIS Explorer User's Guide\u2019 Tech. Rep. Silicon Graphics Inc. Mountain View California (1991)."},{"key":"e_1_2_1_31_2","volume-title":"Computer Graphics\u2010Principles and Practice","author":"Foley J.","year":"1990"},{"key":"e_1_2_1_32_2","volume-title":"Digital Image Processing","author":"Gonzalez R.","year":"1983"},{"key":"e_1_2_1_33_2","series-title":"Heidelberg: Eurographic Seminar Series","volume-title":"Advances in Computer Graphics VI","author":"Bronsvoort W.","year":"1991"},{"key":"e_1_2_1_34_2","volume-title":"An Introduction to Splines for Use in Computer Graphics & Geometric Modelling","author":"Bartels R.","year":"1987"},{"key":"e_1_2_1_35_2","series-title":"Heidelberg: Eurographic Seminar Series","volume-title":"Advances in Computer Graphics VI","author":"Cohen M.","year":"1991"},{"key":"e_1_2_1_36_2","volume-title":"Parallel Processing for Computer Graphics, Research Monographs in Parallel and Distributed Computing","author":"Green S.","year":"1991"},{"key":"e_1_2_1_37_2","series-title":"Heidelberg: Eurographic Seminar Series","volume-title":"Advances in Computer Graphics VI","author":"Crow F.","year":"1991"},{"key":"e_1_2_1_38_2","doi-asserted-by":"publisher","DOI":"10.1109\/2.121475"},{"key":"e_1_2_1_39_2","doi-asserted-by":"publisher","DOI":"10.1145\/127719.122748"},{"key":"e_1_2_1_40_2","volume-title":"Formal specification of Manifol: a preliminary study","author":"Rutten E.","year":"1992"},{"key":"e_1_2_1_41_2","volume-title":"Capsules: a shared memory access mechanism","author":"Gehani N.","year":"1990"},{"key":"e_1_2_1_42_2","volume-title":"Operating System Principles","author":"Hansen P.","year":"1973"},{"key":"e_1_2_1_43_2","doi-asserted-by":"publisher","DOI":"10.1145\/355620.361161"},{"key":"e_1_2_1_44_2","volume-title":"The C++ Programming Language","author":"Stroustrup B.","year":"1991"},{"key":"e_1_2_1_45_2","volume-title":"GNU M4","author":"Seindal R.","year":"1990"},{"key":"e_1_2_1_46_2","doi-asserted-by":"crossref","unstructured":"J.Browne M.AzamandS.Sobek \u2018CODE: A unified approach to parallel programming\u2019 IEEE Software 10\u201318(1989).","DOI":"10.1109\/52.31648"},{"key":"e_1_2_1_47_2","doi-asserted-by":"publisher","DOI":"10.1109\/32.44375"},{"key":"e_1_2_1_48_2","doi-asserted-by":"publisher","DOI":"10.1145\/27633.28055"},{"key":"e_1_2_1_49_2","doi-asserted-by":"publisher","DOI":"10.1109\/32.9065"},{"key":"e_1_2_1_50_2","doi-asserted-by":"publisher","DOI":"10.1016\/0743-7315(90)90039-R"},{"key":"e_1_2_1_51_2","doi-asserted-by":"publisher","DOI":"10.1016\/0097-8493(90)90012-M"},{"key":"e_1_2_1_52_2","unstructured":"International Organization for Standardization Geneva Information Processing Systems\u2010Open Systems Interconnections\u2010LOTOS (Formal Description Technique based on the temporal ordering of observational behaviour) ISO\/DIS 8807 March (1988)."},{"key":"e_1_2_1_53_2","doi-asserted-by":"publisher","DOI":"10.1016\/0169-7552(87)90085-7"},{"key":"e_1_2_1_54_2","first-page":"171","volume-title":"Protocol Specification, Testing, and Verification V","author":"Brinksma E.","year":"1986"}],"container-title":["Concurrency: Practice and Experience"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/api.wiley.com\/onlinelibrary\/tdm\/v1\/articles\/10.1002%2Fcpe.4330050103","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/onlinelibrary.wiley.com\/doi\/pdf\/10.1002\/cpe.4330050103","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,10,24]],"date-time":"2023-10-24T23:48:21Z","timestamp":1698191301000},"score":1,"resource":{"primary":{"URL":"https:\/\/onlinelibrary.wiley.com\/doi\/10.1002\/cpe.4330050103"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[1993,2]]},"references-count":53,"journal-issue":{"issue":"1","published-print":{"date-parts":[[1993,2]]}},"alternative-id":["10.1002\/cpe.4330050103"],"URL":"https:\/\/doi.org\/10.1002\/cpe.4330050103","archive":["Portico"],"relation":{},"ISSN":["1040-3108","1096-9128"],"issn-type":[{"value":"1040-3108","type":"print"},{"value":"1096-9128","type":"electronic"}],"subject":[],"published":{"date-parts":[[1993,2]]}}}