{"id":"https://openalex.org/W2537376145","doi":"https://doi.org/10.1145/2984043.2998541","title":"Flexible initialization of immutable objects","display_name":"Flexible initialization of immutable objects","publication_year":2016,"publication_date":"2016-10-20","ids":{"openalex":"https://openalex.org/W2537376145","doi":"https://doi.org/10.1145/2984043.2998541","mag":"2537376145"},"language":"en","primary_location":{"id":"doi:10.1145/2984043.2998541","is_oa":true,"landing_page_url":"https://doi.org/10.1145/2984043.2998541","pdf_url":"http://dl.acm.org/ft_gateway.cfm?id=2998541&type=pdf","source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Companion Proceedings of the 2016 ACM SIGPLAN International Conference on Systems, Programming, Languages and Applications: Software for Humanity","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"gold","oa_url":"http://dl.acm.org/ft_gateway.cfm?id=2998541&type=pdf","any_repository_has_fulltext":null},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5089448789","display_name":"Tyler Etzel","orcid":null},"institutions":[{"id":"https://openalex.org/I205783295","display_name":"Cornell University","ror":"https://ror.org/05bnh6r87","country_code":"US","type":"education","lineage":["https://openalex.org/I205783295"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Tyler Etzel","raw_affiliation_strings":["Cornell University, USA"],"affiliations":[{"raw_affiliation_string":"Cornell University, USA","institution_ids":["https://openalex.org/I205783295"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":["https://openalex.org/A5089448789"],"corresponding_institution_ids":["https://openalex.org/I205783295"],"apc_list":null,"apc_paid":null,"fwci":0.0,"has_fulltext":true,"cited_by_count":0,"citation_normalized_percentile":{"value":0.0690802,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"first_page":"53","last_page":"54"},"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.9943000078201294,"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/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9937000274658203,"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/immutability","display_name":"Immutability","score":0.983418345451355},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8335219621658325},{"id":"https://openalex.org/keywords/initialization","display_name":"Initialization","score":0.8088202476501465},{"id":"https://openalex.org/keywords/correctness","display_name":"Correctness","score":0.8064032196998596},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.6580143570899963},{"id":"https://openalex.org/keywords/object","display_name":"Object (grammar)","score":0.596723735332489},{"id":"https://openalex.org/keywords/java","display_name":"Java","score":0.5523090958595276},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.4819616973400116},{"id":"https://openalex.org/keywords/serialization","display_name":"Serialization","score":0.4811374247074127},{"id":"https://openalex.org/keywords/inheritance","display_name":"Inheritance (genetic algorithm)","score":0.4189490079879761},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.4086417555809021},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.2123607099056244}],"concepts":[{"id":"https://openalex.org/C2776126399","wikidata":"https://www.wikidata.org/wiki/Q3942906","display_name":"Immutability","level":3,"score":0.983418345451355},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8335219621658325},{"id":"https://openalex.org/C114466953","wikidata":"https://www.wikidata.org/wiki/Q6034165","display_name":"Initialization","level":2,"score":0.8088202476501465},{"id":"https://openalex.org/C55439883","wikidata":"https://www.wikidata.org/wiki/Q360812","display_name":"Correctness","level":2,"score":0.8064032196998596},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6580143570899963},{"id":"https://openalex.org/C2781238097","wikidata":"https://www.wikidata.org/wiki/Q175026","display_name":"Object (grammar)","level":2,"score":0.596723735332489},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.5523090958595276},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.4819616973400116},{"id":"https://openalex.org/C52723943","wikidata":"https://www.wikidata.org/wiki/Q1127410","display_name":"Serialization","level":2,"score":0.4811374247074127},{"id":"https://openalex.org/C2780902518","wikidata":"https://www.wikidata.org/wiki/Q6033780","display_name":"Inheritance (genetic algorithm)","level":3,"score":0.4189490079879761},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.4086417555809021},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.2123607099056244},{"id":"https://openalex.org/C38652104","wikidata":"https://www.wikidata.org/wiki/Q3510521","display_name":"Computer security","level":1,"score":0.0},{"id":"https://openalex.org/C2779687700","wikidata":"https://www.wikidata.org/wiki/Q20514253","display_name":"Blockchain","level":2,"score":0.0},{"id":"https://openalex.org/C55493867","wikidata":"https://www.wikidata.org/wiki/Q7094","display_name":"Biochemistry","level":1,"score":0.0},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.0},{"id":"https://openalex.org/C104317684","wikidata":"https://www.wikidata.org/wiki/Q7187","display_name":"Gene","level":2,"score":0.0},{"id":"https://openalex.org/C185592680","wikidata":"https://www.wikidata.org/wiki/Q2329","display_name":"Chemistry","level":0,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/2984043.2998541","is_oa":true,"landing_page_url":"https://doi.org/10.1145/2984043.2998541","pdf_url":"http://dl.acm.org/ft_gateway.cfm?id=2998541&type=pdf","source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Companion Proceedings of the 2016 ACM SIGPLAN International Conference on Systems, Programming, Languages and Applications: Software for Humanity","raw_type":"proceedings-article"}],"best_oa_location":{"id":"doi:10.1145/2984043.2998541","is_oa":true,"landing_page_url":"https://doi.org/10.1145/2984043.2998541","pdf_url":"http://dl.acm.org/ft_gateway.cfm?id=2998541&type=pdf","source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Companion Proceedings of the 2016 ACM SIGPLAN International Conference on Systems, Programming, Languages and Applications: Software for Humanity","raw_type":"proceedings-article"},"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G1295227451","display_name":null,"funder_award_id":"1560137","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"}],"funders":[{"id":"https://openalex.org/F4320306076","display_name":"National Science Foundation","ror":"https://ror.org/021nxhr62"}],"has_content":{"grobid_xml":true,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W2537376145.pdf","grobid_xml":"https://content.openalex.org/works/W2537376145.grobid-xml"},"referenced_works_count":7,"referenced_works":["https://openalex.org/W2065266923","https://openalex.org/W2067901725","https://openalex.org/W2116304133","https://openalex.org/W2120529639","https://openalex.org/W2137956345","https://openalex.org/W2368741442","https://openalex.org/W2505720433"],"related_works":["https://openalex.org/W1517747134","https://openalex.org/W2802479602","https://openalex.org/W4386576376","https://openalex.org/W1570380538","https://openalex.org/W3182748079","https://openalex.org/W2019522068","https://openalex.org/W2510867554","https://openalex.org/W1971699141","https://openalex.org/W3212423087","https://openalex.org/W2053237223"],"abstract_inverted_index":{"Immutability":[0],"is":[1,24,104,118],"a":[2,60,89],"valuable":[3],"feature":[4],"for":[5],"programmers":[6,28],"in":[7,129],"object-oriented":[8],"languages:":[9],"making":[10],"objects":[11,125],"immutable":[12,124],"often":[13],"simplifies":[14],"reasoning":[15],"about":[16],"the":[17,46],"correctness":[18],"of":[19,38,48,53,99],"code,":[20],"particularly":[21],"when":[22],"concurrency":[23],"present.":[25],"Java":[26],"allows":[27],"to":[29,94,131],"express":[30],"and":[31,51,68,77,97,108,121],"enforce":[32],"immutability":[33,67],"by":[34],"declaring":[35],"all":[36],"fields":[37],"an":[39],"object":[40],"\"final\",":[41],"but":[42],"this":[43,56,85],"comes":[44],"at":[45],"cost":[47],"decreased":[49],"expressiveness":[50],"intuitiveness":[52],"initialization.":[54,73],"In":[55],"work,":[57],"we":[58,75],"propose":[59,76],"minimalistic":[61],"type-based":[62],"mechanism":[63,86],"that":[64,87,123],"both":[65],"enforces":[66],"relaxes":[69],"these":[70],"constraints":[71],"on":[72,84],"Furthermore,":[74],"formalize":[78],"two":[79],"different":[80],"type":[81],"systems":[82],"based":[83],"form":[88],"meaningful":[90],"trade-off":[91],"with":[92],"respect":[93],"complexity,":[95],"expressiveness,":[96],"strength":[98],"static":[100],"guarantees.":[101],"System":[102,112],"One":[103],"simple,":[105],"more":[106,115],"expressive,":[107,120],"provides":[109],"object-level":[110],"immutability;":[111],"Two":[113],"has":[114],"complicated":[116],"annotation,":[117],"less":[119],"ensures":[122],"are":[126],"fully":[127],"initialized":[128],"addition":[130],"enforcing":[132],"immutability.":[133]},"counts_by_year":[],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
