{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,5,21]],"date-time":"2025-05-21T06:54:09Z","timestamp":1747810449492},"reference-count":30,"publisher":"Elsevier BV","issue":"12","license":[{"start":{"date-parts":[[2002,12,1]],"date-time":"2002-12-01T00:00:00Z","timestamp":1038700800000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.elsevier.com\/tdm\/userlicense\/1.0\/"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Parallel Computing"],"published-print":{"date-parts":[[2002,12]]},"DOI":"10.1016\/s0167-8191(02)00190-4","type":"journal-article","created":{"date-parts":[[2002,12,2]],"date-time":"2002-12-02T21:07:09Z","timestamp":1038863229000},"page":"1663-1683","source":"Crossref","is-referenced-by-count":50,"title":["From patterns to frameworks to parallel programs"],"prefix":"10.1016","volume":"28","author":[{"given":"S.","family":"MacDonald","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"J.","family":"Anvik","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"S.","family":"Bromling","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"J.","family":"Schaeffer","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"D.","family":"Szafron","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"K.","family":"Tan","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"78","reference":[{"key":"10.1016\/S0167-8191(02)00190-4_BIB1","doi-asserted-by":"crossref","unstructured":"J. Anvik, S. MacDonald, D. Szafron, J. Schaeffer, S. Bromling, K. Tan, Generating parallel programs from the wavefront design pattern, in: Proceedings of 7th International Workshop on High-Level Parallel Programming Models and Supportive Environments, 2002","DOI":"10.1109\/IPDPS.2002.1016487"},{"issue":"3","key":"10.1016\/S0167-8191(02)00190-4_BIB2","doi-asserted-by":"crossref","first-page":"225","DOI":"10.1002\/cpe.4330070305","article-title":"P3L: a structured high level parallel language and its structured support","volume":"7","author":"Bacci","year":"1995","journal-title":"Concurrency: Practice and Experience"},{"key":"10.1016\/S0167-8191(02)00190-4_BIB3","unstructured":"S. Bromling, Meta-programming with parallel design patterns, Master\u2019s thesis, Department of Computing Science, University of Alberta, 2001"},{"issue":"2","key":"10.1016\/S0167-8191(02)00190-4_BIB4","doi-asserted-by":"crossref","first-page":"151","DOI":"10.1147\/sj.352.0151","article-title":"Automatic code generation from design patterns","volume":"35","author":"Budinsky","year":"1996","journal-title":"IBM Systems Journal"},{"key":"10.1016\/S0167-8191(02)00190-4_BIB5","series-title":"An Introduction to Parallel Programming","author":"Chandy","year":"1992"},{"key":"10.1016\/S0167-8191(02)00190-4_BIB6","series-title":"Algorithmic Skeletons: A Structured Approach to the Management of Parallel Computation","author":"Cole","year":"1988"},{"key":"10.1016\/S0167-8191(02)00190-4_BIB7","series-title":"Designing and Building Parallel Programs","author":"Foster","year":"1995"},{"key":"10.1016\/S0167-8191(02)00190-4_BIB8","series-title":"Design Patterns: Elements of Reusable Object-Oriented Software","author":"Gamma","year":"1994"},{"key":"10.1016\/S0167-8191(02)00190-4_BIB9","doi-asserted-by":"crossref","unstructured":"D. Goswami, A. Singh, B. Priess, Using object-oriented techniques for realizing parallel architectural skeletons, in: Proceedings of the Third International Scientific Computing in Object-Oriented Parallel Environments Conference, vol. 1732 of Lecture Notes in Computer Science, Springer-Verlag, 1999, pp. 130\u2013141","DOI":"10.1007\/10704054_14"},{"issue":"10","key":"10.1016\/S0167-8191(02)00190-4_BIB10","doi-asserted-by":"crossref","first-page":"39","DOI":"10.1145\/262793.262799","article-title":"Frameworks = (components + patterns)","volume":"40","author":"Johnson","year":"1997","journal-title":"CACM"},{"key":"10.1016\/S0167-8191(02)00190-4_BIB11","series-title":"Pattern Languages of Program Design 2","first-page":"483","article-title":"Active object: an object behavioral pattern for concurrent programming","author":"Lavender","year":"1996"},{"key":"10.1016\/S0167-8191(02)00190-4_BIB12","series-title":"Concurrent Programming in Java: Design Principles and Patterns","author":"Lea","year":"1999"},{"key":"10.1016\/S0167-8191(02)00190-4_BIB13","doi-asserted-by":"crossref","unstructured":"S. MacDonald, From patterns to frameworks to parallel programs, PhD Thesis, Department of Computing Science, University of Alberta, 2002","DOI":"10.1016\/S0167-8191(02)00190-4"},{"key":"10.1016\/S0167-8191(02)00190-4_BIB14","unstructured":"S. MacDonald, D. Szafron, J. Schaeffer, Object-oriented pattern-based parallel programming with automatically generated frameworks, in: Proceedings of the 5th USENIX Conference on Object-Oriented Technology and Systems, 1999, pp. 29\u201343"},{"key":"10.1016\/S0167-8191(02)00190-4_BIB15","doi-asserted-by":"crossref","unstructured":"S. MacDonald, D. Szafron, J. Schaeffer, S. Bromling, Generating parallel program frameworks from parallel design patterns, in: Proceedings of the 6th International Euro-Par Conference, vol. 1900 of Lecture Notes in Computer Science, Springer-Verlag, 2000, pp. 95\u2013104","DOI":"10.1007\/3-540-44520-X_13"},{"key":"10.1016\/S0167-8191(02)00190-4_BIB16","unstructured":"B. Massingill, T. Mattson, B. Sanders, Patterns for parallel application programs, in: Proceedings of the Sixth Pattern Languages of Programs Workshop, 1999, Proceedings available at http:\/\/st-www.cs.uiuc.edu\/\u223cplop\/plop99\/proceedings\/"},{"key":"10.1016\/S0167-8191(02)00190-4_BIB17","doi-asserted-by":"crossref","unstructured":"F. Matthijs, W. Joosen, B. Robben, B. Vanhaute, P. Verbaeten. Multi-level patterns, in: Object-Oriented Technology (ECOOP\u201997 Workshop Reader), vol. 1357 of Lecture Notes in Computer Science, Springer-Verlag, 1998, pp. 112\u2013115","DOI":"10.1007\/3-540-69687-3_22"},{"issue":"3","key":"10.1016\/S0167-8191(02)00190-4_BIB18","doi-asserted-by":"crossref","first-page":"85","DOI":"10.1109\/88.242459","article-title":"The Enterprise model for developing distributed applications","volume":"1","author":"Schaeffer","year":"1993","journal-title":"IEEE Parallel and Distributed Technology"},{"key":"10.1016\/S0167-8191(02)00190-4_BIB19","unstructured":"D. Schmidt, The ADAPTIVE communication environment: object-oriented network programming components for developing client\/server applications, in: Proceedings of the 12th Sun Users Group Conference, 1994"},{"key":"10.1016\/S0167-8191(02)00190-4_BIB20","volume":"vol. 2","author":"Schmidt","year":"2000"},{"key":"10.1016\/S0167-8191(02)00190-4_BIB21","doi-asserted-by":"crossref","unstructured":"M. Sefika, A. Sane, R. Campbell. Monitoring compliance of a software system with its high-level design models, in: Proceedings of the 18th International Conference on Software Engineering, 1996, pp. 387\u2013396","DOI":"10.1109\/ICSE.1996.493433"},{"issue":"1","key":"10.1016\/S0167-8191(02)00190-4_BIB22","doi-asserted-by":"crossref","first-page":"52","DOI":"10.1109\/71.80189","article-title":"A template-based approach to the generation of distributed applications using a network of workstations","volume":"2","author":"Singh","year":"1991","journal-title":"IEEE Transactions on Parallel and Distributed Systems"},{"issue":"2","key":"10.1016\/S0167-8191(02)00190-4_BIB23","doi-asserted-by":"crossref","first-page":"91","DOI":"10.1002\/(SICI)1096-9128(199802)10:2<91::AID-CPE290>3.0.CO;2-G","article-title":"Experience with parallel programming using code templates","volume":"10","author":"Singh","year":"1998","journal-title":"Concurrency: Practice and Experience"},{"key":"10.1016\/S0167-8191(02)00190-4_BIB24","unstructured":"S. Siu, M. De Simone, D. Goswami, A. Singh, Design patterns for parallel programming, in: Proceedings of the 1996 International Conference on Parallel and Distributed Processing Techniques and Applications, 1996, pp. 230\u2013240"},{"key":"10.1016\/S0167-8191(02)00190-4_BIB25","series-title":"MPI: The Complete Reference","author":"Snir","year":"1996"},{"issue":"2","key":"10.1016\/S0167-8191(02)00190-4_BIB26","doi-asserted-by":"crossref","first-page":"147","DOI":"10.1002\/(SICI)1096-9128(199603)8:2<147::AID-CPE199>3.0.CO;2-O","article-title":"An experiment to measure the usability of parallel programming systems","volume":"8","author":"Szafron","year":"1996","journal-title":"Concurrency: Practice and Experience"},{"key":"10.1016\/S0167-8191(02)00190-4_BIB27","unstructured":"L. Tahvildari, A. Singh, Impact of using pattern-based systems on the qualities of parallel applications, in: Proceedings of the 2000 International Conference on Parallel and Distributed Processing Techniques and Applications, 2000, pp. 1713\u20131719"},{"key":"10.1016\/S0167-8191(02)00190-4_BIB28","doi-asserted-by":"crossref","unstructured":"G. Wilson, Assessing the usability of parallel programming systems: the Cowichan problems, in: Proceedings of the IFIP Working Conference on Programming Environments for Massively Parallel Distributed Systems, 1994, pp. 183\u2013193","DOI":"10.1007\/978-3-0348-8534-8_18"},{"issue":"3","key":"10.1016\/S0167-8191(02)00190-4_BIB29","doi-asserted-by":"crossref","first-page":"36","DOI":"10.1109\/88.532138","article-title":"Using the Cowichan problems to assess the usability of Orca","volume":"4","author":"Wilson","year":"1996","journal-title":"IEEE Parallel and Distributed Technology"},{"issue":"4","key":"10.1016\/S0167-8191(02)00190-4_BIB30","doi-asserted-by":"crossref","first-page":"299","DOI":"10.1145\/127719.122750","article-title":"Reaction\u2013diffusion textures","volume":"25","author":"Witkin","year":"1991","journal-title":"Computer Graphics (SIGGRAPH \u201991 Proceedings)"}],"container-title":["Parallel Computing"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/api.elsevier.com\/content\/article\/PII:S0167819102001904?httpAccept=text\/xml","content-type":"text\/xml","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/api.elsevier.com\/content\/article\/PII:S0167819102001904?httpAccept=text\/plain","content-type":"text\/plain","content-version":"vor","intended-application":"text-mining"}],"deposited":{"date-parts":[[2019,4,2]],"date-time":"2019-04-02T14:27:57Z","timestamp":1554215277000},"score":1,"resource":{"primary":{"URL":"https:\/\/linkinghub.elsevier.com\/retrieve\/pii\/S0167819102001904"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2002,12]]},"references-count":30,"journal-issue":{"issue":"12","published-print":{"date-parts":[[2002,12]]}},"alternative-id":["S0167819102001904"],"URL":"https:\/\/doi.org\/10.1016\/s0167-8191(02)00190-4","relation":{},"ISSN":["0167-8191"],"issn-type":[{"value":"0167-8191","type":"print"}],"subject":[],"published":{"date-parts":[[2002,12]]}}}