{"id":"https://openalex.org/W2299423576","doi":"https://doi.org/10.1145/2846656.2846658","title":"Medic: metaprogramming and trace-oriented debugging","display_name":"Medic: metaprogramming and trace-oriented debugging","publication_year":2015,"publication_date":"2015-10-26","ids":{"openalex":"https://openalex.org/W2299423576","doi":"https://doi.org/10.1145/2846656.2846658","mag":"2299423576"},"language":"en","primary_location":{"id":"doi:10.1145/2846656.2846658","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2846656.2846658","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the Workshop on Future Programming","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/A5086583515","display_name":"Xiangqi Li","orcid":"https://orcid.org/0000-0002-3303-5774"},"institutions":[{"id":"https://openalex.org/I223532165","display_name":"University of Utah","ror":"https://ror.org/03r0ha626","country_code":"US","type":"education","lineage":["https://openalex.org/I223532165"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Xiangqi Li","raw_affiliation_strings":["University of Utah, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Utah, USA","institution_ids":["https://openalex.org/I223532165"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5033713909","display_name":"Matthew Flatt","orcid":"https://orcid.org/0000-0001-8994-2552"},"institutions":[{"id":"https://openalex.org/I223532165","display_name":"University of Utah","ror":"https://ror.org/03r0ha626","country_code":"US","type":"education","lineage":["https://openalex.org/I223532165"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Matthew Flatt","raw_affiliation_strings":["University of Utah, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Utah, USA","institution_ids":["https://openalex.org/I223532165"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":3.2983,"has_fulltext":false,"cited_by_count":5,"citation_normalized_percentile":{"value":0.9351335,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":90,"max":97},"biblio":{"volume":null,"issue":null,"first_page":"7","last_page":"14"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9994000196456909,"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"}},"topics":[{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9994000196456909,"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"}},{"id":"https://openalex.org/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9983999729156494,"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/T10639","display_name":"Advanced Software Engineering Methodologies","score":0.9983000159263611,"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/debugging","display_name":"Debugging","score":0.9678657054901123},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8359431624412537},{"id":"https://openalex.org/keywords/trace","display_name":"TRACE (psycholinguistics)","score":0.793785810470581},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.718339741230011},{"id":"https://openalex.org/keywords/algorithmic-program-debugging","display_name":"Algorithmic program debugging","score":0.6625323295593262},{"id":"https://openalex.org/keywords/leverage","display_name":"Leverage (statistics)","score":0.5937083959579468},{"id":"https://openalex.org/keywords/visualization","display_name":"Visualization","score":0.5367305278778076},{"id":"https://openalex.org/keywords/software-engineering","display_name":"Software engineering","score":0.47703951597213745},{"id":"https://openalex.org/keywords/metaprogramming","display_name":"Metaprogramming","score":0.4452230632305145},{"id":"https://openalex.org/keywords/software-bug","display_name":"Software bug","score":0.4360572397708893},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.18083041906356812},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.15311136841773987}],"concepts":[{"id":"https://openalex.org/C168065819","wikidata":"https://www.wikidata.org/wiki/Q845566","display_name":"Debugging","level":2,"score":0.9678657054901123},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8359431624412537},{"id":"https://openalex.org/C75291252","wikidata":"https://www.wikidata.org/wiki/Q1315756","display_name":"TRACE (psycholinguistics)","level":2,"score":0.793785810470581},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.718339741230011},{"id":"https://openalex.org/C136388014","wikidata":"https://www.wikidata.org/wiki/Q17084976","display_name":"Algorithmic program debugging","level":3,"score":0.6625323295593262},{"id":"https://openalex.org/C153083717","wikidata":"https://www.wikidata.org/wiki/Q6535263","display_name":"Leverage (statistics)","level":2,"score":0.5937083959579468},{"id":"https://openalex.org/C36464697","wikidata":"https://www.wikidata.org/wiki/Q451553","display_name":"Visualization","level":2,"score":0.5367305278778076},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.47703951597213745},{"id":"https://openalex.org/C35390924","wikidata":"https://www.wikidata.org/wiki/Q661075","display_name":"Metaprogramming","level":2,"score":0.4452230632305145},{"id":"https://openalex.org/C1009929","wikidata":"https://www.wikidata.org/wiki/Q179550","display_name":"Software bug","level":3,"score":0.4360572397708893},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.18083041906356812},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.15311136841773987},{"id":"https://openalex.org/C138885662","wikidata":"https://www.wikidata.org/wiki/Q5891","display_name":"Philosophy","level":0,"score":0.0},{"id":"https://openalex.org/C41895202","wikidata":"https://www.wikidata.org/wiki/Q8162","display_name":"Linguistics","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/2846656.2846658","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2846656.2846658","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the Workshop on Future Programming","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/W142135623","https://openalex.org/W1529569394","https://openalex.org/W1544322677","https://openalex.org/W1552746477","https://openalex.org/W1610570299","https://openalex.org/W1970743531","https://openalex.org/W2010624068","https://openalex.org/W2029414465","https://openalex.org/W2033392551","https://openalex.org/W2033526593","https://openalex.org/W2049946917","https://openalex.org/W2057123779","https://openalex.org/W2063799773","https://openalex.org/W2111642396","https://openalex.org/W2122933544","https://openalex.org/W2126077537","https://openalex.org/W2132704909","https://openalex.org/W2154833931","https://openalex.org/W2167482691","https://openalex.org/W3022981850","https://openalex.org/W4293898435","https://openalex.org/W6631676977","https://openalex.org/W6657725327"],"related_works":["https://openalex.org/W2396596882","https://openalex.org/W2098290990","https://openalex.org/W2119199043","https://openalex.org/W2801084903","https://openalex.org/W2377280071","https://openalex.org/W2060682672","https://openalex.org/W2375626968","https://openalex.org/W2161928627","https://openalex.org/W4206999239","https://openalex.org/W2299423576"],"abstract_inverted_index":{"Modern":[0],"programmers":[1,16,106],"enjoy":[2],"a":[3],"wealth":[4],"of":[5,26,93,111,117],"high-level":[6],"and":[7,12,22,35,68,84,95,101],"graphical":[8],"tools":[9,73],"for":[10,71,87],"understanding":[11],"debugging":[13,42,55,83,113],"programs.":[14],"Nevertheless,":[15],"often":[17],"resort":[18],"to":[19,32,36,63,107],"the":[20,23,61,65,69,90,109],"simple":[21],"time-honored":[24],"technique":[25,46],"inserting":[27],"print":[28],"statements":[29],"into":[30],"programs":[31],"reveal":[33],"progress":[34],"expose":[37],"intermediate":[38],"values.":[39],"This":[40],"trace":[41,54,75,112],"(a.k.a.":[43],"printf":[44],"debugging)":[45],"persists":[47],"because":[48],"it":[49],"has":[50,57],"many":[51,116],"advantages.":[52],"Traditional":[53],"also":[56],"several":[58],"drawbacks,":[59],"including":[60],"need":[62,70],"modify":[64],"source":[66],"program":[67],"additional":[72],"when":[74],"output":[76,98],"becomes":[77],"too":[78],"voluminous.":[79],"Medic,":[80],"our":[81],"new":[82],"program-exploration":[85],"tool":[86],"Racket,":[88],"augments":[89],"traditional":[91],"examination":[92],"control":[94],"state":[96],"with":[97],"processing,":[99],"metaprogramming,":[100],"visualization":[102],"features.":[103],"Medic":[104],"allows":[105],"leverage":[108],"benefits":[110],"while":[114],"addressing":[115],"its":[118],"drawbacks.":[119]},"counts_by_year":[{"year":2019,"cited_by_count":1},{"year":2018,"cited_by_count":1},{"year":2017,"cited_by_count":3}],"updated_date":"2026-06-11T09:08:48.828518","created_date":"2025-10-10T00:00:00"}
