{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2024,1,31]],"date-time":"2024-01-31T18:25:19Z","timestamp":1706725519024},"reference-count":38,"publisher":"Elsevier BV","issue":"1-2","license":[{"start":{"date-parts":[[1998,1,1]],"date-time":"1998-01-01T00:00:00Z","timestamp":883612800000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.elsevier.com\/tdm\/userlicense\/1.0\/"},{"start":{"date-parts":[[2013,7,17]],"date-time":"2013-07-17T00:00:00Z","timestamp":1374019200000},"content-version":"vor","delay-in-days":5676,"URL":"https:\/\/www.elsevier.com\/open-access\/userlicense\/1.0\/"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Science of Computer Programming"],"published-print":{"date-parts":[[1998,1]]},"DOI":"10.1016\/s0167-6423(97)00010-5","type":"journal-article","created":{"date-parts":[[2003,4,23]],"date-time":"2003-04-23T19:52:44Z","timestamp":1051127564000},"page":"157-199","source":"Crossref","is-referenced-by-count":7,"title":["GOFFIN: Higher-order functions meet concurrent constraints"],"prefix":"10.1016","volume":"30","author":[{"given":"Manuel M.T.","family":"Chakravarty","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Yike","family":"Guo","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Martin","family":"K\u00f6hler","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Hendrik C.R.","family":"Lock","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"78","reference":[{"key":"10.1016\/S0167-6423(97)00010-5_BIB1","series-title":"Proc. 4th IEEE Internat. Symp. on Logic Programming","article-title":"Le fun: logic, equations, and functions","author":"A\u00eft-Kaci","year":"1987"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB2","series-title":"An Introduction to Mathematical Logic and Type Theory: To Truth Through Proof","author":"Andrews","year":"1986"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB3","series-title":"Introduction to Functional Programming","author":"Bird","year":"1988"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB4","series-title":"Preliminary Proc. of the Fuji Workshop on Functional and Logic Programming","article-title":"Concurrency in functional and logic programming","author":"Breitinger","year":"1995"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB5","series-title":"Proc. of the Glasgow Workshop on Functional Programming, University of Glasgow","article-title":"Towards a declarative language for parallel and concurrent programming","author":"Breitinger","year":"1995"},{"issue":"2","key":"10.1016\/S0167-6423(97)00010-5_BIB6","article-title":"Coordination languages and their significance","volume":"35","author":"Carriero","year":"1992","journal-title":"Comm. ACM"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB7","article-title":"Higher-order logic as a basis for abstract machines implementing functional logic languages","author":"Chakravarty","year":"1995","journal-title":"Internal report"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB8","series-title":"An Introduction to Parallel Programming","author":"Chandy","year":"1992"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB9","doi-asserted-by":"crossref","first-page":"56","DOI":"10.2307\/2266170","article-title":"A formulation of the simple theory of types","volume":"5","author":"Church","year":"1940","journal-title":"J. Symbolic Logic"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB10","series-title":"PARLE","article-title":"Parallel programming using skeleton functions","author":"Darlington","year":"1993"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB11","series-title":"A Comparative Study of Parallel Programming Languages: The Salishan Problems","year":"1992"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB12","series-title":"Designing and Building Parallel Programs","author":"Foster","year":"1995"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB13","series-title":"Semantics of Programming Languages \u2014 Structures and Techniques","author":"Gunter","year":"1992"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB14","article-title":"Definitional constraint programming","author":"Guo","year":"1994"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB15","article-title":"The integration of functions into logic programming: from theory to practice","volume":"19 & 20","author":"Hanus","year":"1994","journal-title":"J. Logic Programming"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB16","doi-asserted-by":"crossref","first-page":"81","DOI":"10.2307\/2266967","article-title":"Completeness in the theory of types","volume":"15","author":"Henkin","year":"1950","journal-title":"J. Symbolic Logic"},{"issue":"5","key":"10.1016\/S0167-6423(97)00010-5_BIB17","volume":"27","author":"Hudak","year":"1992","journal-title":"ACM SIGPLAN Notices"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB18","series-title":"Principles of Programming Languages","article-title":"Para-functional programming: A paradigm for programming multiprocessor systems","author":"Hudak","year":"1986"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB19","doi-asserted-by":"crossref","first-page":"98","DOI":"10.1093\/comjnl\/32.2.98","article-title":"Why functional programming matters","volume":"32","author":"Hughes","year":"1989","journal-title":"Comput. J."},{"key":"10.1016\/S0167-6423(97)00010-5_BIB20","series-title":"Conf. Record of the Nineteenth Annual ACM SIGPLAN-SIGACT Symp. on Principles of Programming Languages","article-title":"Abstract semantics for a higher order functional language with logic variables","author":"Jagadeesan","year":"1992"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB37","unstructured":"Also appeared as TR91-1220, Cornell University."},{"key":"10.1016\/S0167-6423(97)00010-5_BIB21","article-title":"AKL \u2014 A multiparadigm programming language based on a concurrent constraint framework","author":"Janson","year":"1994"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB22","series-title":"Functional Programming for Loosely-Coupled Multiprocessors","author":"Kelly","year":"1989"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB23","series-title":"Foundations of Logic Programming","author":"Lloyd","year":"1987"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB24","series-title":"Proc. 1994 Internat. Logic Programming Symp.","article-title":"Combining functional and logic programming languages","author":"Lloyd","year":"1994"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB25","doi-asserted-by":"crossref","DOI":"10.1016\/S0304-3975(97)00143-6","article-title":"Higher-order rewrite systems and their confluence","author":"Mayr","year":"1994"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB26","doi-asserted-by":"crossref","first-page":"125","DOI":"10.1016\/0168-0072(91)90068-W","article-title":"Uniform proofs as a foundation for logic pogramming","volume":"51","author":"Miller","year":"1991","journal-title":"Ann. Pure Appl. Logic"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB27","series-title":"Logic and Algebra of Specification","first-page":"201","article-title":"The polyadic \u03c0-calculus: a tutorial","author":"Milner","year":"1991"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB28","doi-asserted-by":"crossref","DOI":"10.1145\/237721.237801","article-title":"Functional computation as concurrent computation","author":"Niehren","year":"1995"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB38","unstructured":"A shorter version appeared in: Proc. POPL'96, ACM Press, New York."},{"key":"10.1016\/S0167-6423(97)00010-5_BIB29","article-title":"CSG Memo 284-1","author":"Nikhil","year":"1990"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB30","article-title":"The Implementation of Functional Programming Languages","author":"Peyton-Jones","year":"1987"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB31","series-title":"Higher-order, linear, concurrent constraint programming","author":"Saraswat","year":"1992"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB32","series-title":"Conf. Record of the 18th Ann. ACM Symp. on Principles of Programming Languages","article-title":"The semantic foundations of concurrent constraint programming","author":"Saraswat","year":"1991"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB33","series-title":"Concurrent Constraint Programming","author":"Saraswat","year":"1993"},{"issue":"3","key":"10.1016\/S0167-6423(97)00010-5_BIB34","doi-asserted-by":"crossref","first-page":"412","DOI":"10.1145\/72551.72555","article-title":"The family of concurrent logic programming languages","volume":"21","author":"Shapiro","year":"1989","journal-title":"ACM Comput. Surveys"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB35","series-title":"Computer Science Today","first-page":"324","article-title":"The Oz programming model","volume":"Vol. 1000","author":"Smolka","year":"1995"},{"key":"10.1016\/S0167-6423(97)00010-5_BIB36","series-title":"Cambridge Tracts in Theoretical Computer Science","article-title":"The Clausal Theory of Types","author":"Wolfram","year":"1993"}],"container-title":["Science of Computer Programming"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/api.elsevier.com\/content\/article\/PII:S0167642397000105?httpAccept=text\/xml","content-type":"text\/xml","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/api.elsevier.com\/content\/article\/PII:S0167642397000105?httpAccept=text\/plain","content-type":"text\/plain","content-version":"vor","intended-application":"text-mining"}],"deposited":{"date-parts":[[2019,4,16]],"date-time":"2019-04-16T23:55:34Z","timestamp":1555458934000},"score":1,"resource":{"primary":{"URL":"https:\/\/linkinghub.elsevier.com\/retrieve\/pii\/S0167642397000105"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[1998,1]]},"references-count":38,"journal-issue":{"issue":"1-2","published-print":{"date-parts":[[1998,1]]}},"alternative-id":["S0167642397000105"],"URL":"https:\/\/doi.org\/10.1016\/s0167-6423(97)00010-5","relation":{},"ISSN":["0167-6423"],"issn-type":[{"value":"0167-6423","type":"print"}],"subject":[],"published":{"date-parts":[[1998,1]]}}}