{"id":"https://openalex.org/W2334823850","doi":"https://doi.org/10.1145/2892664.2892677","title":"A Lightweight Optimization Technique for Data Types a la Carte","display_name":"A Lightweight Optimization Technique for Data Types a la Carte","publication_year":2016,"publication_date":"2016-03-14","ids":{"openalex":"https://openalex.org/W2334823850","doi":"https://doi.org/10.1145/2892664.2892677","mag":"2334823850"},"language":"en","primary_location":{"id":"doi:10.1145/2892664.2892677","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2892664.2892677","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Companion Proceedings of the 15th International Conference on Modularity","raw_type":"proceedings-article"},"type":"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/A5065897561","display_name":"Hirotada Kiriyama","orcid":null},"institutions":[{"id":"https://openalex.org/I114531698","display_name":"Tokyo Institute of Technology","ror":"https://ror.org/0112mx960","country_code":"JP","type":"education","lineage":["https://openalex.org/I114531698"]}],"countries":["JP"],"is_corresponding":false,"raw_author_name":"Hirotada Kiriyama","raw_affiliation_strings":["Tokyo Institute of Technology, Japan"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Tokyo Institute of Technology, Japan","institution_ids":["https://openalex.org/I114531698"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5070909210","display_name":"Tomoyuki Aotani","orcid":"https://orcid.org/0000-0003-4538-0230"},"institutions":[{"id":"https://openalex.org/I114531698","display_name":"Tokyo Institute of Technology","ror":"https://ror.org/0112mx960","country_code":"JP","type":"education","lineage":["https://openalex.org/I114531698"]}],"countries":["JP"],"is_corresponding":false,"raw_author_name":"Tomoyuki Aotani","raw_affiliation_strings":["Tokyo Institute of Technology, Japan"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Tokyo Institute of Technology, Japan","institution_ids":["https://openalex.org/I114531698"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5079977725","display_name":"Hidehiko Masuhara","orcid":"https://orcid.org/0000-0002-8837-5303"},"institutions":[{"id":"https://openalex.org/I114531698","display_name":"Tokyo Institute of Technology","ror":"https://ror.org/0112mx960","country_code":"JP","type":"education","lineage":["https://openalex.org/I114531698"]}],"countries":["JP"],"is_corresponding":false,"raw_author_name":"Hidehiko Masuhara","raw_affiliation_strings":["Tokyo Institute of Technology, Japan"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Tokyo Institute of Technology, Japan","institution_ids":["https://openalex.org/I114531698"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":3,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":0.4416,"has_fulltext":false,"cited_by_count":1,"citation_normalized_percentile":{"value":0.78042848,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":90,"max":94},"biblio":{"volume":null,"issue":null,"first_page":"86","last_page":"90"},"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.998199999332428,"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"}},"topics":[{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.998199999332428,"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/T10772","display_name":"Distributed systems and fault tolerance","score":0.9943000078201294,"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/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9905999898910522,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"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/data-type","display_name":"Data type","score":0.8307541608810425},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.799536943435669},{"id":"https://openalex.org/keywords/haskell","display_name":"Haskell","score":0.7875916957855225},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.6059960126876831},{"id":"https://openalex.org/keywords/functional-programming","display_name":"Functional programming","score":0.5534277558326721},{"id":"https://openalex.org/keywords/extensibility","display_name":"Extensibility","score":0.5457600355148315},{"id":"https://openalex.org/keywords/type","display_name":"Type (biology)","score":0.5401512384414673},{"id":"https://openalex.org/keywords/algebraic-number","display_name":"Algebraic number","score":0.42212074995040894},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.36564910411834717},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.3568747043609619},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.11395907402038574}],"concepts":[{"id":"https://openalex.org/C138958017","wikidata":"https://www.wikidata.org/wiki/Q190087","display_name":"Data type","level":2,"score":0.8307541608810425},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.799536943435669},{"id":"https://openalex.org/C2780624054","wikidata":"https://www.wikidata.org/wiki/Q34010","display_name":"Haskell","level":3,"score":0.7875916957855225},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6059960126876831},{"id":"https://openalex.org/C42383842","wikidata":"https://www.wikidata.org/wiki/Q193076","display_name":"Functional programming","level":2,"score":0.5534277558326721},{"id":"https://openalex.org/C32833848","wikidata":"https://www.wikidata.org/wiki/Q4115054","display_name":"Extensibility","level":2,"score":0.5457600355148315},{"id":"https://openalex.org/C2777299769","wikidata":"https://www.wikidata.org/wiki/Q3707858","display_name":"Type (biology)","level":2,"score":0.5401512384414673},{"id":"https://openalex.org/C9376300","wikidata":"https://www.wikidata.org/wiki/Q168817","display_name":"Algebraic number","level":2,"score":0.42212074995040894},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.36564910411834717},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.3568747043609619},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.11395907402038574},{"id":"https://openalex.org/C18903297","wikidata":"https://www.wikidata.org/wiki/Q7150","display_name":"Ecology","level":1,"score":0.0},{"id":"https://openalex.org/C134306372","wikidata":"https://www.wikidata.org/wiki/Q7754","display_name":"Mathematical analysis","level":1,"score":0.0},{"id":"https://openalex.org/C86803240","wikidata":"https://www.wikidata.org/wiki/Q420","display_name":"Biology","level":0,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/2892664.2892677","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2892664.2892677","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Companion Proceedings of the 15th International Conference on Modularity","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":4,"referenced_works":["https://openalex.org/W2000212732","https://openalex.org/W2091470061","https://openalex.org/W2143823533","https://openalex.org/W2163552400"],"related_works":["https://openalex.org/W3004782279","https://openalex.org/W1602185604","https://openalex.org/W2028779182","https://openalex.org/W4242678340","https://openalex.org/W2112263414","https://openalex.org/W2493130382","https://openalex.org/W2145738007","https://openalex.org/W2971609332","https://openalex.org/W2110095505","https://openalex.org/W2779713464"],"abstract_inverted_index":{"Data":[0],"types":[1,15,33,84,90,107,134,190],"\u00e0":[2],"la":[3],"carte":[4],"(DTC)":[5],"is":[6,38,117],"a":[7,53],"technique":[8,56],"for":[9,57],"adding":[10],"new":[11],"variants":[12],"to":[13,30,86],"data":[14,32,65,83,89,106,133,146,158,189],"modularly.":[16],"A":[17],"drawback":[18],"of":[19,45,63],"DTC":[20,64,93,150,169],"compared":[21],"with":[22],"simple":[23],"variant":[24],"types,":[25],"which":[26],"are":[27,191],"commonly":[28],"used":[29],"define":[31],"in":[34,92,113,149],"functional":[35],"programming":[36],"languages,":[37],"runtime":[39],"inefficiency":[40],"caused":[41],"by":[42,77],"the":[43,61,100,109,123,125,188],"destruction":[44],"these":[46],"values.":[47],"In":[48],"this":[49],"paper,":[50],"we":[51],"propose":[52],"lightweight":[54],"optimization":[55],"functions":[58,126,141,170],"that":[59,103,142,168],"destruct":[60],"values":[62],"types.":[66],"It":[67],"makes":[68],"their":[69,74,178],"execution":[70],"as":[71,73,175,177],"efficient":[72],"non-DTC":[75,179],"counterparts":[76,180],"just":[78],"(1)":[79],"deriving":[80],"non-extensible":[81,156],"algebraic":[82,157],"isomorphic":[85,155],"ex-":[87],"tensible":[88],"defined":[91,148],"fashion":[94,151],"and":[95,152,181],"(2)":[96],"using":[97,108,160,171],"them":[98],"within":[99],"type":[101,147,159],"annotations":[102],"specify":[104],"concrete":[105],"composition":[110],"operator":[111],"given":[112],"DTC.":[114],"The":[115],"approach":[116,173],"based":[118],"on":[119,122,129],"an":[120,144,154],"insight":[121],"functions:":[124],"never":[127],"depend":[128],"any":[130],"con-":[131],"crete":[132],"but":[135],"merely":[136],"constrain":[137],"them.":[138],"We":[139],"implemented":[140],"take":[143],"extensible":[145],"derive":[153],"Template":[161],"Haskell.":[162],"Our":[163],"experimental":[164],"re-":[165],"sults":[166],"show":[167],"our":[172],"run":[174],"efficiently":[176],"avoid":[182],"performance":[183],"slow":[184],"down":[185],"even":[186],"if":[187],"extended":[192],"multiple":[193],"times.":[194]},"counts_by_year":[{"year":2019,"cited_by_count":1}],"updated_date":"2026-06-11T09:08:48.828518","created_date":"2025-10-10T00:00:00"}
