{"id":"https://openalex.org/W2515889163","doi":"https://doi.org/10.1145/2972206.2972216","title":"Dependency Safety for Java","display_name":"Dependency Safety for Java","publication_year":2016,"publication_date":"2016-08-15","ids":{"openalex":"https://openalex.org/W2515889163","doi":"https://doi.org/10.1145/2972206.2972216","mag":"2515889163"},"language":"en","primary_location":{"id":"doi:10.1145/2972206.2972216","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2972206.2972216","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 13th International Conference on Principles and Practices of Programming on the Java Platform: Virtual Machines, Languages, and Tools","raw_type":"proceedings-article"},"type":"conference-paper","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/A5077791579","display_name":"Dragan Bo\u0161na\u010dki","orcid":"https://orcid.org/0000-0003-4371-4436"},"institutions":[{"id":"https://openalex.org/I83019370","display_name":"Eindhoven University of Technology","ror":"https://ror.org/02c2kyt77","country_code":"NL","type":"education","lineage":["https://openalex.org/I83019370"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Dragan Bo\u0161na\u010dki","raw_affiliation_strings":["Eindhoven University of Technology, MB Eindhoven, The Netherlands"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Eindhoven University of Technology, MB Eindhoven, The Netherlands","institution_ids":["https://openalex.org/I83019370"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5029542014","display_name":"Mark van den Brand","orcid":"https://orcid.org/0000-0003-3529-6182"},"institutions":[{"id":"https://openalex.org/I83019370","display_name":"Eindhoven University of Technology","ror":"https://ror.org/02c2kyt77","country_code":"NL","type":"education","lineage":["https://openalex.org/I83019370"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Mark van den Brand","raw_affiliation_strings":["Eindhoven University of Technology, MB Eindhoven, The Netherlands"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Eindhoven University of Technology, MB Eindhoven, The Netherlands","institution_ids":["https://openalex.org/I83019370"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5086941445","display_name":"Philippe Denissen","orcid":null},"institutions":[{"id":"https://openalex.org/I83019370","display_name":"Eindhoven University of Technology","ror":"https://ror.org/02c2kyt77","country_code":"NL","type":"education","lineage":["https://openalex.org/I83019370"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Philippe Denissen","raw_affiliation_strings":["Eindhoven University of Technology, MB Eindhoven, The Netherlands"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Eindhoven University of Technology, MB Eindhoven, The Netherlands","institution_ids":["https://openalex.org/I83019370"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5076427145","display_name":"Cornelis Huizing","orcid":null},"institutions":[{"id":"https://openalex.org/I83019370","display_name":"Eindhoven University of Technology","ror":"https://ror.org/02c2kyt77","country_code":"NL","type":"education","lineage":["https://openalex.org/I83019370"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Cornelis Huizing","raw_affiliation_strings":["Eindhoven University of Technology, MB Eindhoven, The Netherlands"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Eindhoven University of Technology, MB Eindhoven, The Netherlands","institution_ids":["https://openalex.org/I83019370"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5042359645","display_name":"Bart Jacobs","orcid":"https://orcid.org/0000-0002-3605-249X"},"institutions":[{"id":"https://openalex.org/I99464096","display_name":"KU Leuven","ror":"https://ror.org/05f950310","country_code":"BE","type":"education","lineage":["https://openalex.org/I99464096"]}],"countries":["BE"],"is_corresponding":false,"raw_author_name":"Bart Jacobs","raw_affiliation_strings":["Katholieke Universiteit Leuven, Leuven, Belgium"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Katholieke Universiteit Leuven, Leuven, Belgium","institution_ids":["https://openalex.org/I99464096"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5008245367","display_name":"Ruurd Kuiper","orcid":null},"institutions":[{"id":"https://openalex.org/I83019370","display_name":"Eindhoven University of Technology","ror":"https://ror.org/02c2kyt77","country_code":"NL","type":"education","lineage":["https://openalex.org/I83019370"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Ruurd Kuiper","raw_affiliation_strings":["Eindhoven University of Technology, MB Eindhoven, The Netherlands"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Eindhoven University of Technology, MB Eindhoven, The Netherlands","institution_ids":["https://openalex.org/I83019370"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5036964869","display_name":"Anton Wijs","orcid":"https://orcid.org/0000-0002-2071-9624"},"institutions":[{"id":"https://openalex.org/I83019370","display_name":"Eindhoven University of Technology","ror":"https://ror.org/02c2kyt77","country_code":"NL","type":"education","lineage":["https://openalex.org/I83019370"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Anton Wijs","raw_affiliation_strings":["Eindhoven University of Technology, MB Eindhoven, The Netherlands"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Eindhoven University of Technology, MB Eindhoven, The Netherlands","institution_ids":["https://openalex.org/I83019370"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5072897047","display_name":"Maciej Wi\u0142kowski","orcid":null},"institutions":[{"id":"https://openalex.org/I83019370","display_name":"Eindhoven University of Technology","ror":"https://ror.org/02c2kyt77","country_code":"NL","type":"education","lineage":["https://openalex.org/I83019370"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Maciej Wi\u0142kowski","raw_affiliation_strings":["Eindhoven University of Technology, MB Eindhoven, The Netherlands"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Eindhoven University of Technology, MB Eindhoven, The Netherlands","institution_ids":["https://openalex.org/I83019370"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5100456014","display_name":"Dan Zhang","orcid":"https://orcid.org/0000-0002-1183-2166"},"institutions":[{"id":"https://openalex.org/I83019370","display_name":"Eindhoven University of Technology","ror":"https://ror.org/02c2kyt77","country_code":"NL","type":"education","lineage":["https://openalex.org/I83019370"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Dan Zhang","raw_affiliation_strings":["Eindhoven University of Technology, MB Eindhoven, The Netherlands"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Eindhoven University of Technology, MB Eindhoven, The Netherlands","institution_ids":["https://openalex.org/I83019370"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":2,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":0.2525,"has_fulltext":false,"cited_by_count":3,"citation_normalized_percentile":{"value":0.40521523,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":90,"max":95},"biblio":{"volume":null,"issue":null,"first_page":"1","last_page":"6"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10772","display_name":"Distributed systems and fault tolerance","score":0.9997000098228455,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"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/T10772","display_name":"Distributed systems and fault tolerance","score":0.9997000098228455,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"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.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/T11424","display_name":"Security and Verification in Computing","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"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8581284284591675},{"id":"https://openalex.org/keywords/java","display_name":"Java","score":0.8129146099090576},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.7630656957626343},{"id":"https://openalex.org/keywords/exception-handling","display_name":"Exception handling","score":0.6878032684326172},{"id":"https://openalex.org/keywords/scala","display_name":"Scala","score":0.6678345203399658},{"id":"https://openalex.org/keywords/dependency","display_name":"Dependency (UML)","score":0.6074305772781372},{"id":"https://openalex.org/keywords/generics-in-java","display_name":"Generics in Java","score":0.5931674838066101},{"id":"https://openalex.org/keywords/thread","display_name":"Thread (computing)","score":0.5568618178367615},{"id":"https://openalex.org/keywords/java-modeling-language","display_name":"Java Modeling Language","score":0.530856192111969},{"id":"https://openalex.org/keywords/real-time-java","display_name":"Real time Java","score":0.4854493737220764},{"id":"https://openalex.org/keywords/asynchronous-communication","display_name":"Asynchronous communication","score":0.48055675625801086},{"id":"https://openalex.org/keywords/java-concurrency","display_name":"Java concurrency","score":0.4590514898300171},{"id":"https://openalex.org/keywords/java-annotation","display_name":"Java annotation","score":0.4341379702091217},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.3312245011329651},{"id":"https://openalex.org/keywords/software-engineering","display_name":"Software engineering","score":0.24849462509155273}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8581284284591675},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.8129146099090576},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.7630656957626343},{"id":"https://openalex.org/C145428669","wikidata":"https://www.wikidata.org/wiki/Q471748","display_name":"Exception handling","level":2,"score":0.6878032684326172},{"id":"https://openalex.org/C109701466","wikidata":"https://www.wikidata.org/wiki/Q460584","display_name":"Scala","level":3,"score":0.6678345203399658},{"id":"https://openalex.org/C19768560","wikidata":"https://www.wikidata.org/wiki/Q320727","display_name":"Dependency (UML)","level":2,"score":0.6074305772781372},{"id":"https://openalex.org/C172482141","wikidata":"https://www.wikidata.org/wiki/Q379273","display_name":"Generics in Java","level":5,"score":0.5931674838066101},{"id":"https://openalex.org/C138101251","wikidata":"https://www.wikidata.org/wiki/Q213092","display_name":"Thread (computing)","level":2,"score":0.5568618178367615},{"id":"https://openalex.org/C60945770","wikidata":"https://www.wikidata.org/wiki/Q2517517","display_name":"Java Modeling Language","level":5,"score":0.530856192111969},{"id":"https://openalex.org/C132106392","wikidata":"https://www.wikidata.org/wiki/Q1373903","display_name":"Real time Java","level":3,"score":0.4854493737220764},{"id":"https://openalex.org/C151319957","wikidata":"https://www.wikidata.org/wiki/Q752739","display_name":"Asynchronous communication","level":2,"score":0.48055675625801086},{"id":"https://openalex.org/C181907185","wikidata":"https://www.wikidata.org/wiki/Q1100098","display_name":"Java concurrency","level":4,"score":0.4590514898300171},{"id":"https://openalex.org/C168702491","wikidata":"https://www.wikidata.org/wiki/Q567345","display_name":"Java annotation","level":4,"score":0.4341379702091217},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.3312245011329651},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.24849462509155273},{"id":"https://openalex.org/C31258907","wikidata":"https://www.wikidata.org/wiki/Q1301371","display_name":"Computer network","level":1,"score":0.0}],"mesh":[],"locations_count":3,"locations":[{"id":"doi:10.1145/2972206.2972216","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2972206.2972216","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 13th International Conference on Principles and Practices of Programming on the Java Platform: Virtual Machines, Languages, and Tools","raw_type":"proceedings-article"},{"id":"pmh:oai:pure.tue.nl:openaire_cris_publications/f14a7715-5998-42cf-b622-6f52da19d533","is_oa":false,"landing_page_url":"https://research.tue.nl/en/publications/f14a7715-5998-42cf-b622-6f52da19d533","pdf_url":null,"source":{"id":"https://openalex.org/S4406922641","display_name":"TU/e Research Portal","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":null,"raw_type":"info:eu-repo/semantics/conferenceObject"},{"id":"pmh:tue:oai:pure.tue.nl:publications/f14a7715-5998-42cf-b622-6f52da19d533","is_oa":false,"landing_page_url":"https://research.tue.nl/nl/publications/f14a7715-5998-42cf-b622-6f52da19d533","pdf_url":null,"source":{"id":"https://openalex.org/S4306401843","display_name":"Data Archiving and Networked Services (DANS)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I1322597698","host_organization_name":"Royal Netherlands Academy of Arts and Sciences","host_organization_lineage":["https://openalex.org/I1322597698"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"PPPJ '16 Proceedings of the 13th International Conference on Principles and Practices of Programming on the Java Platform: Virtual Machines, Languages, and Tools","raw_type":"info:eu-repo/semantics/conferencepaper"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":18,"referenced_works":["https://openalex.org/W1540451676","https://openalex.org/W1572739102","https://openalex.org/W1779857600","https://openalex.org/W1824907219","https://openalex.org/W1982969403","https://openalex.org/W2006529251","https://openalex.org/W2054662207","https://openalex.org/W2058462646","https://openalex.org/W2092911542","https://openalex.org/W2122328859","https://openalex.org/W2138247393","https://openalex.org/W2144839870","https://openalex.org/W2158362393","https://openalex.org/W2346634105","https://openalex.org/W2526821177","https://openalex.org/W4251106922","https://openalex.org/W6636988782","https://openalex.org/W6638661039"],"related_works":["https://openalex.org/W2541866089","https://openalex.org/W2035709547","https://openalex.org/W2547095320","https://openalex.org/W2181544444","https://openalex.org/W3172992491","https://openalex.org/W1572758480","https://openalex.org/W1519944186","https://openalex.org/W321450354","https://openalex.org/W1967435589","https://openalex.org/W2141029595"],"abstract_inverted_index":{"Exception":[0],"mechanisms":[1,42],"help":[2],"to":[3,54,102,146],"ensure":[4],"that":[5,22,127,134,165],"a":[6,51,68,120],"program":[7],"satisfies":[8],"the":[9,25,36,39,84,92,100,107,139,152,161,168],"important":[10],"robustness":[11],"criterion":[12],"of":[13,78,86,88,123],"dependency":[14,56,63],"safety:":[15],"if":[16],"an":[17,76,104,158],"operation":[18],"fails,":[19],"no":[20],"code":[21,149],"depends":[23],"on":[24],"operation's":[26],"successful":[27],"completion":[28],"is":[29,128],"executed":[30],"anymore":[31],"nor":[32],"will":[33],"wait":[34],"for":[35,65],"completion.":[37],"However,":[38],"exception":[40,137],"handling":[41],"available":[43],"in":[44,67,80,113,125],"languages":[45],"like":[46],"Java":[47,66,126,162],"do":[48],"not":[49],"provide":[50,103,157],"structured":[52],"way":[53],"achieve":[55],"safety.":[57],"The":[58],"language":[59],"extension":[60],"failbox":[61,79,93,124],"provides":[62],"safety":[64],"compositional":[69],"manner.":[70],"So":[71],"far,":[72],"there":[73],"only":[74,147],"exists":[75],"implementation":[77,105,159],"Scala.":[81],"It":[82],"requires":[83],"assumption":[85,141],"absence":[87],"asynchronous":[89],"exceptions":[90],"inside":[91],"code.":[94],"In":[95],"this":[96,111],"paper,":[97],"we":[98,116,132,156],"are":[99],"first":[101],"without":[106],"above":[108],"mentioned":[109],"assumption,":[110],"time":[112],"Java.":[114],"First,":[115],"present":[117],"and":[118],"discuss":[119],"direct":[121],"reimplementation":[122],"still":[129],"restricted.":[130],"Then,":[131],"show":[133],"using":[135,160],"uncaught":[136],"handlers":[138],"earlier":[140],"can":[142],"be":[143],"essentially":[144],"weakened":[145],"concern":[148],"before":[150],"setting":[151],"thread":[153],"handler.":[154],"Finally,":[155],"native":[163],"interface":[164],"completely":[166],"removes":[167],"assumption.":[169]},"counts_by_year":[{"year":2025,"cited_by_count":1},{"year":2024,"cited_by_count":1},{"year":2019,"cited_by_count":1}],"updated_date":"2026-07-29T14:22:42.915294","created_date":"2025-10-10T00:00:00"}
