{"id":"https://openalex.org/W4387674221","doi":"https://doi.org/10.1145/3622844","title":"Initializing Global Objects: Time and Order","display_name":"Initializing Global Objects: Time and Order","publication_year":2023,"publication_date":"2023-10-16","ids":{"openalex":"https://openalex.org/W4387674221","doi":"https://doi.org/10.1145/3622844"},"language":"en","primary_location":{"id":"doi:10.1145/3622844","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3622844","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3622844","source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"is_in_doaj":false,"is_core":true,"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":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"diamond","oa_url":"https://dl.acm.org/doi/pdf/10.1145/3622844","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5008375409","display_name":"Fengyun Liu","orcid":"https://orcid.org/0000-0001-7949-4303"},"institutions":[],"countries":[],"is_corresponding":true,"raw_author_name":"Fengyun Liu","raw_affiliation_strings":["Oracle Labs, Zurich, Switzerland"],"affiliations":[{"raw_affiliation_string":"Oracle Labs, Zurich, Switzerland","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5039616179","display_name":"Ond\u0159ej Lhot\u00e1k","orcid":"https://orcid.org/0000-0001-9066-1889"},"institutions":[{"id":"https://openalex.org/I151746483","display_name":"University of Waterloo","ror":"https://ror.org/01aff2v68","country_code":"CA","type":"education","lineage":["https://openalex.org/I151746483"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"Ond\u0159ej Lhot\u00e1k","raw_affiliation_strings":["University of Waterloo, Waterloo, Canada"],"affiliations":[{"raw_affiliation_string":"University of Waterloo, Waterloo, Canada","institution_ids":["https://openalex.org/I151746483"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5093070976","display_name":"David Hua","orcid":"https://orcid.org/0009-0004-1753-2975"},"institutions":[{"id":"https://openalex.org/I151746483","display_name":"University of Waterloo","ror":"https://ror.org/01aff2v68","country_code":"CA","type":"education","lineage":["https://openalex.org/I151746483"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"David Hua","raw_affiliation_strings":["University of Waterloo, Waterloo, Canada"],"affiliations":[{"raw_affiliation_string":"University of Waterloo, Waterloo, Canada","institution_ids":["https://openalex.org/I151746483"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5093070977","display_name":"Enze Xing","orcid":"https://orcid.org/0009-0008-1265-5254"},"institutions":[{"id":"https://openalex.org/I151746483","display_name":"University of Waterloo","ror":"https://ror.org/01aff2v68","country_code":"CA","type":"education","lineage":["https://openalex.org/I151746483"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"Enze Xing","raw_affiliation_strings":["University of Waterloo, Waterloo, Canada"],"affiliations":[{"raw_affiliation_string":"University of Waterloo, Waterloo, Canada","institution_ids":["https://openalex.org/I151746483"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":4,"corresponding_author_ids":["https://openalex.org/A5008375409"],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":0.0,"has_fulltext":true,"cited_by_count":0,"citation_normalized_percentile":{"value":0.13487545,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":null,"biblio":{"volume":"7","issue":"OOPSLA2","first_page":"1310","last_page":"1337"},"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.9998000264167786,"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.9998000264167786,"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/T10142","display_name":"Formal Methods in Verification","score":0.9980000257492065,"subfield":{"id":"https://openalex.org/subfields/1703","display_name":"Computational Theory and Mathematics"},"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.9968000054359436,"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/initialization","display_name":"Initialization","score":0.9524668455123901},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8256269097328186},{"id":"https://openalex.org/keywords/static-analysis","display_name":"Static analysis","score":0.5517086386680603},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.527855634689331},{"id":"https://openalex.org/keywords/scala","display_name":"Scala","score":0.4464516043663025},{"id":"https://openalex.org/keywords/programming-paradigm","display_name":"Programming paradigm","score":0.4364128112792969},{"id":"https://openalex.org/keywords/distributed-computing","display_name":"Distributed computing","score":0.3421856760978699},{"id":"https://openalex.org/keywords/java","display_name":"Java","score":0.10955363512039185}],"concepts":[{"id":"https://openalex.org/C114466953","wikidata":"https://www.wikidata.org/wiki/Q6034165","display_name":"Initialization","level":2,"score":0.9524668455123901},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8256269097328186},{"id":"https://openalex.org/C97686452","wikidata":"https://www.wikidata.org/wiki/Q7604153","display_name":"Static analysis","level":2,"score":0.5517086386680603},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.527855634689331},{"id":"https://openalex.org/C109701466","wikidata":"https://www.wikidata.org/wiki/Q460584","display_name":"Scala","level":3,"score":0.4464516043663025},{"id":"https://openalex.org/C34165917","wikidata":"https://www.wikidata.org/wiki/Q188267","display_name":"Programming paradigm","level":2,"score":0.4364128112792969},{"id":"https://openalex.org/C120314980","wikidata":"https://www.wikidata.org/wiki/Q180634","display_name":"Distributed computing","level":1,"score":0.3421856760978699},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.10955363512039185}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3622844","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3622844","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3622844","source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"is_in_doaj":false,"is_core":true,"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":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"}],"best_oa_location":{"id":"doi:10.1145/3622844","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3622844","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3622844","source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"is_in_doaj":false,"is_core":true,"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":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"},"sustainable_development_goals":[{"display_name":"Quality Education","score":0.7300000190734863,"id":"https://metadata.un.org/sdg/4"}],"awards":[{"id":"https://openalex.org/G2165548363","display_name":null,"funder_award_id":"Canada","funder_id":"https://openalex.org/F4320334593","funder_display_name":"Natural Sciences and Engineering Research Council of Canada"}],"funders":[{"id":"https://openalex.org/F4320334593","display_name":"Natural Sciences and Engineering Research Council of Canada","ror":"https://ror.org/01h531d29"}],"has_content":{"grobid_xml":true,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W4387674221.pdf","grobid_xml":"https://content.openalex.org/works/W4387674221.grobid-xml"},"referenced_works_count":14,"referenced_works":["https://openalex.org/W1856665305","https://openalex.org/W1872021412","https://openalex.org/W1967877062","https://openalex.org/W2065266923","https://openalex.org/W2128769069","https://openalex.org/W2159846532","https://openalex.org/W2560908054","https://openalex.org/W2738478951","https://openalex.org/W2979463730","https://openalex.org/W3010821527","https://openalex.org/W3123143760","https://openalex.org/W3206497677","https://openalex.org/W4251478049","https://openalex.org/W4307731883"],"related_works":["https://openalex.org/W3194225004","https://openalex.org/W3016342375","https://openalex.org/W795970866","https://openalex.org/W593478746","https://openalex.org/W2150010249","https://openalex.org/W2523702803","https://openalex.org/W2534451013","https://openalex.org/W171936820","https://openalex.org/W2156426055","https://openalex.org/W2751045514"],"abstract_inverted_index":{"Object-oriented":[0],"programming":[1,44,62],"has":[2],"been":[3],"bothered":[4],"by":[5,167],"an":[6,102],"awkward":[7],"feature":[8],"for":[9,91],"a":[10,59],"long":[11],"time:":[12],"static":[13,47,104,124],"members":[14,17,48],".":[15],"Static":[16],"not":[18],"only":[19],"compromise":[20],"the":[21,50,65,139,150,157],"conceptual":[22],"integrity":[23],"of":[24,67,110,126,141,159],"object-oriented":[25,61],"programming,":[26],"but":[27],"also":[28,122],"give":[29],"rise":[30],"to":[31,106,130,161],"subtle":[32],"initialization":[33,70,78,109,115,129],"errors,":[34],"such":[35],"as":[36,87],"reading":[37],"non-initialized":[38],"fields":[39],"and":[40,73,84,143,153,165],"deadlocks.":[41],"The":[42,120,134],"Scala":[43],"language":[45],"eliminated":[46],"from":[49,77],"language,":[51],"replacing":[52],"them":[53],"with":[54],"global":[55,68,93,111,127],"objects":[56,142],"that":[57],"present":[58],"unified":[60],"model.":[63],"However,":[64],"problem":[66],"object":[69,128],"remains":[71],"open,":[72],"programmers":[74],"still":[75],"suffer":[76],"errors.":[79],"We":[80],"propose":[81],"partial":[82],"ordering":[83],"initialization-time":[85],"irrelevance":[86],"two":[88],"fundamental":[89],"principles":[90],"initializing":[92],"objects.":[94],"Based":[95],"on":[96],"these":[97],"principles,":[98],"we":[99,155],"put":[100],"forward":[101],"effective":[103],"analysis":[105,121,135,151],"ensure":[107],"safe":[108],"objects,":[112],"which":[113],"eliminates":[114],"errors":[116],"at":[117,138],"compile":[118],"time.":[119],"enables":[123],"scheduling":[125],"avoid":[131],"runtime":[132],"overhead.":[133],"is":[136],"modular":[137],"granularity":[140],"it":[144],"avoids":[145],"whole-program":[146],"analysis.":[147],"To":[148],"make":[149,162],"explainable":[152],"tunable,":[154],"introduce":[156],"concept":[158],"regions":[160],"context-sensitivity":[163],"understandable":[164],"customizable":[166],"programmers.":[168]},"counts_by_year":[],"updated_date":"2026-04-10T15:06:20.359241","created_date":"2025-10-10T00:00:00"}
