{"id":"https://openalex.org/W2071978920","doi":"https://doi.org/10.1145/2364506.2364508","title":"The HERMIT in the machine","display_name":"The HERMIT in the machine","publication_year":2012,"publication_date":"2012-09-12","ids":{"openalex":"https://openalex.org/W2071978920","doi":"https://doi.org/10.1145/2364506.2364508","mag":"2071978920"},"language":"en","primary_location":{"id":"doi:10.1145/2364506.2364508","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2364506.2364508","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2012 Haskell Symposium","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/A5077194053","display_name":"Andrew Farmer","orcid":"https://orcid.org/0000-0002-4224-2433"},"institutions":[{"id":"https://openalex.org/I146416000","display_name":"University of Kansas","ror":"https://ror.org/001tmjg57","country_code":"US","type":"education","lineage":["https://openalex.org/I146416000"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Andrew Farmer","raw_affiliation_strings":["University of Kansas, Lawrence, KS, USA"],"affiliations":[{"raw_affiliation_string":"University of Kansas, Lawrence, KS, USA","institution_ids":["https://openalex.org/I146416000"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5029124439","display_name":"Andy Gill","orcid":null},"institutions":[{"id":"https://openalex.org/I146416000","display_name":"University of Kansas","ror":"https://ror.org/001tmjg57","country_code":"US","type":"education","lineage":["https://openalex.org/I146416000"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Andy Gill","raw_affiliation_strings":["University of Kansas, Lawrence, KS, USA"],"affiliations":[{"raw_affiliation_string":"University of Kansas, Lawrence, KS, USA","institution_ids":["https://openalex.org/I146416000"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5108230201","display_name":"Ed Komp","orcid":null},"institutions":[{"id":"https://openalex.org/I146416000","display_name":"University of Kansas","ror":"https://ror.org/001tmjg57","country_code":"US","type":"education","lineage":["https://openalex.org/I146416000"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Ed Komp","raw_affiliation_strings":["University of Kansas, Lawrence, KS, USA"],"affiliations":[{"raw_affiliation_string":"University of Kansas, Lawrence, KS, USA","institution_ids":["https://openalex.org/I146416000"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5078273982","display_name":"Neil Sculthorpe","orcid":"https://orcid.org/0000-0002-7244-0916"},"institutions":[{"id":"https://openalex.org/I146416000","display_name":"University of Kansas","ror":"https://ror.org/001tmjg57","country_code":"US","type":"education","lineage":["https://openalex.org/I146416000"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Neil Sculthorpe","raw_affiliation_strings":["University of Kansas, Lawrence, KS, USA"],"affiliations":[{"raw_affiliation_string":"University of Kansas, Lawrence, KS, USA","institution_ids":["https://openalex.org/I146416000"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":4,"corresponding_author_ids":["https://openalex.org/A5077194053"],"corresponding_institution_ids":["https://openalex.org/I146416000"],"apc_list":null,"apc_paid":null,"fwci":8.9908,"has_fulltext":false,"cited_by_count":30,"citation_normalized_percentile":{"value":0.97815724,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":89,"max":99},"biblio":{"volume":null,"issue":null,"first_page":"1","last_page":"12"},"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.9991999864578247,"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.9991999864578247,"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.9980999827384949,"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/T10260","display_name":"Software Engineering Research","score":0.9941999912261963,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"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/haskell","display_name":"Haskell","score":0.9595514535903931},{"id":"https://openalex.org/keywords/code-refactoring","display_name":"Code refactoring","score":0.8947002291679382},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.8829299211502075},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8417856693267822},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.7197590470314026},{"id":"https://openalex.org/keywords/functional-programming","display_name":"Functional programming","score":0.5205603241920471},{"id":"https://openalex.org/keywords/pipeline","display_name":"Pipeline (software)","score":0.5172379612922668},{"id":"https://openalex.org/keywords/program-transformation","display_name":"Program transformation","score":0.49590620398521423},{"id":"https://openalex.org/keywords/transformation","display_name":"Transformation (genetics)","score":0.42583584785461426},{"id":"https://openalex.org/keywords/interface","display_name":"Interface (matter)","score":0.4197401702404022},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.16534224152565002},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.15145736932754517}],"concepts":[{"id":"https://openalex.org/C2780624054","wikidata":"https://www.wikidata.org/wiki/Q34010","display_name":"Haskell","level":3,"score":0.9595514535903931},{"id":"https://openalex.org/C152752567","wikidata":"https://www.wikidata.org/wiki/Q116877","display_name":"Code refactoring","level":3,"score":0.8947002291679382},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.8829299211502075},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8417856693267822},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.7197590470314026},{"id":"https://openalex.org/C42383842","wikidata":"https://www.wikidata.org/wiki/Q193076","display_name":"Functional programming","level":2,"score":0.5205603241920471},{"id":"https://openalex.org/C43521106","wikidata":"https://www.wikidata.org/wiki/Q2165493","display_name":"Pipeline (software)","level":2,"score":0.5172379612922668},{"id":"https://openalex.org/C2778361913","wikidata":"https://www.wikidata.org/wiki/Q7248437","display_name":"Program transformation","level":2,"score":0.49590620398521423},{"id":"https://openalex.org/C204241405","wikidata":"https://www.wikidata.org/wiki/Q461499","display_name":"Transformation (genetics)","level":3,"score":0.42583584785461426},{"id":"https://openalex.org/C113843644","wikidata":"https://www.wikidata.org/wiki/Q901882","display_name":"Interface (matter)","level":4,"score":0.4197401702404022},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.16534224152565002},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.15145736932754517},{"id":"https://openalex.org/C185592680","wikidata":"https://www.wikidata.org/wiki/Q2329","display_name":"Chemistry","level":0,"score":0.0},{"id":"https://openalex.org/C129307140","wikidata":"https://www.wikidata.org/wiki/Q6795880","display_name":"Maximum bubble pressure method","level":3,"score":0.0},{"id":"https://openalex.org/C104317684","wikidata":"https://www.wikidata.org/wiki/Q7187","display_name":"Gene","level":2,"score":0.0},{"id":"https://openalex.org/C55493867","wikidata":"https://www.wikidata.org/wiki/Q7094","display_name":"Biochemistry","level":1,"score":0.0},{"id":"https://openalex.org/C157915830","wikidata":"https://www.wikidata.org/wiki/Q2928001","display_name":"Bubble","level":2,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/2364506.2364508","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2364506.2364508","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2012 Haskell Symposium","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[{"display_name":"Industry, innovation and infrastructure","score":0.4099999964237213,"id":"https://metadata.un.org/sdg/9"}],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":57,"referenced_works":["https://openalex.org/W84930537","https://openalex.org/W148987898","https://openalex.org/W199231109","https://openalex.org/W1521372188","https://openalex.org/W1529227536","https://openalex.org/W1534850143","https://openalex.org/W1545995615","https://openalex.org/W1553511155","https://openalex.org/W1557561422","https://openalex.org/W1571615440","https://openalex.org/W1572186276","https://openalex.org/W1573380057","https://openalex.org/W1575678657","https://openalex.org/W1580128549","https://openalex.org/W1608714802","https://openalex.org/W1971373556","https://openalex.org/W1978948468","https://openalex.org/W1992696924","https://openalex.org/W1995955735","https://openalex.org/W2000212732","https://openalex.org/W2000616678","https://openalex.org/W2004176798","https://openalex.org/W2007492338","https://openalex.org/W2009775190","https://openalex.org/W2023299380","https://openalex.org/W2027048725","https://openalex.org/W2029422023","https://openalex.org/W2041547763","https://openalex.org/W2046671194","https://openalex.org/W2048706733","https://openalex.org/W2064623306","https://openalex.org/W2080313769","https://openalex.org/W2084489002","https://openalex.org/W2093896470","https://openalex.org/W2100165879","https://openalex.org/W2106561528","https://openalex.org/W2110317952","https://openalex.org/W2112474400","https://openalex.org/W2119142097","https://openalex.org/W2125690388","https://openalex.org/W2125872407","https://openalex.org/W2132325017","https://openalex.org/W2137236134","https://openalex.org/W2138452186","https://openalex.org/W2143566245","https://openalex.org/W2161897282","https://openalex.org/W2167268698","https://openalex.org/W2170069181","https://openalex.org/W2223046624","https://openalex.org/W2296677810","https://openalex.org/W3005061521","https://openalex.org/W4212957569","https://openalex.org/W4213422035","https://openalex.org/W4250126356","https://openalex.org/W6633355477","https://openalex.org/W6634383297","https://openalex.org/W7075652045"],"related_works":["https://openalex.org/W1487314578","https://openalex.org/W2486380360","https://openalex.org/W651123093","https://openalex.org/W2090337950","https://openalex.org/W2046806568","https://openalex.org/W2112263414","https://openalex.org/W3004782279","https://openalex.org/W1602185604","https://openalex.org/W2028779182","https://openalex.org/W1488646450"],"abstract_inverted_index":{"The":[0],"importance":[1],"of":[2,12,57,83],"reasoning":[3],"about":[4],"and":[5,18,33,39,75],"refactoring":[6,38],"programs":[7,59],"is":[8,88],"a":[9,31,50],"central":[10],"tenet":[11],"functional":[13],"programming.":[14],"Yet":[15],"our":[16,44],"compilers":[17],"development":[19],"toolchains":[20],"only":[21],"provide":[22],"rudimentary":[23],"support":[24],"for":[25,90],"these":[26],"tasks.":[27],"This":[28],"paper":[29],"introduces":[30],"programmatic":[32],"compiler-centric":[34],"interface":[35],"that":[36],"facilitates":[37],"equational":[40,76],"reasoning.":[41],"To":[42],"develop":[43],"ideas,":[45],"we":[46],"have":[47],"implemented":[48],"HERMIT,":[49,69],"toolkit":[51],"enabling":[52],"informal":[53],"but":[54],"systematic":[55],"transformation":[56],"Haskell":[58,64],"from":[60],"inside":[61],"the":[62,79,85],"Glasgow":[63],"Compiler's":[65],"optimization":[66],"pipeline.":[67],"With":[68],"users":[70],"can":[71],"experiment":[72],"with":[73],"optimizations":[74],"reasoning,":[77],"while":[78],"tedious":[80],"heavy":[81],"lifting":[82],"performing":[84],"actual":[86],"transformations":[87],"done":[89],"them.":[91]},"counts_by_year":[{"year":2025,"cited_by_count":1},{"year":2022,"cited_by_count":1},{"year":2019,"cited_by_count":2},{"year":2017,"cited_by_count":3},{"year":2016,"cited_by_count":2},{"year":2015,"cited_by_count":10},{"year":2014,"cited_by_count":7},{"year":2013,"cited_by_count":3},{"year":2012,"cited_by_count":1}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
