{"id":"https://openalex.org/W2085158159","doi":"https://doi.org/10.1145/191080.191118","title":"Implementing constraint imperative programming languages","display_name":"Implementing constraint imperative programming languages","publication_year":1994,"publication_date":"1994-01-01","ids":{"openalex":"https://openalex.org/W2085158159","doi":"https://doi.org/10.1145/191080.191118","mag":"2085158159"},"language":"en","primary_location":{"is_oa":false,"landing_page_url":"https://doi.org/10.1145/191080.191118","pdf_url":null,"source":null,"license":null,"license_id":null,"version":null,"is_accepted":false,"is_published":false},"type":"article","type_crossref":"proceedings-article","indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5028126480","display_name":"Gus Lopez","orcid":null},"institutions":[{"id":"https://openalex.org/I201448701","display_name":"University of Washington","ror":"https://ror.org/00cvxb145","country_code":"US","type":"funder","lineage":["https://openalex.org/I201448701"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Gus Lopez","raw_affiliation_strings":["Department of Computer Science & Engineering, FR-35, University of Washington, Seattle, WA"],"affiliations":[{"raw_affiliation_string":"Department of Computer Science & Engineering, FR-35, University of Washington, Seattle, WA","institution_ids":["https://openalex.org/I201448701"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5086759325","display_name":"Bjorn Freeman\u2010Benson","orcid":null},"institutions":[{"id":"https://openalex.org/I67031392","display_name":"Carleton University","ror":"https://ror.org/02qtvee93","country_code":"CA","type":"funder","lineage":["https://openalex.org/I67031392"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"Bjorn Freeman-Benson","raw_affiliation_strings":["School of Computer Science, Carleton University, 1125 Colonel By Drive, Ottawa, Ontario, Canada, K1S\u00a05B6"],"affiliations":[{"raw_affiliation_string":"School of Computer Science, Carleton University, 1125 Colonel By Drive, Ottawa, Ontario, Canada, K1S\u00a05B6","institution_ids":["https://openalex.org/I67031392"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5056034943","display_name":"Alan Borning","orcid":"https://orcid.org/0009-0002-3109-2967"},"institutions":[{"id":"https://openalex.org/I201448701","display_name":"University of Washington","ror":"https://ror.org/00cvxb145","country_code":"US","type":"funder","lineage":["https://openalex.org/I201448701"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Alan Borning","raw_affiliation_strings":["Department of Computer Science & Engineering, FR-35, University of Washington, Seattle, WA"],"affiliations":[{"raw_affiliation_string":"Department of Computer Science & Engineering, FR-35, University of Washington, Seattle, WA","institution_ids":["https://openalex.org/I201448701"]}]}],"institution_assertions":[],"countries_distinct_count":2,"institutions_distinct_count":2,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":0.917,"has_fulltext":false,"cited_by_count":19,"citation_normalized_percentile":{"value":0.7833,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":84,"max":85},"biblio":{"volume":null,"issue":null,"first_page":null,"last_page":null},"is_retracted":false,"is_paratext":false,"primary_topic":{"id":"https://openalex.org/T11596","display_name":"Constraint Satisfaction and Optimization","score":0.9993,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T11596","display_name":"Constraint Satisfaction and Optimization","score":0.9993,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.9955,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10317","display_name":"Advanced Database Systems and Queries","score":0.9924,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/abstract-machine","display_name":"Abstract machine","score":0.46517774}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8224783},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6969962},{"id":"https://openalex.org/C173404611","wikidata":"https://www.wikidata.org/wiki/Q528588","display_name":"Constraint programming","level":3,"score":0.69149554},{"id":"https://openalex.org/C199305712","wikidata":"https://www.wikidata.org/wiki/Q3205914","display_name":"Fifth-generation programming language","level":3,"score":0.6474502},{"id":"https://openalex.org/C2776036281","wikidata":"https://www.wikidata.org/wiki/Q48769818","display_name":"Constraint (computer-aided design)","level":2,"score":0.5654293},{"id":"https://openalex.org/C11164408","wikidata":"https://www.wikidata.org/wiki/Q18657800","display_name":"Second-generation programming language","level":4,"score":0.4678745},{"id":"https://openalex.org/C88977235","wikidata":"https://www.wikidata.org/wiki/Q787114","display_name":"Abstract machine","level":2,"score":0.46517774},{"id":"https://openalex.org/C44616089","wikidata":"https://www.wikidata.org/wiki/Q30158686","display_name":"Constraint satisfaction","level":3,"score":0.43166187},{"id":"https://openalex.org/C146206909","wikidata":"https://www.wikidata.org/wiki/Q531152","display_name":"Declarative programming","level":4,"score":0.42620873},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.39882344},{"id":"https://openalex.org/C34165917","wikidata":"https://www.wikidata.org/wiki/Q188267","display_name":"Programming paradigm","level":2,"score":0.35340053},{"id":"https://openalex.org/C50033165","wikidata":"https://www.wikidata.org/wiki/Q15712089","display_name":"Inductive programming","level":3,"score":0.25867242},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.2507705},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.116601706},{"id":"https://openalex.org/C126255220","wikidata":"https://www.wikidata.org/wiki/Q141495","display_name":"Mathematical optimization","level":1,"score":0.07996935},{"id":"https://openalex.org/C2524010","wikidata":"https://www.wikidata.org/wiki/Q8087","display_name":"Geometry","level":1,"score":0.0},{"id":"https://openalex.org/C137631369","wikidata":"https://www.wikidata.org/wiki/Q7617831","display_name":"Stochastic programming","level":2,"score":0.0},{"id":"https://openalex.org/C49937458","wikidata":"https://www.wikidata.org/wiki/Q2599292","display_name":"Probabilistic logic","level":2,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"is_oa":false,"landing_page_url":"https://doi.org/10.1145/191080.191118","pdf_url":null,"source":null,"license":null,"license_id":null,"version":null,"is_accepted":false,"is_published":false}],"best_oa_location":null,"sustainable_development_goals":[{"score":0.54,"id":"https://metadata.un.org/sdg/4","display_name":"Quality education"}],"grants":[],"datasets":[],"versions":[],"referenced_works_count":22,"referenced_works":["https://openalex.org/W106891889","https://openalex.org/W124527648","https://openalex.org/W1518554892","https://openalex.org/W1770006921","https://openalex.org/W1972307965","https://openalex.org/W1979857620","https://openalex.org/W1988095917","https://openalex.org/W2022511338","https://openalex.org/W2030522691","https://openalex.org/W2035855976","https://openalex.org/W2053637323","https://openalex.org/W2060498389","https://openalex.org/W2084202433","https://openalex.org/W2103729840","https://openalex.org/W2113547509","https://openalex.org/W2123396057","https://openalex.org/W2139272205","https://openalex.org/W2144015080","https://openalex.org/W2798639187","https://openalex.org/W2914764211","https://openalex.org/W3140058205","https://openalex.org/W4301885396"],"related_works":["https://openalex.org/W822315591","https://openalex.org/W3160022538","https://openalex.org/W2951038595","https://openalex.org/W2484308627","https://openalex.org/W2376476202","https://openalex.org/W2007301302","https://openalex.org/W1810083572","https://openalex.org/W1557487632","https://openalex.org/W1500516255","https://openalex.org/W1038119274"],"abstract_inverted_index":{"Constraint":[0],"Imperative":[1],"Programming":[2],"(CIP)":[3],"languages":[4,22],"integrate":[5],"declarative":[6,66],"constraints":[7,102],"with":[8,84],"imperative":[9,62,82],"state":[10,144],"and":[11,89],"destructive":[12],"assignment,":[13],"yielding":[14],"a":[15,60,64,72,90,157],"powerful":[16],"new":[17,73],"programming":[18],"paradigm.":[19],"However,":[20],"CIP":[21,55,77,113,161],"are":[23,51,111,123],"difficult":[24],"to":[25,29,103,115,119,125,146],"implement":[26],"efficiently":[27],"due":[28],"complex":[30],"interactions":[31],"between":[32,138],"the":[33,38,79,112,141],"two":[34],"donor":[35],"paradigms.":[36],"Neither":[37],"virtual":[39,74,98],"machines":[40],"for":[41,47,53,76],"classical":[42],"object-oriented":[43],"languages,":[44,50,56,78,162],"nor":[45],"those":[46],"existing":[48],"constraint":[49,87,107],"suitable":[52],"implementing":[54],"as":[57],"each":[58],"assumes":[59],"purely":[61,65],"or":[63],"computation":[67],"model.":[68],"We":[69],"have":[70],"developed":[71],"machine":[75,83,99],"K-machine,":[80],"an":[81,85],"incremental":[86],"solver":[88],"constraint-based,":[91],"rather":[92],"than":[93],"value-based,":[94],"data":[95],"store.":[96],"This":[97],"allows":[100],"user-defined":[101],"be":[104],"defined":[105],"using":[106],"constructor":[108],"definitions":[109],"which":[110],"analog":[114],"method":[116],"definitions.":[117],"Similar":[118],"methods,":[120],"these":[121,147],"constructors":[122],"able":[124],"reference":[126],"variables":[127],"indirectly":[128,148],"through":[129],"many":[130],"levels":[131],"of":[132,143,155,160],"pointers.":[133],"The":[134,151],"K-machine":[135,152],"maintains":[136],"relations":[137],"objects":[139],"in":[140],"presence":[142],"change":[145],"referenced":[149],"objects.":[150],"is":[153],"capable":[154],"supporting":[156],"wide":[158],"variety":[159],"including":[163],"our":[164],"most":[165],"recent:":[166],"Kaleidoscope'93.":[167]},"abstract_inverted_index_v3":null,"cited_by_api_url":"https://api.openalex.org/works?filter=cites:W2085158159","counts_by_year":[{"year":2016,"cited_by_count":2},{"year":2015,"cited_by_count":2},{"year":2014,"cited_by_count":2},{"year":2013,"cited_by_count":1},{"year":2012,"cited_by_count":1}],"updated_date":"2025-07-16T19:07:52.710669","created_date":"2016-06-24"}