{"id":"https://openalex.org/W2161801572","doi":"https://doi.org/10.1145/2426890.2426908","title":"Just do it while compiling!","display_name":"Just do it while compiling!","publication_year":2013,"publication_date":"2013-01-21","ids":{"openalex":"https://openalex.org/W2161801572","doi":"https://doi.org/10.1145/2426890.2426908","mag":"2161801572"},"language":"en","primary_location":{"id":"doi:10.1145/2426890.2426908","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2426890.2426908","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM SIGPLAN 2013 workshop on Partial evaluation and program manipulation","raw_type":"proceedings-article"},"type":"conference-paper","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/A5024338636","display_name":"Bruno Martinez","orcid":null},"institutions":[{"id":"https://openalex.org/I180910786","display_name":"Universidad de la Rep\u00fablica de Uruguay","ror":"https://ror.org/030bbe882","country_code":"UY","type":"education","lineage":["https://openalex.org/I180910786"]}],"countries":["UY"],"is_corresponding":false,"raw_author_name":"Bruno Martinez","raw_affiliation_strings":["Universidad de la Rep\u00fablica, Montevideo, Uruguay"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Universidad de la Rep\u00fablica, Montevideo, Uruguay","institution_ids":["https://openalex.org/I180910786"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5026040673","display_name":"Marcos Viera","orcid":"https://orcid.org/0000-0003-2291-6151"},"institutions":[{"id":"https://openalex.org/I180910786","display_name":"Universidad de la Rep\u00fablica de Uruguay","ror":"https://ror.org/030bbe882","country_code":"UY","type":"education","lineage":["https://openalex.org/I180910786"]}],"countries":["UY"],"is_corresponding":false,"raw_author_name":"Marcos Viera","raw_affiliation_strings":["Universidad de la Rep\u00fablica, Montevideo, Uruguay"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Universidad de la Rep\u00fablica, Montevideo, Uruguay","institution_ids":["https://openalex.org/I180910786"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5007307934","display_name":"Alberto Pardo","orcid":"https://orcid.org/0000-0003-4011-4232"},"institutions":[{"id":"https://openalex.org/I180910786","display_name":"Universidad de la Rep\u00fablica de Uruguay","ror":"https://ror.org/030bbe882","country_code":"UY","type":"education","lineage":["https://openalex.org/I180910786"]}],"countries":["UY"],"is_corresponding":false,"raw_author_name":"Alberto Pardo","raw_affiliation_strings":["Universidad de la Rep\u00fablica, Montevideo, Uruguay"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Universidad de la Rep\u00fablica, Montevideo, Uruguay","institution_ids":["https://openalex.org/I180910786"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I180910786"],"apc_list":null,"apc_paid":null,"fwci":0.2288,"has_fulltext":false,"cited_by_count":2,"citation_normalized_percentile":{"value":0.5167037,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":94},"biblio":{"volume":null,"issue":null,"first_page":"77","last_page":"86"},"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.9997000098228455,"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.9997000098228455,"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/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9940000176429749,"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"}},{"id":"https://openalex.org/T10317","display_name":"Advanced Database Systems and Queries","score":0.9847999811172485,"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/computer-science","display_name":"Computer science","score":0.8558641076087952},{"id":"https://openalex.org/keywords/haskell","display_name":"Haskell","score":0.7726526260375977},{"id":"https://openalex.org/keywords/compile-time","display_name":"Compile time","score":0.6189281940460205},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.6022347807884216},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.5880287885665894},{"id":"https://openalex.org/keywords/lookup-table","display_name":"Lookup table","score":0.5677566528320312},{"id":"https://openalex.org/keywords/extensibility","display_name":"Extensibility","score":0.515782356262207},{"id":"https://openalex.org/keywords/scheme","display_name":"Scheme (mathematics)","score":0.42967474460601807},{"id":"https://openalex.org/keywords/field","display_name":"Field (mathematics)","score":0.4137040674686432},{"id":"https://openalex.org/keywords/functional-programming","display_name":"Functional programming","score":0.22673815488815308},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.07648378610610962}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8558641076087952},{"id":"https://openalex.org/C2780624054","wikidata":"https://www.wikidata.org/wiki/Q34010","display_name":"Haskell","level":3,"score":0.7726526260375977},{"id":"https://openalex.org/C200833197","wikidata":"https://www.wikidata.org/wiki/Q333707","display_name":"Compile time","level":3,"score":0.6189281940460205},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.6022347807884216},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.5880287885665894},{"id":"https://openalex.org/C134835016","wikidata":"https://www.wikidata.org/wiki/Q690265","display_name":"Lookup table","level":2,"score":0.5677566528320312},{"id":"https://openalex.org/C32833848","wikidata":"https://www.wikidata.org/wiki/Q4115054","display_name":"Extensibility","level":2,"score":0.515782356262207},{"id":"https://openalex.org/C77618280","wikidata":"https://www.wikidata.org/wiki/Q1155772","display_name":"Scheme (mathematics)","level":2,"score":0.42967474460601807},{"id":"https://openalex.org/C9652623","wikidata":"https://www.wikidata.org/wiki/Q190109","display_name":"Field (mathematics)","level":2,"score":0.4137040674686432},{"id":"https://openalex.org/C42383842","wikidata":"https://www.wikidata.org/wiki/Q193076","display_name":"Functional programming","level":2,"score":0.22673815488815308},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.07648378610610962},{"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/C202444582","wikidata":"https://www.wikidata.org/wiki/Q837863","display_name":"Pure mathematics","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/2426890.2426908","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2426890.2426908","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM SIGPLAN 2013 workshop on Partial evaluation and program manipulation","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":23,"referenced_works":["https://openalex.org/W46322832","https://openalex.org/W1519885450","https://openalex.org/W1557825595","https://openalex.org/W1563382076","https://openalex.org/W1573877404","https://openalex.org/W1594279870","https://openalex.org/W1609270914","https://openalex.org/W1897069414","https://openalex.org/W1982230416","https://openalex.org/W1989488683","https://openalex.org/W1999551191","https://openalex.org/W2001170336","https://openalex.org/W2058162377","https://openalex.org/W2070310827","https://openalex.org/W2088372487","https://openalex.org/W2105045857","https://openalex.org/W2107214848","https://openalex.org/W2109518186","https://openalex.org/W2128038421","https://openalex.org/W2131985427","https://openalex.org/W2168938117","https://openalex.org/W2515102472","https://openalex.org/W4235669620"],"related_works":["https://openalex.org/W2046806568","https://openalex.org/W2371266106","https://openalex.org/W2536586774","https://openalex.org/W2117382851","https://openalex.org/W3006505070","https://openalex.org/W2382449560","https://openalex.org/W2767298477","https://openalex.org/W2051033445","https://openalex.org/W2110432562","https://openalex.org/W2090337950"],"abstract_inverted_index":{"The":[0,106],"library":[1],"for":[2,66,73,130],"strongly":[3],"typed":[4],"heterogeneous":[5],"collections":[6],"HList":[7],"provides":[8],"an":[9],"implementation":[10],"of":[11,23,34,47,63,90,102,119],"extensible":[12,64,74],"records":[13,28,65,75],"in":[14,44,95,111,138],"Haskell":[15],"that":[16,41,76],"needs":[17],"only":[18],"a":[19,38,59,83,100,131],"few":[20],"common":[21],"extensions":[22],"the":[24,45,87,91,116,126],"language.":[25],"In":[26,49],"HList,":[27],"are":[29],"represented":[30],"as":[31],"linked":[32,121],"lists":[33],"label-value":[35],"pairs":[36],"with":[37],"lookup":[39,78,94,110],"operation":[40],"is":[42,133],"linear-time":[43],"number":[46],"fields.":[48],"this":[50],"paper,":[51],"we":[52],"use":[53],"type-level":[54],"programming":[55],"techniques":[56],"to":[57,135],"develop":[58],"more":[60],"efficient":[61],"representation":[62],"HList.":[67],"We":[68],"propose":[69],"two":[70],"internal":[71],"encodings":[72,92],"improve":[77],"at":[79,99],"runtime":[80],"without":[81],"needing":[82],"total":[84],"order":[85],"on":[86],"labels.":[88],"One":[89],"performs":[93,109],"constant":[96],"time":[97,104,113,137],"but":[98],"cost":[101],"linear":[103],"insertion.":[105],"other":[107],"one":[108],"logarithmic":[112],"while":[114],"preserving":[115],"fast":[117],"insertion":[118],"simple":[120],"lists.":[122],"Through":[123],"staged":[124],"compilation,":[125],"required":[127],"slow":[128],"search":[129],"field":[132],"moved":[134],"compile":[136],"both":[139],"cases.":[140]},"counts_by_year":[{"year":2013,"cited_by_count":1},{"year":2012,"cited_by_count":1}],"updated_date":"2026-07-29T14:22:42.915294","created_date":"2025-10-10T00:00:00"}
