{"id":"https://openalex.org/W4415746264","doi":"https://doi.org/10.1109/icsme64153.2025.00107","title":"JDala - A Simple Capability System for Java","display_name":"JDala - A Simple Capability System for Java","publication_year":2025,"publication_date":"2025-09-07","ids":{"openalex":"https://openalex.org/W4415746264","doi":"https://doi.org/10.1109/icsme64153.2025.00107"},"language":null,"primary_location":{"id":"doi:10.1109/icsme64153.2025.00107","is_oa":false,"landing_page_url":"https://doi.org/10.1109/icsme64153.2025.00107","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2025 IEEE International Conference on Software Maintenance and Evolution (ICSME)","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/A5120207596","display_name":"Quinten Smit","orcid":null},"institutions":[{"id":"https://openalex.org/I41156924","display_name":"Victoria University of Wellington","ror":"https://ror.org/0040r6f76","country_code":"NZ","type":"education","lineage":["https://openalex.org/I41156924"]}],"countries":["NZ"],"is_corresponding":true,"raw_author_name":"Quinten Smit","raw_affiliation_strings":["Victoria University of Wellington, School of Engineering and Computer Science,Wellington,New Zealand"],"affiliations":[{"raw_affiliation_string":"Victoria University of Wellington, School of Engineering and Computer Science,Wellington,New Zealand","institution_ids":["https://openalex.org/I41156924"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5075091948","display_name":"Jens Dietrich","orcid":"https://orcid.org/0000-0001-9019-6550"},"institutions":[{"id":"https://openalex.org/I41156924","display_name":"Victoria University of Wellington","ror":"https://ror.org/0040r6f76","country_code":"NZ","type":"education","lineage":["https://openalex.org/I41156924"]}],"countries":["NZ"],"is_corresponding":false,"raw_author_name":"Jens Dietrich","raw_affiliation_strings":["Victoria University of Wellington, School of Engineering and Computer Science,Wellington,New Zealand"],"affiliations":[{"raw_affiliation_string":"Victoria University of Wellington, School of Engineering and Computer Science,Wellington,New Zealand","institution_ids":["https://openalex.org/I41156924"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5013231053","display_name":"Michael Homer","orcid":"https://orcid.org/0000-0003-0280-6748"},"institutions":[{"id":"https://openalex.org/I41156924","display_name":"Victoria University of Wellington","ror":"https://ror.org/0040r6f76","country_code":"NZ","type":"education","lineage":["https://openalex.org/I41156924"]}],"countries":["NZ"],"is_corresponding":false,"raw_author_name":"Michael Homer","raw_affiliation_strings":["Victoria University of Wellington, School of Engineering and Computer Science,Wellington,New Zealand"],"affiliations":[{"raw_affiliation_string":"Victoria University of Wellington, School of Engineering and Computer Science,Wellington,New Zealand","institution_ids":["https://openalex.org/I41156924"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5107187262","display_name":"Andrew Fawcet","orcid":null},"institutions":[{"id":"https://openalex.org/I41156924","display_name":"Victoria University of Wellington","ror":"https://ror.org/0040r6f76","country_code":"NZ","type":"education","lineage":["https://openalex.org/I41156924"]}],"countries":["NZ"],"is_corresponding":false,"raw_author_name":"Andrew Fawcet","raw_affiliation_strings":["Victoria University of Wellington, School of Engineering and Computer Science,Wellington,New Zealand"],"affiliations":[{"raw_affiliation_string":"Victoria University of Wellington, School of Engineering and Computer Science,Wellington,New Zealand","institution_ids":["https://openalex.org/I41156924"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5078368556","display_name":"James Noble","orcid":"https://orcid.org/0000-0001-9036-5692"},"institutions":[{"id":"https://openalex.org/I1302741095","display_name":"Statistics New Zealand","ror":"https://ror.org/055qjgz33","country_code":"NZ","type":"government","lineage":["https://openalex.org/I1302741095","https://openalex.org/I2802073567"]}],"countries":["NZ"],"is_corresponding":false,"raw_author_name":"James Noble","raw_affiliation_strings":["Creative Research and Programming,Wellington,New Zealand"],"affiliations":[{"raw_affiliation_string":"Creative Research and Programming,Wellington,New Zealand","institution_ids":["https://openalex.org/I1302741095"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":5,"corresponding_author_ids":["https://openalex.org/A5120207596"],"corresponding_institution_ids":["https://openalex.org/I41156924"],"apc_list":null,"apc_paid":null,"fwci":0.0,"has_fulltext":false,"cited_by_count":0,"citation_normalized_percentile":{"value":0.17678197,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"first_page":"920","last_page":"924"},"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.6161999702453613,"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.6161999702453613,"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/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.14270000159740448,"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/T10772","display_name":"Distributed systems and fault tolerance","score":0.05139999836683273,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/immutability","display_name":"Immutability","score":0.8435999751091003},{"id":"https://openalex.org/keywords/java","display_name":"Java","score":0.6585000157356262},{"id":"https://openalex.org/keywords/bytecode","display_name":"Bytecode","score":0.621999979019165},{"id":"https://openalex.org/keywords/concurrency","display_name":"Concurrency","score":0.609499990940094},{"id":"https://openalex.org/keywords/simple","display_name":"Simple (philosophy)","score":0.6054999828338623},{"id":"https://openalex.org/keywords/java-modeling-language","display_name":"Java Modeling Language","score":0.4918000102043152},{"id":"https://openalex.org/keywords/real-time-java","display_name":"Real time Java","score":0.48010000586509705},{"id":"https://openalex.org/keywords/java-bytecode","display_name":"Java bytecode","score":0.4146000146865845},{"id":"https://openalex.org/keywords/java-applet","display_name":"Java applet","score":0.4020000100135803}],"concepts":[{"id":"https://openalex.org/C2776126399","wikidata":"https://www.wikidata.org/wiki/Q3942906","display_name":"Immutability","level":3,"score":0.8435999751091003},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.8205999732017517},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8034999966621399},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.6585000157356262},{"id":"https://openalex.org/C2779818221","wikidata":"https://www.wikidata.org/wiki/Q837330","display_name":"Bytecode","level":3,"score":0.621999979019165},{"id":"https://openalex.org/C193702766","wikidata":"https://www.wikidata.org/wiki/Q1414548","display_name":"Concurrency","level":2,"score":0.609499990940094},{"id":"https://openalex.org/C2780586882","wikidata":"https://www.wikidata.org/wiki/Q7520643","display_name":"Simple (philosophy)","level":2,"score":0.6054999828338623},{"id":"https://openalex.org/C60945770","wikidata":"https://www.wikidata.org/wiki/Q2517517","display_name":"Java Modeling Language","level":5,"score":0.4918000102043152},{"id":"https://openalex.org/C132106392","wikidata":"https://www.wikidata.org/wiki/Q1373903","display_name":"Real time Java","level":3,"score":0.48010000586509705},{"id":"https://openalex.org/C2777472213","wikidata":"https://www.wikidata.org/wiki/Q137496","display_name":"Java bytecode","level":5,"score":0.4146000146865845},{"id":"https://openalex.org/C15524039","wikidata":"https://www.wikidata.org/wiki/Q865817","display_name":"Java applet","level":3,"score":0.4020000100135803},{"id":"https://openalex.org/C172482141","wikidata":"https://www.wikidata.org/wiki/Q379273","display_name":"Generics in Java","level":5,"score":0.3718999922275543},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.3531999886035919},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.3434999883174896},{"id":"https://openalex.org/C168702491","wikidata":"https://www.wikidata.org/wiki/Q567345","display_name":"Java annotation","level":4,"score":0.328000009059906},{"id":"https://openalex.org/C206674616","wikidata":"https://www.wikidata.org/wiki/Q7038222","display_name":"Program Design Language","level":2,"score":0.32600000500679016},{"id":"https://openalex.org/C113843644","wikidata":"https://www.wikidata.org/wiki/Q901882","display_name":"Interface (matter)","level":4,"score":0.3093999922275543},{"id":"https://openalex.org/C174954855","wikidata":"https://www.wikidata.org/wiki/Q7623626","display_name":"strictfp","level":4,"score":0.3086000084877014},{"id":"https://openalex.org/C98183937","wikidata":"https://www.wikidata.org/wiki/Q2112188","display_name":"Program analysis","level":2,"score":0.3066999912261963},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.27950000762939453},{"id":"https://openalex.org/C145428669","wikidata":"https://www.wikidata.org/wiki/Q471748","display_name":"Exception handling","level":2,"score":0.27950000762939453},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.2784000039100647},{"id":"https://openalex.org/C3701939","wikidata":"https://www.wikidata.org/wiki/Q5159109","display_name":"Concurrent object-oriented programming","level":5,"score":0.2777999937534332},{"id":"https://openalex.org/C181907185","wikidata":"https://www.wikidata.org/wiki/Q1100098","display_name":"Java concurrency","level":4,"score":0.262800008058548},{"id":"https://openalex.org/C159023740","wikidata":"https://www.wikidata.org/wiki/Q623276","display_name":"Deadlock","level":2,"score":0.25999999046325684}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1109/icsme64153.2025.00107","is_oa":false,"landing_page_url":"https://doi.org/10.1109/icsme64153.2025.00107","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2025 IEEE International Conference on Software Maintenance and Evolution (ICSME)","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":28,"referenced_works":["https://openalex.org/W1189894384","https://openalex.org/W1552367747","https://openalex.org/W1580775943","https://openalex.org/W1784984667","https://openalex.org/W1819989006","https://openalex.org/W2000629861","https://openalex.org/W2069454232","https://openalex.org/W2077987280","https://openalex.org/W2090551028","https://openalex.org/W2101161997","https://openalex.org/W2136839747","https://openalex.org/W2138652462","https://openalex.org/W2140021378","https://openalex.org/W2149686793","https://openalex.org/W2153559293","https://openalex.org/W2158437127","https://openalex.org/W2159119750","https://openalex.org/W2246524736","https://openalex.org/W2361817505","https://openalex.org/W2606939423","https://openalex.org/W2973756486","https://openalex.org/W2997436116","https://openalex.org/W3092724436","https://openalex.org/W3206363762","https://openalex.org/W4224750722","https://openalex.org/W4247699568","https://openalex.org/W4402526895","https://openalex.org/W4411267093"],"related_works":[],"abstract_inverted_index":{"Dala":[0,18,40,51],"is":[1],"a":[2,45],"novel":[3],"capability-based":[4],"programming":[5,28],"model":[6],"that":[7,69],"ensures":[8],"data-race":[9],"freedom":[10],"while":[11],"also":[12],"supporting":[13],"efficient":[14],"inter-thread":[15],"communication.":[16],"While":[17],"has":[19],"been":[20],"designed":[21],"to":[22,55,75],"inform":[23],"the":[24,30,76],"design":[25,46],"of":[26,93],"future":[27],"languages,":[29],"question":[31],"arises":[32],"whether":[33],"existing":[34],"languages":[35],"can":[36,79],"be":[37],"retrofitted":[38],"with":[39],"capabilities.":[41],"We":[42],"report":[43],"such":[44],"called":[47],"JDala.":[48],"In":[49],"JDala,":[50],"capabilities":[52],"are":[53],"added":[54],"Java":[56,94],"using":[57,61],"annotations":[58,74],"and":[59,85],"interpreted":[60],"bytecode":[62],"instrumentation.":[63],"With":[64],"some":[65],"examples":[66],"we":[67,78],"demonstrate":[68],"by":[70],"adding":[71],"three":[72],"simple":[73],"language,":[77],"avoid":[80],"concurrency":[81],"bugs":[82],"like":[83],"deadlocks":[84],"unexpected":[86],"program":[87],"behaviour":[88],"resulting":[89],"from":[90],"shallow":[91],"immutability":[92],"standard":[95],"library":[96],"APIs.":[97],"JDala":[98],"demo:":[99],"https://youtu.be/QddK1q35h-U":[100]},"counts_by_year":[],"updated_date":"2026-03-07T16:01:11.037858","created_date":"2025-10-31T00:00:00"}
