{"id":"https://openalex.org/W1991169034","doi":"https://doi.org/10.1145/2658761.2658777","title":"Pin++: an object-oriented framework for writing pintools","display_name":"Pin++: an object-oriented framework for writing pintools","publication_year":2014,"publication_date":"2014-08-29","ids":{"openalex":"https://openalex.org/W1991169034","doi":"https://doi.org/10.1145/2658761.2658777","mag":"1991169034"},"language":"en","primary_location":{"id":"doi:10.1145/2658761.2658777","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2658761.2658777","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2014 International Conference on Generative Programming: Concepts and Experiences","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"green","oa_url":"https://scholarworks.indianapolis.iu.edu/bitstreams/8530d862-4d36-4ea6-b500-6edaaf9e37bd/download","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5053484331","display_name":"James H. Hill","orcid":"https://orcid.org/0000-0001-8336-9855"},"institutions":[{"id":"https://openalex.org/I55769427","display_name":"Indiana University \u2013 Purdue University Indianapolis","ror":"https://ror.org/05gxnyn08","country_code":"US","type":"education","lineage":["https://openalex.org/I55769427","https://openalex.org/I592451"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"James H. Hill","raw_affiliation_strings":["Indiana University-Purdue University at Indianapolis, USA","Indiana University/Purdue University at Indianapolis, USA"],"affiliations":[{"raw_affiliation_string":"Indiana University-Purdue University at Indianapolis, USA","institution_ids":["https://openalex.org/I55769427"]},{"raw_affiliation_string":"Indiana University/Purdue University at Indianapolis, USA","institution_ids":["https://openalex.org/I55769427"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5083051062","display_name":"Dennis C. Feiock","orcid":null},"institutions":[{"id":"https://openalex.org/I55769427","display_name":"Indiana University \u2013 Purdue University Indianapolis","ror":"https://ror.org/05gxnyn08","country_code":"US","type":"education","lineage":["https://openalex.org/I55769427","https://openalex.org/I592451"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Dennis C. Feiock","raw_affiliation_strings":["Indiana University-Purdue University at Indianapolis, USA","Indiana University/Purdue University at Indianapolis, USA"],"affiliations":[{"raw_affiliation_string":"Indiana University-Purdue University at Indianapolis, USA","institution_ids":["https://openalex.org/I55769427"]},{"raw_affiliation_string":"Indiana University/Purdue University at Indianapolis, USA","institution_ids":["https://openalex.org/I55769427"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":["https://openalex.org/A5053484331"],"corresponding_institution_ids":["https://openalex.org/I55769427"],"apc_list":null,"apc_paid":null,"fwci":0.8487,"has_fulltext":true,"cited_by_count":8,"citation_normalized_percentile":{"value":0.80531758,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":90,"max":97},"biblio":{"volume":null,"issue":null,"first_page":"133","last_page":"141"},"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.9988999962806702,"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.9988999962806702,"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/T10260","display_name":"Software Engineering Research","score":0.9973999857902527,"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/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9972000122070312,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/metaprogramming","display_name":"Metaprogramming","score":0.7896746397018433},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.7794543504714966},{"id":"https://openalex.org/keywords/modularity","display_name":"Modularity (biology)","score":0.7615812420845032},{"id":"https://openalex.org/keywords/instrumentation","display_name":"Instrumentation (computer programming)","score":0.7267942428588867},{"id":"https://openalex.org/keywords/reuse","display_name":"Reuse","score":0.6316579580307007},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.60614013671875},{"id":"https://openalex.org/keywords/reduction","display_name":"Reduction (mathematics)","score":0.5587803721427917},{"id":"https://openalex.org/keywords/object-oriented-programming","display_name":"Object-oriented programming","score":0.5427219867706299},{"id":"https://openalex.org/keywords/overhead","display_name":"Overhead (engineering)","score":0.5199816823005676},{"id":"https://openalex.org/keywords/software-engineering","display_name":"Software engineering","score":0.3623947501182556},{"id":"https://openalex.org/keywords/embedded-system","display_name":"Embedded system","score":0.3424678444862366},{"id":"https://openalex.org/keywords/engineering","display_name":"Engineering","score":0.14345291256904602}],"concepts":[{"id":"https://openalex.org/C35390924","wikidata":"https://www.wikidata.org/wiki/Q661075","display_name":"Metaprogramming","level":2,"score":0.7896746397018433},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7794543504714966},{"id":"https://openalex.org/C2779478453","wikidata":"https://www.wikidata.org/wiki/Q6889748","display_name":"Modularity (biology)","level":2,"score":0.7615812420845032},{"id":"https://openalex.org/C118530786","wikidata":"https://www.wikidata.org/wiki/Q1134732","display_name":"Instrumentation (computer programming)","level":2,"score":0.7267942428588867},{"id":"https://openalex.org/C206588197","wikidata":"https://www.wikidata.org/wiki/Q846574","display_name":"Reuse","level":2,"score":0.6316579580307007},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.60614013671875},{"id":"https://openalex.org/C111335779","wikidata":"https://www.wikidata.org/wiki/Q3454686","display_name":"Reduction (mathematics)","level":2,"score":0.5587803721427917},{"id":"https://openalex.org/C73752529","wikidata":"https://www.wikidata.org/wiki/Q79872","display_name":"Object-oriented programming","level":2,"score":0.5427219867706299},{"id":"https://openalex.org/C2779960059","wikidata":"https://www.wikidata.org/wiki/Q7113681","display_name":"Overhead (engineering)","level":2,"score":0.5199816823005676},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.3623947501182556},{"id":"https://openalex.org/C149635348","wikidata":"https://www.wikidata.org/wiki/Q193040","display_name":"Embedded system","level":1,"score":0.3424678444862366},{"id":"https://openalex.org/C127413603","wikidata":"https://www.wikidata.org/wiki/Q11023","display_name":"Engineering","level":0,"score":0.14345291256904602},{"id":"https://openalex.org/C2524010","wikidata":"https://www.wikidata.org/wiki/Q8087","display_name":"Geometry","level":1,"score":0.0},{"id":"https://openalex.org/C54355233","wikidata":"https://www.wikidata.org/wiki/Q7162","display_name":"Genetics","level":1,"score":0.0},{"id":"https://openalex.org/C548081761","wikidata":"https://www.wikidata.org/wiki/Q180388","display_name":"Waste management","level":1,"score":0.0},{"id":"https://openalex.org/C86803240","wikidata":"https://www.wikidata.org/wiki/Q420","display_name":"Biology","level":0,"score":0.0},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.0}],"mesh":[],"locations_count":3,"locations":[{"id":"doi:10.1145/2658761.2658777","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2658761.2658777","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2014 International Conference on Generative Programming: Concepts and Experiences","raw_type":"proceedings-article"},{"id":"pmh:oai:scholarworks.iupui.edu:1805/8807","is_oa":true,"landing_page_url":"http://hdl.handle.net/1805/8807","pdf_url":"https://scholarworks.indianapolis.iu.edu/bitstreams/8530d862-4d36-4ea6-b500-6edaaf9e37bd/download","source":{"id":"https://openalex.org/S4306400987","display_name":"IUScholarWorks (Indiana University)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I592451","host_organization_name":"Indiana University","host_organization_lineage":["https://openalex.org/I592451"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Author","raw_type":"Conference proceedings"},{"id":"pmh:oai:scholarworks.indianapolis.iu.edu:1805/8807","is_oa":false,"landing_page_url":"https://hdl.handle.net/1805/8807","pdf_url":null,"source":{"id":"https://openalex.org/S4306400987","display_name":"IUScholarWorks (Indiana University)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I592451","host_organization_name":"Indiana University","host_organization_lineage":["https://openalex.org/I592451"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Author","raw_type":"Conference proceedings"}],"best_oa_location":{"id":"pmh:oai:scholarworks.iupui.edu:1805/8807","is_oa":true,"landing_page_url":"http://hdl.handle.net/1805/8807","pdf_url":"https://scholarworks.indianapolis.iu.edu/bitstreams/8530d862-4d36-4ea6-b500-6edaaf9e37bd/download","source":{"id":"https://openalex.org/S4306400987","display_name":"IUScholarWorks (Indiana University)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I592451","host_organization_name":"Indiana University","host_organization_lineage":["https://openalex.org/I592451"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Author","raw_type":"Conference proceedings"},"sustainable_development_goals":[{"score":0.6499999761581421,"display_name":"Quality Education","id":"https://metadata.un.org/sdg/4"}],"awards":[],"funders":[],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W1991169034.pdf","grobid_xml":"https://content.openalex.org/works/W1991169034.grobid-xml"},"referenced_works_count":27,"referenced_works":["https://openalex.org/W70764853","https://openalex.org/W148956775","https://openalex.org/W1487083903","https://openalex.org/W1500250067","https://openalex.org/W1517055698","https://openalex.org/W1527417319","https://openalex.org/W1593452780","https://openalex.org/W1598340254","https://openalex.org/W1649645444","https://openalex.org/W1964962870","https://openalex.org/W2012431717","https://openalex.org/W2060742374","https://openalex.org/W2086010014","https://openalex.org/W2086302980","https://openalex.org/W2114327031","https://openalex.org/W2134633067","https://openalex.org/W2146645075","https://openalex.org/W2156858199","https://openalex.org/W2160468841","https://openalex.org/W2161992906","https://openalex.org/W2495379632","https://openalex.org/W3145100113","https://openalex.org/W4239035626","https://openalex.org/W4285719527","https://openalex.org/W6606033369","https://openalex.org/W6681512207","https://openalex.org/W6986968487"],"related_works":["https://openalex.org/W1535662243","https://openalex.org/W625823274","https://openalex.org/W4250237241","https://openalex.org/W2911299945","https://openalex.org/W2098575713","https://openalex.org/W4230687177","https://openalex.org/W1974524353","https://openalex.org/W123754615","https://openalex.org/W1968829728","https://openalex.org/W84865526"],"abstract_inverted_index":{"This":[0],"paper":[1],"presents":[2],"a":[3,39,60],"framework":[4,11],"named":[5,29],"Pin++.":[6],"Pin++":[7,34,57],"is":[8,35],"an":[9],"object-oriented":[10],"that":[12,53],"uses":[13],"template":[14],"metaprogramming":[15],"to":[16,36,70],"implement":[17],"Pintools,":[18],"which":[19],"are":[20],"analysis":[21],"tools":[22],"for":[23],"the":[24],"dynamic":[25],"binary":[26],"instrumentation":[27,74],"tool":[28],"Pin.":[30],"The":[31],"goal":[32],"of":[33,44],"simplify":[37],"programming":[38],"Pintool":[40],"and":[41,68],"promote":[42],"reuse":[43],"its":[45,66],"components":[46],"across":[47],"different":[48],"Pintools.":[49],"Our":[50],"results":[51],"show":[52],"Pintools":[54],"implemented":[55],"using":[56],"can":[58],"have":[59],"54%":[61],"reduction":[62,72],"in":[63,73],"complexity,":[64],"increase":[65],"modularity,":[67],"up":[69],"60%":[71],"overhead.":[75]},"counts_by_year":[{"year":2024,"cited_by_count":1},{"year":2021,"cited_by_count":2},{"year":2020,"cited_by_count":3},{"year":2017,"cited_by_count":1},{"year":2016,"cited_by_count":1}],"updated_date":"2026-03-21T08:13:44.787528","created_date":"2025-10-10T00:00:00"}
