{"id":"https://openalex.org/W1606360774","doi":"https://doi.org/10.5860/choice.46-3306","title":"Design concepts in programming languages","display_name":"Design concepts in programming languages","publication_year":2009,"publication_date":"2009-02-01","ids":{"openalex":"https://openalex.org/W1606360774","doi":"https://doi.org/10.5860/choice.46-3306","mag":"1606360774"},"language":"en","primary_location":{"id":"doi:10.5860/choice.46-3306","doi":"https://doi.org/10.5860/choice.46-3306","is_oa":false,"landing_page_url":"https://doi.org/10.5860/choice.46-3306","pdf_url":null,"source":{"id":"https://openalex.org/S2764375719","display_name":"Choice Reviews Online","issn_l":"0009-4978","issn":["0009-4978","1523-8253","1943-5975"],"is_oa":false,"is_in_doaj":false,"is_core":true,"listed_in":["cwts-core"],"host_organization":"https://openalex.org/P4310316146","host_organization_name":"Association of College and Research Libraries","host_organization_lineage":["https://openalex.org/P4310316146","https://openalex.org/P4310315903"],"host_organization_lineage_names":["Association of College and Research Libraries","American Library Association"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Choice Reviews Online","raw_type":"journal-article"},"volume":null,"type":"book-review","is_traditional":true,"indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[],"institutions":[],"countries_distinct_count":0,"institutions_distinct_count":0,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":null,"has_fulltext":false,"cited_by_count":28,"citation_normalized_percentile":null,"cited_by_percentile_year":null,"biblio":{"volume":"46","issue":"06","first_page":"46","last_page":"3306"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.9994999766349792,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"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/T10126","display_name":"Logic, programming, and type systems","score":0.9994999766349792,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"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/T10533","display_name":"Teaching and Learning Programming","score":0.00019999999494757503,"subfield":{"id":"https://openalex.org/subfields/1706","display_name":"Computer Science Applications"},"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/T11567","display_name":"semigroups and automata theory","score":9.999999747378752e-05,"subfield":{"id":"https://openalex.org/subfields/1703","display_name":"Computational Theory and Mathematics"},"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/programming-language-design","display_name":"programming language design","score":0.996999979019165},{"id":"https://openalex.org/keywords/programming-language-implementation","display_name":"programming language implementation","score":0.8450000286102295},{"id":"https://openalex.org/keywords/metaprogramming","display_name":"metaprogramming","score":0.8519999980926514},{"id":"https://openalex.org/keywords/abstract-syntax","display_name":"abstract syntax","score":0.7350000143051147},{"id":"https://openalex.org/keywords/operational-semantics","display_name":"operational semantics","score":0.8899999856948853},{"id":"https://openalex.org/keywords/denotational-semantics","display_name":"denotational semantics","score":1.0},{"id":"https://openalex.org/keywords/dynamic-semantics","display_name":"dynamic semantics","score":0.9269999861717224},{"id":"https://openalex.org/keywords/static-semantics","display_name":"static semantics","score":0.9919999837875366},{"id":"https://openalex.org/keywords/type-systems","display_name":"type systems","score":0.6620000004768372},{"id":"https://openalex.org/keywords/type-inference","display_name":"type inference","score":0.8790000081062317},{"id":"https://openalex.org/keywords/polymorphism","display_name":"polymorphism","score":0.9950000047683716},{"id":"https://openalex.org/keywords/effects","display_name":"effects","score":0.8479999899864197},{"id":"https://openalex.org/keywords/compilation","display_name":"compilation","score":0.7929999828338623},{"id":"https://openalex.org/keywords/garbage-collection","display_name":"garbage collection","score":0.9900000095367432},{"id":"https://openalex.org/keywords/concurrency","display_name":"concurrency","score":0.6660000085830688},{"id":"https://openalex.org/keywords/metalanguage","display_name":"metalanguage","score":0.47999998927116394}],"concepts":[{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6929780840873718},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.6241123080253601},{"id":"https://openalex.org/C199305712","wikidata":"https://www.wikidata.org/wiki/Q3205914","display_name":"Fifth-generation programming language","level":3,"score":0.44464176893234253},{"id":"https://openalex.org/C74149592","wikidata":"https://www.wikidata.org/wiki/Q762446","display_name":"Comparison of multi-paradigm programming languages","level":5,"score":0.4238932430744171},{"id":"https://openalex.org/C11164408","wikidata":"https://www.wikidata.org/wiki/Q18657800","display_name":"Second-generation programming language","level":4,"score":0.34151795506477356},{"id":"https://openalex.org/C34165917","wikidata":"https://www.wikidata.org/wiki/Q188267","display_name":"Programming paradigm","level":2,"score":0.29501545429229736}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.5860/choice.46-3306","doi":"https://doi.org/10.5860/choice.46-3306","is_oa":false,"landing_page_url":"https://doi.org/10.5860/choice.46-3306","pdf_url":null,"source":{"id":"https://openalex.org/S2764375719","display_name":"Choice Reviews Online","issn_l":"0009-4978","issn":["0009-4978","1523-8253","1943-5975"],"is_oa":false,"is_in_doaj":false,"is_core":true,"listed_in":["cwts-core"],"host_organization":"https://openalex.org/P4310316146","host_organization_name":"Association of College and Research Libraries","host_organization_lineage":["https://openalex.org/P4310316146","https://openalex.org/P4310315903"],"host_organization_lineage_names":["Association of College and Research Libraries","American Library Association"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Choice Reviews Online","raw_type":"journal-article"}],"best_oa_location":null,"sustainable_development_goals":[{"score":0.6164000034332275,"id":"https://metadata.un.org/sdg/4","display_name":"Quality education"}],"study_designs":[],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":0,"referenced_works":[],"related_works":["https://openalex.org/W1510165340","https://openalex.org/W4415311257","https://openalex.org/W78445279","https://openalex.org/W1530632793","https://openalex.org/W1546620680","https://openalex.org/W2469737022","https://openalex.org/W1575521923","https://openalex.org/W1559950975","https://openalex.org/W7096559039","https://openalex.org/W2128469707"],"abstract_inverted_index":{"Hundreds":[0],"of":[1,82,115,127,146,194,223],"programming":[2,14,27,38,68,92,147,243],"languages":[3,8,86,244],"are":[4],"in":[5,39,51,67,184,200,226],"use":[6],"todayscripting":[7],"for":[9,236,253],"Internet":[10],"commerce,":[11],"user":[12],"interface":[13],"tools,":[15],"spreadsheet":[16],"macros,":[17],"page":[18],"format":[19],"specification":[20],"languages,":[21],"and":[22,45,60,71,101,135,138,165,173,189,197,221,255],"many":[23,171,193],"others.":[24],"Designing":[25],"a":[26,30,40,58,80,125,143,217,234,251],"language":[28,69,93,108,148],"is":[29,77,231],"metaprogramming":[31],"activity":[32],"that":[33,87,106,191],"bears":[34],"certain":[35],"similarities":[36],"to":[37,63,90,141,178],"regular":[41],"language,":[42],"with":[43,212],"clarity":[44],"simplicity":[46],"even":[47],"more":[48],"important":[49],"than":[50],"ordinary":[52],"programming.":[53],"This":[54],"comprehensive":[55,144],"text":[56,235],"uses":[57,139],"simple":[59,84],"concise":[61],"framework":[62],"teach":[64],"key":[65],"ideas":[66,182],"design":[70,149],"implementation.":[72],"The":[73,122,170,229],"book's":[74,208],"unique":[75],"approach":[76],"based":[78],"on":[79,206,219],"family":[81],"syntactically":[83],"pedagogical":[85],"allow":[88],"students":[89,176],"explore":[91,142],"concepts":[94],"systematically.":[95],"It":[96],"takes":[97],"as":[98,216,233,250],"its":[99],"premise":[100],"starting":[102],"point":[103],"the":[104,113,116,180,185,195,201,207,224,227],"idea":[105],"when":[107],"behaviors":[109,117],"become":[110],"incredibly":[111,120],"complex,":[112],"description":[114],"must":[118],"be":[119,204],"simple.":[121],"book":[123,202,230],"presents":[124],"set":[126,145],"tools":[128],"(a":[129],"mathematical":[130],"metalanguage,":[131],"abstract":[132],"syntax,":[133],"operational":[134],"denotational":[136],"semantics)":[137],"it":[140,246],"dimensions,":[150],"including":[151],"dynamic":[152],"semantics":[153,159],"(naming,":[154],"state,":[155],"control,":[156],"data),":[157],"static":[158],"(types,":[160],"type":[161],"reconstruction,":[162],"polymporphism,":[163],"effects),":[164],"pragmatics":[166],"(compilation,":[167],"garbage":[168],"collection).":[169],"examples":[172],"exercises":[174],"offer":[175],"opportunities":[177],"apply":[179],"foundational":[181],"explained":[183],"text.":[186,228],"Specialized":[187],"topics":[188],"code":[190],"implements":[192],"algorithms":[196],"compilation":[198],"methods":[199],"can":[203,247],"found":[205],"Web":[209],"site,":[210],"along":[211],"such":[213],"additional":[214],"material":[215],"section":[218],"concurrency":[220],"proofs":[222],"theorems":[225],"suitable":[232],"an":[237],"introductory":[238],"graduate":[239],"or":[240],"advanced":[241],"undergraduate":[242],"course;":[245],"also":[248],"serve":[249],"reference":[252],"researchers":[254],"practitioners.":[256]},"counts_by_year":[{"year":2025,"cited_by_count":1},{"year":2024,"cited_by_count":1},{"year":2022,"cited_by_count":2},{"year":2021,"cited_by_count":2},{"year":2020,"cited_by_count":2},{"year":2019,"cited_by_count":3},{"year":2018,"cited_by_count":3},{"year":2017,"cited_by_count":2},{"year":2016,"cited_by_count":2},{"year":2014,"cited_by_count":4},{"year":2013,"cited_by_count":2},{"year":2012,"cited_by_count":1}],"updated_date":"2026-11-03T10:50:19.383937","created_date":"2016-06-24T00:00:00"}
