{"id":"https://openalex.org/W6907897614","doi":"https://doi.org/10.25392/leicester.data.12696617","title":"Debugging Functional Programs by Interpretation","display_name":"Debugging Functional Programs by Interpretation","publication_year":2020,"publication_date":"2020-07-23","ids":{"openalex":"https://openalex.org/W6907897614","doi":"https://doi.org/10.25392/leicester.data.12696617","mag":"3091196320"},"language":"en","primary_location":{"id":"pmh:oai:arXiv.org:2411.00637","doi":null,"is_oa":true,"landing_page_url":"http://arxiv.org/abs/2411.00637","pdf_url":"https://arxiv.org/pdf/2411.00637","source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":"2331-8422","issn":["2331-8422"],"is_oa":true,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"text"},"volume":null,"type":"dissertation","is_traditional":true,"indexed_in":["arxiv","datacite"],"open_access":{"is_oa":true,"oa_status":"green","oa_url":"https://arxiv.org/pdf/2411.00637","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5040559990","display_name":"John Whitington","orcid":null,"observed_orcids":[]},"institutions":[],"countries":[],"is_corresponding":true,"raw_author_name":"Whitington, John","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]}],"institutions":[],"countries_distinct_count":0,"institutions_distinct_count":0,"corresponding_author_ids":["https://openalex.org/A5040559990"],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":null,"has_fulltext":true,"cited_by_count":3,"citation_normalized_percentile":null,"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"first_page":null,"last_page":null},"is_retracted":false,"is_paratext":false,"is_xpac":true,"primary_topic":{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.5791000127792358,"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.5791000127792358,"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/T10743","display_name":"Software Testing and Debugging Techniques","score":0.4146000146865845,"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.0012000000569969416,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/debugging","display_name":"debugging","score":0.6499999761581421},{"id":"https://openalex.org/keywords/functional-programming","display_name":"functional programming","score":0.9110000133514404},{"id":"https://openalex.org/keywords/ocaml","display_name":"OCaml","score":0.9350000023841858},{"id":"https://openalex.org/keywords/source-level-debugging","display_name":"source-level debugging","score":0.718999981880188},{"id":"https://openalex.org/keywords/program-interpretation","display_name":"program interpretation","score":0.6290000081062317},{"id":"https://openalex.org/keywords/syntax-extension","display_name":"syntax extension","score":0.8740000128746033}],"concepts":[{"id":"https://openalex.org/C2778485113","wikidata":"https://www.wikidata.org/wiki/Q193231","display_name":"Debugger","level":3,"score":0.9556000232696533},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.9010000228881836},{"id":"https://openalex.org/C168065819","wikidata":"https://www.wikidata.org/wiki/Q845566","display_name":"Debugging","level":2,"score":0.842199981212616},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8342000246047974},{"id":"https://openalex.org/C136388014","wikidata":"https://www.wikidata.org/wiki/Q17084976","display_name":"Algorithmic program debugging","level":3,"score":0.7089999914169312},{"id":"https://openalex.org/C2780615836","wikidata":"https://www.wikidata.org/wiki/Q2471869","display_name":"USable","level":2,"score":0.6499999761581421},{"id":"https://openalex.org/C527412718","wikidata":"https://www.wikidata.org/wiki/Q855395","display_name":"Interpretation (philosophy)","level":2,"score":0.5534999966621399},{"id":"https://openalex.org/C2780654840","wikidata":"https://www.wikidata.org/wiki/Q333341","display_name":"Abstract interpretation","level":2,"score":0.5386000275611877},{"id":"https://openalex.org/C42383842","wikidata":"https://www.wikidata.org/wiki/Q193076","display_name":"Functional programming","level":2,"score":0.5370000004768372},{"id":"https://openalex.org/C91071405","wikidata":"https://www.wikidata.org/wiki/Q1413145","display_name":"Program slicing","level":3,"score":0.46560001373291016},{"id":"https://openalex.org/C60048249","wikidata":"https://www.wikidata.org/wiki/Q37437","display_name":"Syntax","level":2,"score":0.4645000100135803},{"id":"https://openalex.org/C39920170","wikidata":"https://www.wikidata.org/wiki/Q693083","display_name":"Soundness","level":2,"score":0.3930000066757202},{"id":"https://openalex.org/C122783720","wikidata":"https://www.wikidata.org/wiki/Q183065","display_name":"Interpreter","level":2,"score":0.3725999891757965},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.3546999990940094},{"id":"https://openalex.org/C2778361913","wikidata":"https://www.wikidata.org/wiki/Q7248437","display_name":"Program transformation","level":2,"score":0.32839998602867126},{"id":"https://openalex.org/C98183937","wikidata":"https://www.wikidata.org/wiki/Q2112188","display_name":"Program analysis","level":2,"score":0.3050999939441681},{"id":"https://openalex.org/C2777026412","wikidata":"https://www.wikidata.org/wiki/Q2684591","display_name":"Statement (logic)","level":2,"score":0.29330000281333923},{"id":"https://openalex.org/C120558287","wikidata":"https://www.wikidata.org/wiki/Q1418502","display_name":"Procedural programming","level":4,"score":0.2913999855518341},{"id":"https://openalex.org/C75291252","wikidata":"https://www.wikidata.org/wiki/Q1315756","display_name":"TRACE (psycholinguistics)","level":2,"score":0.2793000042438507},{"id":"https://openalex.org/C113843644","wikidata":"https://www.wikidata.org/wiki/Q901882","display_name":"Interface (matter)","level":4,"score":0.2750000059604645},{"id":"https://openalex.org/C1009929","wikidata":"https://www.wikidata.org/wiki/Q179550","display_name":"Software bug","level":3,"score":0.2637999951839447}],"mesh":[],"locations_count":6,"locations":[{"id":"pmh:oai:arXiv.org:2411.00637","doi":null,"is_oa":true,"landing_page_url":"http://arxiv.org/abs/2411.00637","pdf_url":"https://arxiv.org/pdf/2411.00637","source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":"2331-8422","issn":["2331-8422"],"is_oa":true,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"text"},{"id":"pmh:oai:figshare.com:article/12696617","doi":null,"is_oa":false,"landing_page_url":"https://figshare.com/articles/thesis/Debugging_Functional_Programs_by_Interpretation/12696617","pdf_url":null,"source":{"id":"https://openalex.org/S4377196282","display_name":"Figshare","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":"https://openalex.org/I4210132348","host_organization_name":"Figshare (United Kingdom)","host_organization_lineage":["https://openalex.org/I4210132348"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"Thesis"},{"id":"doi:10.48550/arxiv.2411.00637","doi":"https://doi.org/10.48550/arxiv.2411.00637","is_oa":true,"landing_page_url":"https://doi.org/10.48550/arxiv.2411.00637","pdf_url":null,"source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":"2331-8422","issn":["2331-8422"],"is_oa":true,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":null,"is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"Preprint"},{"id":"doi:10.25392/leicester.data.12696617","doi":"https://doi.org/10.25392/leicester.data.12696617","is_oa":true,"landing_page_url":"https://doi.org/10.25392/leicester.data.12696617","pdf_url":null,"source":{"id":"https://openalex.org/S7407051372","display_name":"University of Leicester","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":null,"is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"Dissertation"},{"id":"doi:10.25392/leicester.data.12696617.v1","doi":"https://doi.org/10.25392/leicester.data.12696617.v1","is_oa":true,"landing_page_url":"https://doi.org/10.25392/leicester.data.12696617.v1","pdf_url":null,"source":{"id":"https://openalex.org/S7407051372","display_name":"University of Leicester","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":null,"is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"Dissertation"},{"id":"mag:3091196320","doi":null,"is_oa":false,"landing_page_url":"https://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.811487","pdf_url":null,"source":null,"license":null,"license_id":null,"version":null,"is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":null}],"best_oa_location":{"id":"pmh:oai:arXiv.org:2411.00637","doi":null,"is_oa":true,"landing_page_url":"http://arxiv.org/abs/2411.00637","pdf_url":"https://arxiv.org/pdf/2411.00637","source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":"2331-8422","issn":["2331-8422"],"is_oa":true,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"text"},"sustainable_development_goals":[],"study_designs":[],"awards":[],"funders":[{"id":"https://openalex.org/F4320314731","display_name":"UK Research and Innovation","ror":"https://ror.org/001aqnf71"},{"id":"https://openalex.org/F4320334627","display_name":"Engineering and Physical Sciences Research Council","ror":"https://ror.org/0439y7842"}],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W6907897614.pdf","grobid_xml":"https://content.openalex.org/works/W6907897614.grobid-xml"},"referenced_works_count":2,"referenced_works":["https://openalex.org/W1568267803","https://openalex.org/W2184941823"],"related_works":["https://openalex.org/W2946801219","https://openalex.org/W172603500","https://openalex.org/W2977191883","https://openalex.org/W29650034","https://openalex.org/W2114956563","https://openalex.org/W7095580578","https://openalex.org/W2052209904","https://openalex.org/W1587224678","https://openalex.org/W2132282446","https://openalex.org/W7099226774"],"abstract_inverted_index":{"Motivated":[0],"by":[1,72,110],"experience":[2],"in":[3,6,35,137],"programming":[4,37,67],"and":[5,50,90,95,112,120,173],"the":[7,16,41,65,76,80,87,127,138,142,146,149,167],"teaching":[8],"of":[9,19,43,75,83,86,129,148,169],"programming,":[10],"we":[11,39],"make":[12,47],"another":[13],"assault":[14],"on":[15,60],"longstanding":[17],"problem":[18],"debugging.":[20],"Having":[21],"explored":[22],"why":[23],"debuggers":[24],"are":[25],"not":[26],"used":[27],"as":[28,30,141],"widely":[29,55],"one":[31],"might":[32],"expect,":[33],"especially":[34],"functional":[36,66],"environments,":[38],"define":[40],"characteristics":[42,168],"a":[44,61,102,130,161,170],"debugger":[45,63,104,144,172],"which":[46,70,105,125],"it":[48],"usable":[49,171],"thus":[51],"likely":[52],"to":[53,117,134,179],"be":[54,118,135,177,180],"used.":[56],"We":[57,153],"present":[58],"work":[59],"new":[62],"for":[64,182],"language":[68],"OCaml":[69,108,122],"operates":[71],"direct":[73],"interpretation":[74,111],"program":[77,131,150],"source,":[78],"allowing":[79],"printing":[81],"out":[82],"individual":[84],"steps":[85],"program's":[88],"evaluation,":[89],"discuss":[91],"its":[92],"technical":[93],"implementation":[94],"practical":[96],"use.":[97],"It":[98],"has":[99,166],"two":[100],"parts:":[101],"stand-alone":[103,143],"can":[106,159],"run":[107],"programs":[109],"so":[113,174],"allow":[114],"their":[115],"behaviour":[116],"inspected;":[119],"an":[121],"syntax":[123],"extension,":[124],"allows":[126],"part":[128],"under":[132],"scrutiny":[133],"interpreted":[136],"same":[139],"fashion":[140],"whilst":[145],"rest":[147],"runs":[151],"natively.":[152],"show":[154],"how":[155],"this":[156],"latter":[157],"mechanism":[158],"create":[160],"source-level":[162],"debugging":[163],"system":[164],"that":[165],"may":[175],"eventually":[176],"expected":[178],"suitable":[181],"widespread":[183],"adoption.":[184]},"counts_by_year":[{"year":2025,"cited_by_count":1},{"year":2023,"cited_by_count":1},{"year":2021,"cited_by_count":1}],"updated_date":"2026-11-12T12:28:57.059296","created_date":"2025-10-10T00:00:00"}
