{"id":"https://openalex.org/W2102311747","doi":"https://doi.org/10.1145/1088348.1088357","title":"There and back again","display_name":"There and back again","publication_year":2005,"publication_date":"2005-09-30","ids":{"openalex":"https://openalex.org/W2102311747","doi":"https://doi.org/10.1145/1088348.1088357","mag":"2102311747"},"language":"en","primary_location":{"id":"doi:10.1145/1088348.1088357","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1088348.1088357","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2005 ACM SIGPLAN workshop on Haskell","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/A5058469973","display_name":"Artem Alimarine","orcid":null},"institutions":[{"id":"https://openalex.org/I145872427","display_name":"Radboud University Nijmegen","ror":"https://ror.org/016xsfp80","country_code":"NL","type":"education","lineage":["https://openalex.org/I145872427"]}],"countries":["NL"],"is_corresponding":true,"raw_author_name":"Artem Alimarine","raw_affiliation_strings":["Radboud University Nijmegen, Nijmegen, The Netherlands"],"affiliations":[{"raw_affiliation_string":"Radboud University Nijmegen, Nijmegen, The Netherlands","institution_ids":["https://openalex.org/I145872427"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5042479410","display_name":"Sjaak Smetsers","orcid":null},"institutions":[{"id":"https://openalex.org/I145872427","display_name":"Radboud University Nijmegen","ror":"https://ror.org/016xsfp80","country_code":"NL","type":"education","lineage":["https://openalex.org/I145872427"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Sjaak Smetsers","raw_affiliation_strings":["Radboud University Nijmegen, Nijmegen, The Netherlands"],"affiliations":[{"raw_affiliation_string":"Radboud University Nijmegen, Nijmegen, The Netherlands","institution_ids":["https://openalex.org/I145872427"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5005733845","display_name":"Arjen van Weelden","orcid":null},"institutions":[{"id":"https://openalex.org/I145872427","display_name":"Radboud University Nijmegen","ror":"https://ror.org/016xsfp80","country_code":"NL","type":"education","lineage":["https://openalex.org/I145872427"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Arjen van Weelden","raw_affiliation_strings":["Radboud University Nijmegen, Nijmegen, The Netherlands"],"affiliations":[{"raw_affiliation_string":"Radboud University Nijmegen, Nijmegen, The Netherlands","institution_ids":["https://openalex.org/I145872427"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5112510889","display_name":"Marko van Eekelen","orcid":null},"institutions":[{"id":"https://openalex.org/I145872427","display_name":"Radboud University Nijmegen","ror":"https://ror.org/016xsfp80","country_code":"NL","type":"education","lineage":["https://openalex.org/I145872427"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Marko van Eekelen","raw_affiliation_strings":["Radboud University Nijmegen, Nijmegen, The Netherlands"],"affiliations":[{"raw_affiliation_string":"Radboud University Nijmegen, Nijmegen, The Netherlands","institution_ids":["https://openalex.org/I145872427"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5049917627","display_name":"Rinus Plasmeijer","orcid":"https://orcid.org/0009-0007-1606-8412"},"institutions":[{"id":"https://openalex.org/I145872427","display_name":"Radboud University Nijmegen","ror":"https://ror.org/016xsfp80","country_code":"NL","type":"education","lineage":["https://openalex.org/I145872427"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Rinus Plasmeijer","raw_affiliation_strings":["Radboud University Nijmegen, Nijmegen, The Netherlands"],"affiliations":[{"raw_affiliation_string":"Radboud University Nijmegen, Nijmegen, The Netherlands","institution_ids":["https://openalex.org/I145872427"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":5,"corresponding_author_ids":["https://openalex.org/A5058469973"],"corresponding_institution_ids":["https://openalex.org/I145872427"],"apc_list":null,"apc_paid":null,"fwci":3.5135,"has_fulltext":false,"cited_by_count":37,"citation_normalized_percentile":{"value":0.925833,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":89,"max":97},"biblio":{"volume":null,"issue":null,"first_page":"86","last_page":"97"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T12002","display_name":"Computability, Logic, AI Algorithms","score":0.9976999759674072,"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"}},"topics":[{"id":"https://openalex.org/T12002","display_name":"Computability, Logic, AI Algorithms","score":0.9976999759674072,"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"}},{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.9973000288009644,"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/T11269","display_name":"Algorithms and Data Compression","score":0.983299970626831,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/combinatory-logic","display_name":"Combinatory logic","score":0.797437310218811},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.7157161235809326},{"id":"https://openalex.org/keywords/serialization","display_name":"Serialization","score":0.7123631238937378},{"id":"https://openalex.org/keywords/arrow","display_name":"Arrow","score":0.7054504156112671},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.6862415075302124},{"id":"https://openalex.org/keywords/haskell","display_name":"Haskell","score":0.6800163984298706},{"id":"https://openalex.org/keywords/functional-programming","display_name":"Functional programming","score":0.5527558922767639},{"id":"https://openalex.org/keywords/invertible-matrix","display_name":"Invertible matrix","score":0.5082046985626221},{"id":"https://openalex.org/keywords/parsing","display_name":"Parsing","score":0.48510706424713135},{"id":"https://openalex.org/keywords/generic-programming","display_name":"Generic programming","score":0.4802956283092499},{"id":"https://openalex.org/keywords/reversing","display_name":"Reversing","score":0.47418150305747986},{"id":"https://openalex.org/keywords/exploit","display_name":"Exploit","score":0.44125327467918396},{"id":"https://openalex.org/keywords/class","display_name":"Class (philosophy)","score":0.43862080574035645},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.3901492953300476},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.2537463307380676},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.12743684649467468},{"id":"https://openalex.org/keywords/pure-mathematics","display_name":"Pure mathematics","score":0.09507423639297485}],"concepts":[{"id":"https://openalex.org/C79678938","wikidata":"https://www.wikidata.org/wiki/Q1481571","display_name":"Combinatory logic","level":2,"score":0.797437310218811},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7157161235809326},{"id":"https://openalex.org/C52723943","wikidata":"https://www.wikidata.org/wiki/Q1127410","display_name":"Serialization","level":2,"score":0.7123631238937378},{"id":"https://openalex.org/C2780339515","wikidata":"https://www.wikidata.org/wiki/Q3074698","display_name":"Arrow","level":2,"score":0.7054504156112671},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6862415075302124},{"id":"https://openalex.org/C2780624054","wikidata":"https://www.wikidata.org/wiki/Q34010","display_name":"Haskell","level":3,"score":0.6800163984298706},{"id":"https://openalex.org/C42383842","wikidata":"https://www.wikidata.org/wiki/Q193076","display_name":"Functional programming","level":2,"score":0.5527558922767639},{"id":"https://openalex.org/C96442724","wikidata":"https://www.wikidata.org/wiki/Q242188","display_name":"Invertible matrix","level":2,"score":0.5082046985626221},{"id":"https://openalex.org/C186644900","wikidata":"https://www.wikidata.org/wiki/Q194152","display_name":"Parsing","level":2,"score":0.48510706424713135},{"id":"https://openalex.org/C7051814","wikidata":"https://www.wikidata.org/wiki/Q1051282","display_name":"Generic programming","level":2,"score":0.4802956283092499},{"id":"https://openalex.org/C2781085045","wikidata":"https://www.wikidata.org/wiki/Q7318308","display_name":"Reversing","level":2,"score":0.47418150305747986},{"id":"https://openalex.org/C165696696","wikidata":"https://www.wikidata.org/wiki/Q11287","display_name":"Exploit","level":2,"score":0.44125327467918396},{"id":"https://openalex.org/C2777212361","wikidata":"https://www.wikidata.org/wiki/Q5127848","display_name":"Class (philosophy)","level":2,"score":0.43862080574035645},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.3901492953300476},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.2537463307380676},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.12743684649467468},{"id":"https://openalex.org/C202444582","wikidata":"https://www.wikidata.org/wiki/Q837863","display_name":"Pure mathematics","level":1,"score":0.09507423639297485},{"id":"https://openalex.org/C38652104","wikidata":"https://www.wikidata.org/wiki/Q3510521","display_name":"Computer security","level":1,"score":0.0},{"id":"https://openalex.org/C192562407","wikidata":"https://www.wikidata.org/wiki/Q228736","display_name":"Materials science","level":0,"score":0.0},{"id":"https://openalex.org/C159985019","wikidata":"https://www.wikidata.org/wiki/Q181790","display_name":"Composite material","level":1,"score":0.0}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1145/1088348.1088357","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1088348.1088357","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2005 ACM SIGPLAN workshop on Haskell","raw_type":"proceedings-article"},{"id":"pmh:oai:repository.ubn.ru.nl:2066/33151","is_oa":false,"landing_page_url":"http://hdl.handle.net/2066/33151","pdf_url":null,"source":{"id":"https://openalex.org/S4306401067","display_name":"Radboud Repository (Radboud University)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I145872427","host_organization_name":"Radboud University Nijmegen","host_organization_lineage":["https://openalex.org/I145872427"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"Article in monograph or in proceedings"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":25,"referenced_works":["https://openalex.org/W1484598194","https://openalex.org/W1506888682","https://openalex.org/W1511203305","https://openalex.org/W1563382076","https://openalex.org/W1605309821","https://openalex.org/W1964211642","https://openalex.org/W1994001680","https://openalex.org/W2002085891","https://openalex.org/W2020784851","https://openalex.org/W2062950667","https://openalex.org/W2064138295","https://openalex.org/W2088527260","https://openalex.org/W2115128073","https://openalex.org/W2116435685","https://openalex.org/W2125713144","https://openalex.org/W2136202785","https://openalex.org/W2138577276","https://openalex.org/W2157137298","https://openalex.org/W2591389664","https://openalex.org/W2621168830","https://openalex.org/W2913026635","https://openalex.org/W4285719527","https://openalex.org/W6623049547","https://openalex.org/W6641433507","https://openalex.org/W6759142343"],"related_works":["https://openalex.org/W2063393078","https://openalex.org/W2741344200","https://openalex.org/W1556401754","https://openalex.org/W3006464425","https://openalex.org/W176405751","https://openalex.org/W2139568978","https://openalex.org/W2155480936","https://openalex.org/W1734457603","https://openalex.org/W4240871092","https://openalex.org/W2521829344"],"abstract_inverted_index":{"Invertible":[0],"programming":[1,61],"occurs":[2],"in":[3,16,75],"the":[4,14,20,23,49,55,63,69,83,94],"area":[5],"of":[6,22,39,51,54,57,65,96],"data":[7],"conversion":[8,15],"where":[9],"it":[10],"is":[11,19,36,62],"required":[12],"that":[13,26,47],"one":[17],"direction":[18,50],"inverse":[21],"other.":[24],"For":[25],"purpose,":[27],"we":[28,92,102],"introduce":[29],"bidirectional":[30,86,107],"arrows":[31],"(bi-arrows).":[32],"The":[33],"bi-arrow":[34,70,99],"class":[35,42],"an":[37,44],"extension":[38],"Haskell's":[40],"arrow":[41],"with":[43,73],"extra":[45],"combinator":[46],"changes":[48],"computation.The":[52],"advantage":[53],"use":[56,103],"bi-arrows":[58,74],"for":[59],"invertible":[60,90],"preservation":[64],"invertibility":[66],"properties":[67],"using":[68],"combinators.":[71],"Programming":[72],"a":[76,97,106],"polytypic":[77,87],"or":[78],"generic":[79],"way":[80],"exploits":[81],"this":[82],"most.":[84],"Besides":[85],"examples,":[88],"including":[89],"serialization,":[91],"give":[93],"definition":[95],"monadic":[98],"transformer,":[100],"which":[101],"to":[104],"construct":[105],"parser/pretty":[108],"printer.":[109]},"counts_by_year":[{"year":2025,"cited_by_count":3},{"year":2021,"cited_by_count":1},{"year":2019,"cited_by_count":1},{"year":2018,"cited_by_count":3},{"year":2017,"cited_by_count":1},{"year":2016,"cited_by_count":1},{"year":2013,"cited_by_count":1},{"year":2012,"cited_by_count":2}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
