{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,3,26]],"date-time":"2025-03-26T23:53:55Z","timestamp":1743033235851,"version":"3.40.3"},"publisher-location":"Berlin, Heidelberg","reference-count":45,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"type":"print","value":"9783642176845"},{"type":"electronic","value":"9783642176852"}],"license":[{"start":{"date-parts":[[2010,1,1]],"date-time":"2010-01-01T00:00:00Z","timestamp":1262304000000},"content-version":"unspecified","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2010]]},"DOI":"10.1007\/978-3-642-17685-2_4","type":"book-chapter","created":{"date-parts":[[2010,12,6]],"date-time":"2010-12-06T06:19:35Z","timestamp":1291616375000},"page":"94-145","source":"Crossref","is-referenced-by-count":1,"title":["Programming in Manticore, a Heterogenous Parallel Functional Language"],"prefix":"10.1007","author":[{"given":"Matthew","family":"Fluet","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Lars","family":"Bergstrom","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Nic","family":"Ford","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Mike","family":"Rainey","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"John","family":"Reppy","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Adam","family":"Shaw","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Yingqi","family":"Xiao","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","reference":[{"key":"4_CR1","volume-title":"Concurrent programming in ERLANG","author":"J. Armstrong","year":"1996","unstructured":"Armstrong, J., Virding, R., Wikstr\u00f6m, C., Williams, M.: Concurrent programming in ERLANG, 2nd edn. Prentice Hall International (UK) Ltd., Hertfordshire (1996)","edition":"2"},{"key":"4_CR2","unstructured":"Barton, R., Adkins, D., Prokop, H., Frigo, M., Joerg, C., Renard, M., Dailey, D., Leiserson, C.: Cilk Pousse(1998), http:\/\/people.csail.mit.edu\/pousse\/ (viewed on March 20, at 2:45 PM)"},{"issue":"3","key":"4_CR3","doi-asserted-by":"publisher","first-page":"85","DOI":"10.1145\/227234.227246","volume":"39","author":"G.E. Blelloch","year":"1996","unstructured":"Blelloch, G.E.: Programming parallel algorithms. Communications of the ACM\u00a039(3), 85\u201397 (1996)","journal-title":"Communications of the ACM"},{"issue":"1","key":"4_CR4","doi-asserted-by":"publisher","first-page":"4","DOI":"10.1006\/jpdc.1994.1038","volume":"21","author":"G.E. Blelloch","year":"1994","unstructured":"Blelloch, G.E., Chatterjee, S., Hardwick, J.C., Sipelstein, J., Zagha, M.: Implementation of a portable nested data-parallel language. Journal of Parallel and Distributed Computing\u00a021(1), 4\u201314 (1994)","journal-title":"Journal of Parallel and Distributed Computing"},{"key":"4_CR5","first-page":"213","volume-title":"Proceedings of the 1996 ACM SIGPLAN International Conference on Functional Programming","author":"G.E. Blelloch","year":"1996","unstructured":"Blelloch, G.E., Greiner, J.: A provable time and space efficient implementation of NESL. In: Proceedings of the 1996 ACM SIGPLAN International Conference on Functional Programming, pp. 213\u2013225. ACM, New York (1996)"},{"issue":"5","key":"4_CR6","doi-asserted-by":"publisher","first-page":"720","DOI":"10.1145\/324133.324234","volume":"46","author":"R.D. Blumofe","year":"1999","unstructured":"Blumofe, R.D., Leiserson, C.E.: Scheduling multithreaded computations by work stealing. Journal of the ACM\u00a046(5), 720\u2013748 (1999)","journal-title":"Journal of the ACM"},{"issue":"2","key":"4_CR7","doi-asserted-by":"publisher","first-page":"233","DOI":"10.1145\/201059.201065","volume":"17","author":"M. Carlisle","year":"1995","unstructured":"Carlisle, M., Hendren, L.J., Rogers, A., Reppy, J.: Supporting SPMD execution for dynamic data structures. ACM Transactions on Programming Languages and Systems\u00a017(2), 233\u2013263 (1995)","journal-title":"ACM Transactions on Programming Languages and Systems"},{"key":"4_CR8","doi-asserted-by":"publisher","first-page":"94","DOI":"10.1145\/351240.351249","volume-title":"Proceedings of the Fifth ACM SIGPLAN International Conference on Functional Programming","author":"M.M.T. Chakravarty","year":"2000","unstructured":"Chakravarty, M.M.T., Keller, G.: More types for nested data parallel programming. In: Proceedings of the Fifth ACM SIGPLAN International Conference on Functional Programming, pp. 94\u2013105. ACM, New York (2000)"},{"key":"4_CR9","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"524","DOI":"10.1007\/3-540-44681-8_76","volume-title":"Euro-Par 2001 Parallel Processing","author":"M.M.T. Chakravarty","year":"2001","unstructured":"Chakravarty, M.M.T., Keller, G., Leshchinskiy, R., Pfannenstiel, W.: Nepal \u2013 Nested Data Parallelism in Haskell. In: Sakellariou, R., Keane, J.A., Gurd, J.R., Freeman, L. (eds.) Euro-Par 2001. LNCS, vol.\u00a02150, pp. 524\u2013534. Springer, Heidelberg (2001)"},{"key":"4_CR10","volume-title":"Proceedings of the ACM SIGPLAN Workshop on Declarative Aspects of Multicore Programming","author":"M.M.T. Chakravarty","year":"2008","unstructured":"Chakravarty, M.M.T., Leshchinskiy, R., Peyton Jones, S., Keller, G.: Partial Vectorisation of Haskell Programs. In: Proceedings of the ACM SIGPLAN Workshop on Declarative Aspects of Multicore Programming, ACM, New York (2008)"},{"key":"4_CR11","first-page":"10","volume-title":"Proceedings of the ACM SIGPLAN Workshop on Declarative Aspects of Multicore Programming","author":"M.M.T. Chakravarty","year":"2007","unstructured":"Chakravarty, M.M.T., Leshchinskiy, R., Peyton Jones, S., Keller, G., Marlow, S.: Data Parallel Haskell: A status report. In: Proceedings of the ACM SIGPLAN Workshop on Declarative Aspects of Multicore Programming, pp. 10\u201318. ACM, New York (2007)"},{"key":"4_CR12","unstructured":"Dailey, D., Leiserson, C.E.: Using Cilk to write multiprocessor chess programs. The Journal of the International Computer Chess Association (2002)"},{"key":"4_CR13","unstructured":"Dean, J., Ghemawat, S.: MapReduce: Simplified data processing on large clusters. In: Proceedings of the Sixth Symposium on Operating Systems Design and Implementation, pp. 137\u2013150 (December 2004)"},{"key":"4_CR14","unstructured":"Demaine, E.D.: Higher-order concurrency in Java. In: Proceedings of the Parallel Programming and Java Conference (WoTUG20)., pp. 34\u201347 (April 1997), http:\/\/theory.csail.mit.edu\/~edemaine\/papers\/WoTUG20\/"},{"key":"4_CR15","doi-asserted-by":"crossref","unstructured":"Flatt, M., Findler, R.B.: Kill-safe synchronization abstractions. In: Proceedings of the SIGPLAN Conference on Programming Language Design and Implementation (PLDI 2004), pp. 47\u201358 (June 2004)","DOI":"10.1145\/996841.996849"},{"key":"4_CR16","doi-asserted-by":"publisher","first-page":"15","DOI":"10.1145\/1292535.1292539","volume-title":"Proceedings of the 2007 ACM SIGPLAN Workshop on ML","author":"M. Fluet","year":"2007","unstructured":"Fluet, M., Ford, N., Rainey, M., Reppy, J., Shaw, A., Xiao, Y.: Status Report: The Manticore Project. In: Proceedings of the 2007 ACM SIGPLAN Workshop on ML, pp. 15\u201324. ACM, New York (2007)"},{"key":"4_CR17","first-page":"37","volume-title":"Proceedings of the ACM SIGPLAN Workshop on Declarative Aspects of Multicore Programming","author":"M. Fluet","year":"2007","unstructured":"Fluet, M., Rainey, M., Reppy, J., Shaw, A., Xiao, Y.: Manticore: A heterogeneous parallel language. In: Proceedings of the ACM SIGPLAN Workshop on Declarative Aspects of Multicore Programming, pp. 37\u201344. ACM, New York (2007)"},{"key":"4_CR18","first-page":"61","volume-title":"A Multi-threaded Higher-order User Interface Toolkit, Software Trends","author":"E.R. Gansner","year":"1993","unstructured":"Gansner, E.R., Reppy, J.H.: A Multi-threaded Higher-order User Interface Toolkit, Software Trends, vol.\u00a01, pp. 61\u201380. John Wiley & Sons, Chichester (1993)"},{"volume-title":"The Standard ML Basis Library","year":"2004","key":"4_CR19","unstructured":"Gansner, E.R., Reppy, J.H. (eds.): The Standard ML Basis Library. Cambridge University Press, Cambridge (2004)"},{"key":"4_CR20","doi-asserted-by":"publisher","first-page":"112","DOI":"10.1109\/AISPAS.1997.581640","volume-title":"Proceedings of the 2nd AIZU International Symposium on Parallel Algorithms \/ Architecture Synthesis (pAs 1997)","author":"J.L. Gaudiot","year":"1997","unstructured":"Gaudiot, J.L., DeBoni, T., Feo, J., Bohm, W., Najjar, W., Miller, P.: The Sisal model of functional programming and its implementation. In: Proceedings of the 2nd AIZU International Symposium on Parallel Algorithms \/ Architecture Synthesis (pAs 1997), pp. 112\u2013123. IEEE Computer Society Press, Los Alamitos (1997)"},{"key":"4_CR21","volume-title":"Parallel SML: a Functional Language and its Implementation in Dactl.","author":"K. Hammond","year":"1991","unstructured":"Hammond, K.: Parallel SML: a Functional Language and its Implementation in Dactl. The MIT Press, Cambridge (1991)"},{"key":"4_CR22","doi-asserted-by":"crossref","unstructured":"Hauser, C., Jacobi, C., Theimer, M., Welch, B., Weiser, M.: Using threads in interactive systems: A case study. In: Proceedings of the 14th ACM Symposium on Operating System Principles, pp. 94\u2013105 (December 1993)","DOI":"10.1145\/168619.168627"},{"key":"4_CR23","unstructured":"Hofstee, H.P.: Cell broadband engine architecture from 20,000 feet (August 2005), http:\/\/www-128.ibm.com\/developerworks\/power\/library\/pa-cbea.html"},{"key":"4_CR24","unstructured":"Jones, M.P., Hudak, P.: Implicit and explicit parallel programming in Haskell. Tech. Rep. Research Report YALEU\/DCS\/RR-982, Yale University (August 1993)"},{"key":"4_CR25","unstructured":"Leroy, X.: The Objective Caml System (release 3.00) (April 2000), http:\/\/caml.inria.fr"},{"issue":"2","key":"4_CR26","doi-asserted-by":"publisher","first-page":"340","DOI":"10.1145\/349214.349230","volume":"22","author":"X. Leroy","year":"2000","unstructured":"Leroy, X., Pessaux, F.: Type-based analysis of uncaught exceptions. ACM Transactions on Programming Languages and Systems\u00a022(2), 340\u2013377 (2000)","journal-title":"ACM Transactions on Programming Languages and Systems"},{"key":"4_CR27","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"920","DOI":"10.1007\/11758525_122","volume-title":"Computational Science \u2013 ICCS 2006","author":"R. Leshchinskiy","year":"2006","unstructured":"Leshchinskiy, R., Chakravarty, M.M.T., Keller, G.: Higher order flattening. In: Alexandrov, V.N., van Albada, G.D., Sloot, P.M.A., Dongarra, J. (eds.) ICCS 2006. LNCS, vol.\u00a03992, pp. 920\u2013928. Springer, Heidelberg (2006)"},{"key":"4_CR28","doi-asserted-by":"publisher","first-page":"33","DOI":"10.1016\/S0049-237X(08)72018-4","volume-title":"Computer Programming and Formal Systems","author":"J. McCarthy","year":"1963","unstructured":"McCarthy, J.: A Basis for a Mathematical Theory of Computation. In: Braffort, P., Hirschberg, D. (eds.) Computer Programming and Formal Systems, pp. 33\u201370. North-Holland, Amsterdam (1963), citeseer.ist.psu.edu\/mccarthy63basis.html"},{"key":"4_CR29","unstructured":"MLton: Concurrent ML, http:\/\/mlton.org\/ConcurrentML"},{"key":"4_CR30","doi-asserted-by":"publisher","first-page":"185","DOI":"10.1145\/91556.91631","volume-title":"Conference record of the 1990 ACM Conference on Lisp and Functional Programming","author":"E. Mohr","year":"1990","unstructured":"Mohr, E., Kranz, D.A., Halstead Jr., R.H.: Lazy task creation: a technique for increasing the granularity of parallel programs. In: Conference record of the 1990 ACM Conference on Lisp and Functional Programming, pp. 185\u2013197. ACM, New York (1990)"},{"key":"4_CR31","volume-title":"ID Language Reference Manual. Laboratory for Computer Science","author":"R.S. Nikhil","year":"1991","unstructured":"Nikhil, R.S.: ID Language Reference Manual. Laboratory for Computer Science. MIT, Cambridge (1991)"},{"key":"4_CR32","volume-title":"Arvind: Implicit Parallel Programming in pH.","author":"R.S. Nikhil","year":"2001","unstructured":"Nikhil, R.S.: Arvind: Implicit Parallel Programming in pH. Morgan Kaufmann Publishers, San Francisco (2001)"},{"key":"4_CR33","doi-asserted-by":"crossref","unstructured":"Olukotun, K., Hammond, L.: The future of microprocessors. ACM Queue\u00a03(7) (September 2005), http:\/\/www.acmqueue.org","DOI":"10.1145\/1095408.1095418"},{"key":"4_CR34","doi-asserted-by":"publisher","first-page":"25","DOI":"10.1145\/301618.301637","volume-title":"Proceedings of the SIGPLAN Conference on Programming Language Design and Implementation (PLDI 1999)","author":"S. Peyton Jones","year":"1999","unstructured":"Peyton Jones, S., Reid, A., Henderson, F., Hoare, T., Marlow, S.: A semantics for imprecise exceptions. In: Proceedings of the SIGPLAN Conference on Programming Language Design and Implementation (PLDI 1999), pp. 25\u201336. ACM, New York (1999)"},{"issue":"2","key":"4_CR35","doi-asserted-by":"publisher","first-page":"91","DOI":"10.1145\/357318.357320","volume":"2","author":"W.T. Reeves","year":"1983","unstructured":"Reeves, W.T.: Particle systems \u2014 a technique for modeling a class of fuzzy objects. ACM Transactions on Graphics\u00a02(2), 91\u2013108 (1983)","journal-title":"ACM Transactions on Graphics"},{"key":"4_CR36","doi-asserted-by":"crossref","first-page":"257","DOI":"10.1145\/1596550.1596588","volume-title":"Proceedings of the 14th ACM SIGPLAN International Conference on Functional Programming","author":"J. Reppy","year":"2009","unstructured":"Reppy, J., Russo, C., Xiao, Y.: Parallel Concurrent ML. In: Proceedings of the 14th ACM SIGPLAN International Conference on Functional Programming, pp. 257\u2013268. ACM, New York (2009)"},{"key":"4_CR37","volume-title":"Proceedings of the ACM SIGPLAN Workshop on Declarative Aspects of Multicore Programming","author":"J. Reppy","year":"2008","unstructured":"Reppy, J., Xiao, Y.: Toward a parallel implementation of Concurrent ML. In: Proceedings of the ACM SIGPLAN Workshop on Declarative Aspects of Multicore Programming. ACM, New York (2008)"},{"key":"4_CR38","doi-asserted-by":"publisher","first-page":"293","DOI":"10.1145\/113445.113470","volume-title":"Proceedings of the SIGPLAN Conference on Programming Language Design and Implementation (PLDI 1991)","author":"J.H. Reppy","year":"1991","unstructured":"Reppy, J.H.: CML: A higher-order concurrent language. In: Proceedings of the SIGPLAN Conference on Programming Language Design and Implementation (PLDI 1991), pp. 293\u2013305. ACM, New York (1991)"},{"key":"4_CR39","doi-asserted-by":"publisher","DOI":"10.1017\/CBO9780511574962","volume-title":"Concurrent Programming in ML.","author":"J.H. Reppy","year":"1999","unstructured":"Reppy, J.H.: Concurrent Programming in ML. Cambridge University Press, Cambridge (1999)"},{"key":"4_CR40","doi-asserted-by":"crossref","unstructured":"Russell, G.: Events in Haskell, and how to implement them. In: Proceedings of the Sixth ACM SIGPLAN International Conference on Functional Programming, pp. 157\u2013168 (September 2001)","DOI":"10.1145\/507635.507655"},{"key":"4_CR41","doi-asserted-by":"publisher","first-page":"204","DOI":"10.1145\/224964.224987","volume-title":"Proceedings of the Fourteenth Annual ACM Symposium on Principles of Distributed Computing","author":"N. Shavit","year":"1995","unstructured":"Shavit, N., Touitou, D.: Software transactional memory. In: Proceedings of the Fourteenth Annual ACM Symposium on Principles of Distributed Computing, pp. 204\u2013213. ACM, New York (1995)"},{"key":"4_CR42","unstructured":"Shaw, A.: Data Parallelism in Manticore. Master\u2019s thesis, University of Chicago (July 2007), http:\/\/manticore.cs.uchicago.edu"},{"issue":"1","key":"4_CR43","doi-asserted-by":"publisher","first-page":"147","DOI":"10.1016\/S0167-6423(96)00044-5","volume":"31","author":"K. Yi","year":"1998","unstructured":"Yi, K.: An abstract interpretation for estimating uncaught exceptions in Standard ML programs. Sci. Comput. Program.\u00a031(1), 147\u2013173 (1998)","journal-title":"Sci. Comput. Program"},{"key":"4_CR44","doi-asserted-by":"crossref","unstructured":"Young, C., Szymanski, Y.N,L., Reppy, T., Pike, J., Narlikar, R., Mullender, G., Grosse, S.E.: Protium, an infrastructure for partitioned applications. In: Proceedings of the Twelfth IEEE Workshop on Hot Topics in Operating Systems (HotOS-XII), pp. 41\u201346 (January 2001)","DOI":"10.1109\/HOTOS.2001.990060"},{"key":"4_CR45","first-page":"136","volume-title":"Proceedings of the 11th ACM SIGPLAN International Conference on Functional Programming","author":"L. Ziarek","year":"2006","unstructured":"Ziarek, L., Schatz, P., Jagannathan, S.: Stabilizers: a modular checkpointing abstraction for concurrent functional programs. In: Proceedings of the 11th ACM SIGPLAN International Conference on Functional Programming, pp. 136\u2013147. ACM, New York (2006)"}],"container-title":["Lecture Notes in Computer Science","Central European Functional Programming School"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-642-17685-2_4","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2021,11,14]],"date-time":"2021-11-14T18:57:57Z","timestamp":1636916277000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-642-17685-2_4"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2010]]},"ISBN":["9783642176845","9783642176852"],"references-count":45,"URL":"https:\/\/doi.org\/10.1007\/978-3-642-17685-2_4","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2010]]}}}