{"id":"https://openalex.org/W3006817828","doi":"https://doi.org/10.1145/320385.320400","title":"Compositional pointer and escape analysis for Java programs","display_name":"Compositional pointer and escape analysis for Java programs","publication_year":1999,"publication_date":"1999-10-01","ids":{"openalex":"https://openalex.org/W3006817828","doi":"https://doi.org/10.1145/320385.320400","mag":"3006817828"},"language":"en","primary_location":{"id":"doi:10.1145/320385.320400","doi":"https://doi.org/10.1145/320385.320400","is_oa":true,"landing_page_url":"https://doi.org/10.1145/320385.320400","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/320385.320400","source":{"id":"https://openalex.org/S148324379","display_name":"ACM SIGPLAN Notices","issn_l":"0362-1340","issn":["0362-1340","1558-1160"],"is_oa":false,"is_in_doaj":false,"is_core":true,"listed_in":["cwts-core"],"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"ACM SIGPLAN Notices","raw_type":"journal-article"},"volume":null,"type":"article","is_traditional":true,"indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"bronze","oa_url":"https://dl.acm.org/doi/pdf/10.1145/320385.320400","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5038224513","display_name":"John Whaley","orcid":"https://orcid.org/0000-0003-1441-6982","observed_orcids":["https://orcid.org/0000-0003-1441-6982"]},"institutions":[{"id":"https://openalex.org/I63966007","display_name":"Massachusetts Institute of Technology","ror":"https://ror.org/042nb2s44","country_code":"US","type":"education","lineage":["https://openalex.org/I63966007"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"John Whaley","raw_affiliation_strings":["Laboratory for Computer Science, Massachusetts Institute of Technology, Cambridge, MA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Laboratory for Computer Science, Massachusetts Institute of Technology, Cambridge, MA","institution_ids":["https://openalex.org/I63966007"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5045127387","display_name":"Martin Rinard","orcid":"https://orcid.org/0000-0001-8095-8523","observed_orcids":["https://orcid.org/0000-0001-8095-8523"]},"institutions":[{"id":"https://openalex.org/I63966007","display_name":"Massachusetts Institute of Technology","ror":"https://ror.org/042nb2s44","country_code":"US","type":"education","lineage":["https://openalex.org/I63966007"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Martin Rinard","raw_affiliation_strings":["Laboratory for Computer Science, Massachusetts Institute of Technology, Cambridge, MA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Laboratory for Computer Science, Massachusetts Institute of Technology, Cambridge, MA","institution_ids":["https://openalex.org/I63966007"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I63966007"],"apc_list":null,"apc_paid":null,"fwci":3.6206,"has_fulltext":true,"cited_by_count":64,"citation_normalized_percentile":{"value":0.92689601,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":88,"max":97},"biblio":{"volume":"34","issue":"10","first_page":"187","last_page":"206"},"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.9951000213623047,"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.9951000213623047,"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/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.003100000089034438,"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.00019999999494757503,"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/pointer-analysis","display_name":"pointer analysis","score":0.9890000224113464},{"id":"https://openalex.org/keywords/escape-analysis","display_name":"escape analysis","score":0.9940000176429749},{"id":"https://openalex.org/keywords/java-programs","display_name":"Java programs","score":0.8730000257492065},{"id":"https://openalex.org/keywords/synchronization-elimination","display_name":"synchronization elimination","score":0.6069999933242798},{"id":"https://openalex.org/keywords/stack-allocation","display_name":"stack allocation","score":0.9639999866485596},{"id":"https://openalex.org/keywords/object-allocation","display_name":"object allocation","score":0.6819999814033508},{"id":"https://openalex.org/keywords/static-analysis","display_name":"static analysis","score":0.49000000953674316}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.9017237424850464},{"id":"https://openalex.org/C150202949","wikidata":"https://www.wikidata.org/wiki/Q107602","display_name":"Pointer (user interface)","level":2,"score":0.709376871585846},{"id":"https://openalex.org/C134757568","wikidata":"https://www.wikidata.org/wiki/Q274089","display_name":"Heap (data structure)","level":2,"score":0.6959173679351807},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.6663082838058472},{"id":"https://openalex.org/C7263679","wikidata":"https://www.wikidata.org/wiki/Q5978076","display_name":"Pointer analysis","level":3,"score":0.6164387464523315},{"id":"https://openalex.org/C138101251","wikidata":"https://www.wikidata.org/wiki/Q213092","display_name":"Thread (computing)","level":2,"score":0.5757825374603271},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.5035848021507263},{"id":"https://openalex.org/C102379954","wikidata":"https://www.wikidata.org/wiki/Q2589940","display_name":"Call graph","level":2,"score":0.4981067180633545},{"id":"https://openalex.org/C132525143","wikidata":"https://www.wikidata.org/wiki/Q141488","display_name":"Graph","level":2,"score":0.45545050501823425},{"id":"https://openalex.org/C181907185","wikidata":"https://www.wikidata.org/wiki/Q1100098","display_name":"Java concurrency","level":4,"score":0.43920138478279114},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.4372675120830536},{"id":"https://openalex.org/C97686452","wikidata":"https://www.wikidata.org/wiki/Q7604153","display_name":"Static analysis","level":2,"score":0.4172842502593994},{"id":"https://openalex.org/C120314980","wikidata":"https://www.wikidata.org/wiki/Q180634","display_name":"Distributed computing","level":1,"score":0.34451839327812195},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.33359798789024353},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.3222590982913971},{"id":"https://openalex.org/C132106392","wikidata":"https://www.wikidata.org/wiki/Q1373903","display_name":"Real time Java","level":3,"score":0.19907811284065247},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.10835134983062744}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1145/320385.320400","doi":"https://doi.org/10.1145/320385.320400","is_oa":true,"landing_page_url":"https://doi.org/10.1145/320385.320400","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/320385.320400","source":{"id":"https://openalex.org/S148324379","display_name":"ACM SIGPLAN Notices","issn_l":"0362-1340","issn":["0362-1340","1558-1160"],"is_oa":false,"is_in_doaj":false,"is_core":true,"listed_in":["cwts-core"],"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"ACM SIGPLAN Notices","raw_type":"journal-article"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.81.2005","doi":null,"is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.81.2005","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"http://suif.stanford.edu/~jwhaley/papers/oopsla99.ps","raw_type":"text"}],"best_oa_location":{"id":"doi:10.1145/320385.320400","doi":"https://doi.org/10.1145/320385.320400","is_oa":true,"landing_page_url":"https://doi.org/10.1145/320385.320400","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/320385.320400","source":{"id":"https://openalex.org/S148324379","display_name":"ACM SIGPLAN Notices","issn_l":"0362-1340","issn":["0362-1340","1558-1160"],"is_oa":false,"is_in_doaj":false,"is_core":true,"listed_in":["cwts-core"],"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"ACM SIGPLAN Notices","raw_type":"journal-article"},"sustainable_development_goals":[],"study_designs":[],"awards":[],"funders":[],"has_content":{"grobid_xml":true,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W3006817828.pdf","grobid_xml":"https://content.openalex.org/works/W3006817828.grobid-xml"},"referenced_works_count":25,"referenced_works":["https://openalex.org/W1870721492","https://openalex.org/W1964647125","https://openalex.org/W1967544098","https://openalex.org/W1974604404","https://openalex.org/W1997474908","https://openalex.org/W1999637392","https://openalex.org/W2002771912","https://openalex.org/W2009911326","https://openalex.org/W2014530617","https://openalex.org/W2019448108","https://openalex.org/W2021920955","https://openalex.org/W2021986357","https://openalex.org/W2030697178","https://openalex.org/W2036719919","https://openalex.org/W2050320220","https://openalex.org/W2051020320","https://openalex.org/W2057375777","https://openalex.org/W2075872176","https://openalex.org/W2077102566","https://openalex.org/W2091547234","https://openalex.org/W2131135493","https://openalex.org/W2151360539","https://openalex.org/W2168822998","https://openalex.org/W2406738411","https://openalex.org/W2914074464"],"related_works":["https://openalex.org/W7097713046","https://openalex.org/W4230015257","https://openalex.org/W2004420781","https://openalex.org/W7098026567","https://openalex.org/W7096255237","https://openalex.org/W7099766980","https://openalex.org/W7000254828","https://openalex.org/W7064718096","https://openalex.org/W2095558030","https://openalex.org/W3003304722"],"abstract_inverted_index":{"This":[0],"paper":[1],"presents":[2],"a":[3],"combined":[4],"pointer":[5],"and":[6,29,111,152,167],"escape":[7,22,39,43,57,85,97],"analysis":[8],"algorithm":[9,14,65],"for":[10,80,102],"Java":[11],"programs.":[12],"The":[13,64],"is":[15,66],"based":[16],"on":[17,115],"the":[18,54,86,96,116,121,147,155,161,170],"abstraction":[19],"of":[20,53,72,119,135,137,149,154,164,169],"points-to":[21,38],"graphs,":[23],"which":[24,45],"characterize":[25],"how":[26,47],"local":[27],"variables":[28],"fields":[30],"in":[31,50,120],"objects":[32,48,81,103,114],"refer":[33],"to":[34,58,68,99,112,131],"other":[35],"objects.":[36,171],"Each":[37],"graph":[40],"also":[41,159],"contains":[42],"information,":[44],"characterizes":[46],"allocated":[49],"one":[51,109],"region":[52],"program":[55],"can":[56],"be":[59],"accessed":[60,106],"by":[61,107],"another":[62],"region.":[63],"designed":[67],"analyze":[69,132],"arbitrary":[70],"regions":[71],"complete":[73,78],"or":[74],"incomplete":[75],"programs,":[76,143],"obtaining":[77],"information":[79,98],"that":[82,94,104],"do":[83],"not":[84],"analyzed":[87],"regions.":[88],"We":[89,128],"have":[90],"developed":[91],"an":[92],"implementation":[93],"uses":[95],"eliminate":[100],"synchronization":[101,156],"are":[105,126],"only":[108],"thread":[110],"allocate":[113],"stack":[117,162],"instead":[118],"heap.":[122],"Our":[123],"experimental":[124],"results":[125],"encouraging.":[127],"were":[129],"able":[130],"programs":[133],"tens":[134],"thousands":[136],"lines":[138],"long.":[139],"For":[140],"our":[141,144],"benchmark":[142],"algorithms":[145],"enable":[146,160],"elimination":[148],"between":[150,165],"24%":[151],"67%":[153],"operations.":[157],"They":[158],"allocation":[163],"22%":[166],"95%":[168]},"counts_by_year":[{"year":2025,"cited_by_count":1},{"year":2024,"cited_by_count":1},{"year":2021,"cited_by_count":2},{"year":2020,"cited_by_count":1},{"year":2019,"cited_by_count":4},{"year":2018,"cited_by_count":1},{"year":2017,"cited_by_count":2},{"year":2016,"cited_by_count":1},{"year":2015,"cited_by_count":1},{"year":2014,"cited_by_count":1},{"year":2013,"cited_by_count":4},{"year":2012,"cited_by_count":4}],"updated_date":"2026-11-07T11:25:07.637180","created_date":"2020-03-06T00:00:00"}
