{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,6,4]],"date-time":"2026-06-04T03:32:00Z","timestamp":1780543920847,"version":"3.54.1"},"reference-count":45,"publisher":"Springer Science and Business Media LLC","issue":"4","license":[{"start":{"date-parts":[[2006,7,19]],"date-time":"2006-07-19T00:00:00Z","timestamp":1153267200000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Int J Parallel Prog"],"published-print":{"date-parts":[[2006,8]]},"DOI":"10.1007\/s10766-006-0018-x","type":"journal-article","created":{"date-parts":[[2006,7,18]],"date-time":"2006-07-18T20:26:44Z","timestamp":1153254404000},"page":"383-427","source":"Crossref","is-referenced-by-count":91,"title":["SAC\u2014A Functional Array Language for Efficient Multi-threaded Execution"],"prefix":"10.1007","volume":"34","author":[{"given":"Clemens","family":"Grelck","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Sven-Bodo","family":"Scholz","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"297","published-online":{"date-parts":[[2006,7,19]]},"reference":[{"key":"18_CR1","unstructured":"High Performance Fortran Forum: High Performance Fortran Language Specification V2.0. (1997)."},{"key":"18_CR2","doi-asserted-by":"crossref","first-page":"197","DOI":"10.1109\/32.842947","volume":"26","author":"B. Chamberlain","year":"2000","unstructured":"Chamberlain B., Choi S.E., Lewis E., Lin C., Snyder L., Weathersby W(2000) ZPL: A Machine Independent Programming Language for Parallel Computers. IEEE Transactions on Software Engineering 26:197\u2013211","journal-title":"IEEE Transactions on Software Engineering"},{"key":"18_CR3","doi-asserted-by":"crossref","first-page":"81","DOI":"10.1145\/135226.135231","volume":"35","author":"D. Cann","year":"1992","unstructured":"Cann D.(1992) Retire Fortran? A Debate Rekindled. Communications of the ACM, 35:81\u201389","journal-title":"Communications of the ACM,"},{"key":"18_CR4","doi-asserted-by":"crossref","first-page":"46","DOI":"10.1109\/99.660313","volume":"5","author":"L. Dagum","year":"1998","unstructured":"Dagum L., Menon R.(1998) OpenMP: An Industry-Standard API for Shared-Memory Programming. IEEE Transactions on Computational Science and Engineering, 5:46\u201355","journal-title":"IEEE Transactions on Computational Science and Engineering,"},{"key":"18_CR5","volume-title":"Supercompilers for Parallel and Vector Computers","author":"H. Zima","year":"1991","unstructured":"Zima H., Chapman B.(1991). Supercompilers for Parallel and Vector Computers. Addison-Wesley, Reading, Massachusetts, USA"},{"key":"18_CR6","volume-title":"High-Performance Compilers for Parallel Computing","author":"M. Wolfe","year":"1995","unstructured":"Wolfe M. (1995). High-Performance Compilers for Parallel Computing. Addison-Wesley, Reading, Massachusetts, USA"},{"key":"18_CR7","doi-asserted-by":"crossref","unstructured":"R. Saavedra, W. Mao, D. Park, J. Chame, and S. Moon, The Combined Effectiveness of Unimodular Transformations, Tiling, and Software Prefetching, In Proceedings of the 10th International Parallel Processing Symposium (IPPS\u201996), Honolulu, Hawaii, USA, pp. 39\u201345 (1996).","DOI":"10.1109\/IPPS.1996.508037"},{"key":"18_CR8","doi-asserted-by":"crossref","unstructured":"Chamberlain B., Lewis E., Lin C., Snyder L.(1999) Regions: An Abstraction for Expressing Array Computation. In: Levefre O(eds). Proceedings of the International Conference on Array Processing Languages (APL\u201999). Scranton, Pennsylvania, USA. Volume 29 of APL Quote Quad., ACM Press pp. 41\u201349","DOI":"10.1145\/312627.312713"},{"key":"18_CR9","unstructured":"R. Allen, and K. Kennedy, Optimizing Compilers for Modern Architectures. Morgan Kaufmann Publishers (2001)."},{"key":"18_CR10","unstructured":"H. Zima, High-Level Programming Support for HPC \u2013 The Tradeoff between Elegance and Performance In Proceedings of the 19th International Supercomputer Conference (ISC\u201901), Heidelberg, Germany (2001)."},{"key":"18_CR11","volume-title":"Haskell 98 Language and Libraries","author":"S.P. Jones","year":"2003","unstructured":"Jones S.P.(2003). Haskell 98 Language and Libraries. Cambridge University Press, Cambridge UK"},{"key":"18_CR12","volume-title":"Concurrent Clean 2.0 Language Report","author":"M. Plasmeijer","year":"2001","unstructured":"Plasmeijer M., van Eekelen M.(2001). Concurrent Clean 2.0 Language Report. University of Nijmegen, The Netherlands"},{"key":"18_CR13","first-page":"105","volume-title":"Proceedings of the 8th :International Workshop on Implementation of Functional Languages (IFL\u201996), Bonn, Germany, Selected Papers, Volume 1268 of Lecture Notes in Computer Science.","author":"J. Groningen van","year":"1997","unstructured":"van Groningen J.(1997). The Implementation and Efficiency of Arrays in Clean 1.1, In: Kluge W.(eds). Proceedings of the 8th :International Workshop on Implementation of Functional Languages (IFL\u201996), Bonn, Germany, Selected Papers, Volume 1268 of Lecture Notes in Computer Science. Springer-Verlag, Berlin Germany, pp. 105\u2013124"},{"key":"18_CR14","doi-asserted-by":"crossref","unstructured":"P. Serrarens, Implementing the Conjugate Gradient Algorithm in a Functional Language, In W. Kluge (ed.), Proceedings of the 8th International Workshop on of Functional Languages (IFL\u201996), Bonn, Germany, Selected Papers, Volume 1268 of Lecture Notes in Computer Science, Springer-Verlag, Berlin, Germany pp. 125\u2013140 (1997).","DOI":"10.1007\/3-540-63237-9_22"},{"key":"18_CR15","unstructured":"T. Z\u00f6rner, Numerical Analysis and Functional Programming, In K. Hammond, T. Davie, and C. Clack (eds.), Proceedings of the 10th International Workshop on Implementation of Functional Languages (IFL\u201998), London, UK, University College, London, UK, pp. 27\u201348 (1998)."},{"key":"18_CR16","doi-asserted-by":"crossref","unstructured":"M. M. Chakravarty, and G. Keller, An Approach to Fast Arrays in Haskell, In J. Jeuring, and S. P. Jones (eds.), Summer School and Workshop on Advanced Functional Programming, Oxford, England, UK, (2002), Volume 2638 of Lecture Notes in Computer Science, Springer-Verlag, Berlin, Germany pp. 27\u201358 (2003).","DOI":"10.1007\/978-3-540-44833-4_2"},{"key":"18_CR17","doi-asserted-by":"crossref","unstructured":"P. Hartel, and K. Langendoen, Benchmarking Implementations of Lazy Functional Languages, In Proceedings of the Conference on Functional Programming Languages and Computer Architecture (FPCA\u201993), Copenhagen, Denmark, ACM Press, New york, pp. 341\u2013349 (1993).","DOI":"10.1145\/165180.165230"},{"key":"18_CR18","doi-asserted-by":"crossref","first-page":"621","DOI":"10.1017\/S0956796800001891","volume":"6","author":"P. Hartel","year":"1996","unstructured":"Hartel P. et\u00a0al (1996) Benchmarking Implementations of Functional Languages with \u201cPseudo- knot\u201d, a Float-Intensive Benchmark. Journal of Functional Programming 6:621\u2013655","journal-title":"Journal of Functional Programming"},{"key":"18_CR19","doi-asserted-by":"crossref","first-page":"103","DOI":"10.1017\/S0956796897002621","volume":"7","author":"J. Hammes","year":"1997","unstructured":"Hammes J., Sur S., \u00f6hm W.B(1997) On the Effectiveness of Functional Language Features: NAS Benchmark FT. Journal of Functional Programming 7:103\u2013123","journal-title":"Journal of Functional Programming"},{"key":"18_CR20","doi-asserted-by":"crossref","unstructured":"P. Hudak, and A. Bloss, The Aggregate Update Problem in Functional Programming Systems, In Proceedings of the 12th ACM Symposium on Principles of Programming Languages (POPL\u201985), New Orleans, Louisiana, USA, ACM Press, New York, pp. 300\u2013313 (1985).","DOI":"10.1145\/318593.318660"},{"key":"18_CR21","doi-asserted-by":"crossref","unstructured":"E. Barendsen, and S. Smetsers, Uniqueness Type Inference, In M. Hermenegildo, and S. Swierstra (eds.), Proceedings of the 7th International Symposium on Programming Language Implementation and Logic Programming (PLILP\u201995), Utrecht, The Netherlands, Volume 982 of Lecture Notes in Computer Science., Springer-Verlag, Berlin, Germany, pp. 189\u2013206 (1995).","DOI":"10.1007\/BFb0026821"},{"key":"18_CR22","doi-asserted-by":"crossref","unstructured":"P. Wadler, The Essence of Functional Programming, In Proceedings of the 19th ACM Symposium on Principles of Programming Languages (POPL\u201992), Albuquerque, New Mexico, USA, ACM Press, New York, pp. 1\u201314 (1992).","DOI":"10.1145\/143165.143169"},{"key":"18_CR23","volume-title":"The Definition of Standard ML","author":"R. Milner","year":"1990","unstructured":"Milner R., Tofte M., Harper R.(1990). The Definition of Standard ML. MIT Press, Cambridge, Massachusetts, USA"},{"key":"18_CR24","doi-asserted-by":"crossref","first-page":"324","DOI":"10.1147\/rd.174.0324","volume":"17","author":"A. Falkoff","year":"1973","unstructured":"Falkoff A., Iverson K.(1973) The Design of APL. IBM Journal of Research and Development 17:324\u2013334","journal-title":"IBM Journal of Research and Development"},{"key":"18_CR25","doi-asserted-by":"crossref","first-page":"1005","DOI":"10.1017\/S0956796802004458","volume":"13","author":"S.B. Scholz","year":"2003","unstructured":"Scholz S.B.(2003) Single Assignment C\u2014Efficient Support for High-Level Array Operations in a Functional Setting. Journal of Functional Programming 13:1005\u20131059","journal-title":"Journal of Functional Programming"},{"key":"18_CR26","doi-asserted-by":"crossref","first-page":"111","DOI":"10.1002\/spe.4380190203","volume":"19","author":"M. Jenkins","year":"1989","unstructured":"Jenkins M.(1989) Q\u2019Nial: A Portable Interpreter for the Nested Interactive Array Language Nial. Software Practice and Experience 19:111\u2013126","journal-title":"Software Practice and Experience"},{"key":"18_CR27","volume-title":"Programming in J. Iverson Software Inc.,","author":"K. Iverson","year":"1991","unstructured":"Iverson K.(1991). Programming in J. Iverson Software Inc., Toronto, Canada"},{"key":"18_CR28","unstructured":"S. B. Scholz, A Case Study: Effects of WITH-Loop Folding on the NAS Benchmark MG in SAC, In K. Hammond, T. Davie, and C. Clack (eds.), Proceedings of the 10th International Workshop on Implementation of Functional Languages (IFL\u201998), London, UK, Selected Papers, Volume 1595 of Lecture Notes in Computer Science, Springer-Verlag, Berlin, Germany, pp. 216\u2013228 (1999)."},{"key":"18_CR29","unstructured":"C. Grelck, S. B. Scholz, and K. Trojahner, With-Loop Scalarization: Merging Nested Array Operations, In P. Trinder, G. Michaelson (eds.), Proceedings of the 15th International Workshop on Implementation of Functional Languages (IFL\u201903), Edinburgh, Scotland, UK, Revised Selected Papers, Volume 3145 of Lecture Notes in Computer , Springer-Verlag, Berlin, Germany (2004)."},{"key":"18_CR30","doi-asserted-by":"crossref","unstructured":"C. Grelck, K. Hinckfu\u00df, S. B. Scholz, With-Loop Fusion for Data Locality and Parallelism, In A. Butterfield (ed.), Implementation and Application of Functional Languages, 17th International Workshop (IFL\u201905), Dublin, Ireland. Volume 4015 of Lecture Notes in Computer Science, Springer-Verlag, Berlin, Germany (2006).","DOI":"10.1007\/11964681_11"},{"key":"18_CR31","doi-asserted-by":"crossref","unstructured":"C. Grelck, Shared Memory Multiprocessor Support for SAC, In K. Hammond, T. Davie, and C. Clack (eds.), Proceedings of the 10th International Workshop on Implementation of Functional Languages (IFL\u201998), London, UK, Selected Papers, Volume 1595 of Lecture Notes in Computer Science, Springer-Verlag, Berlin, Germany, pp. 38\u201354 (1999).","DOI":"10.1007\/3-540-48515-5_3"},{"key":"18_CR32","unstructured":"C. Grelck, A Multithreaded Compiler Backend for High-Level Array Programming, In M. Hamza (ed.), Proceedings of the 21st International Multi-Conference on Applied Informatics (AI\u201903), Part II: International Conference on Parallel and Distributed Computing and Networks (PDCN\u201903), Innsbruck, Austria, ACTA Press, Anaheim, California, USA, pp. 478\u2013484 (2003)."},{"key":"18_CR33","doi-asserted-by":"crossref","first-page":"353","DOI":"10.1017\/S0956796805005538","volume":"15","author":"C. Grelck","year":"2005","unstructured":"Grelck C.(2005) Shared Memory Multiprocessor Support for Functional Array Processing in SAC. Journal of Functional Programming 15:353\u2013401","journal-title":"Journal of Functional Programming"},{"key":"18_CR34","doi-asserted-by":"crossref","unstructured":"C. Grelck, and S. B. Scholz, HPF vs. SAC\u2014A Case Study, In A. Bode, T. Ludwig, W. Karl, and R. Wism\u00fcller (eds.), Proceedings of the 6th European Conference on Parallel Processing (Euro-Par\u201900), Munich, Germany, Volume 1900 of Lecture Notes in Computer Science, Springer-Verlag, Berlin, Germany, pp. 620\u2013624 (2000).","DOI":"10.1007\/3-540-44520-X_87"},{"key":"18_CR35","doi-asserted-by":"crossref","first-page":"230","DOI":"10.1007\/978-3-540-45145-7_20","volume-title":"Proceedings of the 7th International Conference on Parallel Computing Technologies (PaCT\u201903)","author":"C. Grelck","year":"2003","unstructured":"Grelck C., Scholz S.B.(2003) Towards an Efficient Functional Implementation of the NAS Benchmark FT. In: Malyshkin V.(eds). Proceedings of the 7th International Conference on Parallel Computing Technologies (PaCT\u201903). Springer-Verlag, Berlin Germany pp. 230\u2013235"},{"key":"18_CR36","doi-asserted-by":"crossref","unstructured":"A. Shafarenko, S. B. Scholz, S. Herhut, C. Grelck, and K. Trojahner, Implementing a Numerical Solution for the KPI Equation using Single Assignment C: Lessons and Experience, In A. Butterfield, (ed.), Implementation and Application of Functional Languages, 17th International Workshop (IFL\u201905), Dublin, Ireland. Volume 4015 of Lecture Notes in Computer Science, Springer-Verlag, Berlin, Germany (2006).","DOI":"10.1007\/11964681_10"},{"key":"18_CR37","unstructured":"H. Barendregt, The Lambda Calculus, Its Syntax and Semantics, Volume 103 of Studies in Logics and the Foundations of Mathematics. North Holland, Amsterdam, The Netherlands (1981)."},{"key":"18_CR38","volume-title":"Compilation Techniques for High Performance Applicative Computation. Technical Report CS-89-108","author":"D.C. Cann","year":"1989","unstructured":"Cann D.C.(1989). Compilation Techniques for High Performance Applicative Computation. Technical Report CS-89-108. Lawrence Livermore National Laboratory, Livermore, California, USA"},{"key":"18_CR39","unstructured":"C. Grelck, and K. Trojahner, Implicit Memory Management for SaC, In C. Grelck, and F. Huch (eds.), Implementation and Application of Functional Languages, 16th International Workshop, IFL\u201904, University of Kiel, pp. 335\u2013348 (2004)."},{"key":"18_CR40","volume-title":"Array Theory and NIAL. Technical Report 157","author":"M. Jenkins","year":"1999","unstructured":"Jenkins M., Falster P. (1999). Array Theory and NIAL. Technical Report 157. Technical University of Denmark, ELTEK, Lyngby, Denmark"},{"key":"18_CR41","doi-asserted-by":"crossref","first-page":"17","DOI":"10.1145\/278283.278285","volume":"33","author":"A. Appel","year":"1998","unstructured":"Appel A.(1998) SSA is Functional Programming. ACM SIGPLAN Notices 33:17\u201320","journal-title":"ACM SIGPLAN Notices"},{"key":"18_CR42","doi-asserted-by":"crossref","first-page":"77","DOI":"10.1007\/10722298_5","volume-title":"Proceedings of the 11th International Workshop on Implementation of Functional Languages (IFL\u201999).","author":"C. Grelck","year":"2000","unstructured":"Grelck C., Kreye D., Scholz S.B. (2000) On Code Generation for Multi-Generator WITH-Loops in SAC. In: Koopman P., Clack C. (eds). Proceedings of the 11th International Workshop on Implementation of Functional Languages (IFL\u201999). Lochem, The Netherlands, pp. 77\u201394"},{"key":"18_CR43","doi-asserted-by":"crossref","first-page":"81","DOI":"10.1017\/S0956796800001258","volume":"5","author":"P. Achten","year":"1995","unstructured":"Achten P., Plasmeijer M. (1995) The Ins and Outs of Clean I\/O. Journal of Functional Programming 5:81\u2013110","journal-title":"Journal of Functional Programming"},{"key":"18_CR44","first-page":"30","volume-title":"Proceedings of the 7th International Workshop on Implementation of Functional Languages (IFL\u201995).","author":"C. Grelck","year":"1995","unstructured":"Grelck C., Scholz S.B.(1995) Classes and Objects as Basis for I\/O in SAC. In: Johnsson T. (eds). Proceedings of the 7th International Workshop on Implementation of Functional Languages (IFL\u201995). Chalmers University of Technology, Sweden, pp. 30\u201344"},{"key":"18_CR45","doi-asserted-by":"crossref","first-page":"36","DOI":"10.1007\/3-540-46028-4_3","volume-title":"Proceedings of the 13th International Workshop on Implementation of Functional Languages (IFL\u201901).","author":"C. Grelck","year":"2002","unstructured":"Grelck C.(2002) Optimizations on Array Skeletons in a Shared Memory Environment. In: Arts T., Mohnen M. (eds). Proceedings of the 13th International Workshop on Implementation of Functional Languages (IFL\u201901). Springer-Verlag, Berlin,zGermany, pp. 36\u201354"}],"container-title":["International Journal of Parallel Programming"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s10766-006-0018-x.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/article\/10.1007\/s10766-006-0018-x\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s10766-006-0018-x","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,5,30]],"date-time":"2019-05-30T23:59:25Z","timestamp":1559260765000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/s10766-006-0018-x"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2006,7,19]]},"references-count":45,"journal-issue":{"issue":"4","published-print":{"date-parts":[[2006,8]]}},"alternative-id":["18"],"URL":"https:\/\/doi.org\/10.1007\/s10766-006-0018-x","relation":{},"ISSN":["0885-7458","1573-7640"],"issn-type":[{"value":"0885-7458","type":"print"},{"value":"1573-7640","type":"electronic"}],"subject":[],"published":{"date-parts":[[2006,7,19]]}}}