{"id":"https://openalex.org/W2534191701","doi":"https://doi.org/10.1145/2993236.2993238","title":"Classless Java","display_name":"Classless Java","publication_year":2016,"publication_date":"2016-10-20","ids":{"openalex":"https://openalex.org/W2534191701","doi":"https://doi.org/10.1145/2993236.2993238","mag":"2534191701"},"language":"en","primary_location":{"id":"doi:10.1145/2993236.2993238","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2993236.2993238","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2016 ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences","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/A5100350708","display_name":"Yanlin Wang","orcid":"https://orcid.org/0000-0001-7761-7269"},"institutions":[{"id":"https://openalex.org/I889458895","display_name":"University of Hong Kong","ror":"https://ror.org/02zhqgq86","country_code":"HK","type":"education","lineage":["https://openalex.org/I889458895"]}],"countries":["HK"],"is_corresponding":false,"raw_author_name":"Yanlin Wang","raw_affiliation_strings":["University of Hong Kong, China"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Hong Kong, China","institution_ids":["https://openalex.org/I889458895"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5101851828","display_name":"Haoyuan Zhang","orcid":"https://orcid.org/0000-0002-0629-9096"},"institutions":[{"id":"https://openalex.org/I889458895","display_name":"University of Hong Kong","ror":"https://ror.org/02zhqgq86","country_code":"HK","type":"education","lineage":["https://openalex.org/I889458895"]}],"countries":["HK"],"is_corresponding":false,"raw_author_name":"Haoyuan Zhang","raw_affiliation_strings":["University of Hong Kong, China"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Hong Kong, China","institution_ids":["https://openalex.org/I889458895"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5049714036","display_name":"Bruno C. d. S. Oliveira","orcid":"https://orcid.org/0000-0002-1846-7210"},"institutions":[{"id":"https://openalex.org/I889458895","display_name":"University of Hong Kong","ror":"https://ror.org/02zhqgq86","country_code":"HK","type":"education","lineage":["https://openalex.org/I889458895"]}],"countries":["HK"],"is_corresponding":false,"raw_author_name":"Bruno C. d. S. Oliveira","raw_affiliation_strings":["University of Hong Kong, China"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Hong Kong, China","institution_ids":["https://openalex.org/I889458895"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5083585434","display_name":"Marco Servetto","orcid":"https://orcid.org/0000-0003-1458-2868"},"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":"Marco Servetto","raw_affiliation_strings":["Victoria University of Wellington, New Zealand"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Victoria University of Wellington, New Zealand","institution_ids":["https://openalex.org/I41156924"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":4,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":0.4416,"has_fulltext":false,"cited_by_count":1,"citation_normalized_percentile":{"value":0.79878168,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":90,"max":94},"biblio":{"volume":null,"issue":null,"first_page":"14","last_page":"24"},"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.9987999796867371,"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.9987999796867371,"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/T10639","display_name":"Advanced Software Engineering Methodologies","score":0.9976999759674072,"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/T10260","display_name":"Software Engineering Research","score":0.9959999918937683,"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/computer-science","display_name":"Computer science","score":0.8733913898468018},{"id":"https://openalex.org/keywords/java","display_name":"Java","score":0.83575838804245},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.777011513710022},{"id":"https://openalex.org/keywords/generics-in-java","display_name":"Generics in Java","score":0.7233531475067139},{"id":"https://openalex.org/keywords/java-annotation","display_name":"Java annotation","score":0.6213883757591248},{"id":"https://openalex.org/keywords/scala","display_name":"Scala","score":0.5940141081809998},{"id":"https://openalex.org/keywords/strictfp","display_name":"strictfp","score":0.5285355448722839},{"id":"https://openalex.org/keywords/real-time-java","display_name":"Real time Java","score":0.5262236595153809},{"id":"https://openalex.org/keywords/java-modeling-language","display_name":"Java Modeling Language","score":0.5018398761749268},{"id":"https://openalex.org/keywords/java-concurrency","display_name":"Java concurrency","score":0.4853193163871765},{"id":"https://openalex.org/keywords/inheritance","display_name":"Inheritance (genetic algorithm)","score":0.4849255383014679},{"id":"https://openalex.org/keywords/object-oriented-programming","display_name":"Object-oriented programming","score":0.47100937366485596}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8733913898468018},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.83575838804245},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.777011513710022},{"id":"https://openalex.org/C172482141","wikidata":"https://www.wikidata.org/wiki/Q379273","display_name":"Generics in Java","level":5,"score":0.7233531475067139},{"id":"https://openalex.org/C168702491","wikidata":"https://www.wikidata.org/wiki/Q567345","display_name":"Java annotation","level":4,"score":0.6213883757591248},{"id":"https://openalex.org/C109701466","wikidata":"https://www.wikidata.org/wiki/Q460584","display_name":"Scala","level":3,"score":0.5940141081809998},{"id":"https://openalex.org/C174954855","wikidata":"https://www.wikidata.org/wiki/Q7623626","display_name":"strictfp","level":4,"score":0.5285355448722839},{"id":"https://openalex.org/C132106392","wikidata":"https://www.wikidata.org/wiki/Q1373903","display_name":"Real time Java","level":3,"score":0.5262236595153809},{"id":"https://openalex.org/C60945770","wikidata":"https://www.wikidata.org/wiki/Q2517517","display_name":"Java Modeling Language","level":5,"score":0.5018398761749268},{"id":"https://openalex.org/C181907185","wikidata":"https://www.wikidata.org/wiki/Q1100098","display_name":"Java concurrency","level":4,"score":0.4853193163871765},{"id":"https://openalex.org/C2780902518","wikidata":"https://www.wikidata.org/wiki/Q6033780","display_name":"Inheritance (genetic algorithm)","level":3,"score":0.4849255383014679},{"id":"https://openalex.org/C73752529","wikidata":"https://www.wikidata.org/wiki/Q79872","display_name":"Object-oriented programming","level":2,"score":0.47100937366485596},{"id":"https://openalex.org/C185592680","wikidata":"https://www.wikidata.org/wiki/Q2329","display_name":"Chemistry","level":0,"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/C55493867","wikidata":"https://www.wikidata.org/wiki/Q7094","display_name":"Biochemistry","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/2993236.2993238","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2993236.2993238","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2016 ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences","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":21,"referenced_works":["https://openalex.org/W1495226832","https://openalex.org/W1579278367","https://openalex.org/W1649645444","https://openalex.org/W1980630602","https://openalex.org/W2005221219","https://openalex.org/W2021222186","https://openalex.org/W2033348393","https://openalex.org/W2045723688","https://openalex.org/W2057779758","https://openalex.org/W2069411162","https://openalex.org/W2094269821","https://openalex.org/W2106052980","https://openalex.org/W2113062049","https://openalex.org/W2114980545","https://openalex.org/W2115680394","https://openalex.org/W2119857670","https://openalex.org/W2127581079","https://openalex.org/W2244800645","https://openalex.org/W2301545550","https://openalex.org/W4234468076","https://openalex.org/W4285719527"],"related_works":["https://openalex.org/W2547095320","https://openalex.org/W2541866089","https://openalex.org/W3172992491","https://openalex.org/W2035709547","https://openalex.org/W4297798586","https://openalex.org/W1678486327","https://openalex.org/W4231981509","https://openalex.org/W2181544444","https://openalex.org/W1572758480","https://openalex.org/W1967435589"],"abstract_inverted_index":{"This":[0],"paper":[1],"presents":[2],"an":[3,81],"OO":[4],"style":[5,61],"without":[6],"classes,":[7],"which":[8,38],"we":[9,77],"call":[10],"interface-based":[11],"object-oriented":[12],"programming":[13],"(IB).":[14],"IB":[15,48,60,74,84,132],"is":[16,123,136],"a":[17,31,58],"natural":[18],"extension":[19],"of":[20,57,83,101,131],"closely":[21],"related":[22],"ideas":[23],"such":[24],"as":[25],"traits.":[26],"Abstract":[27],"state":[28,49],"operations":[29],"provide":[30],"new":[32,99],"way":[33],"to":[34,75],"deal":[35],"with":[36,128,138],"state,":[37],"allows":[39],"for":[40,93,104],"flexibility":[41],"not":[42],"available":[43],"in":[44,53,111],"class-based":[45],"languages.":[46],"In":[47],"can":[50],"be":[51],"type-refined":[52],"subtypes.":[54],"The":[55,106],"combination":[56],"purely":[59],"and":[62,70,96,125,133,140],"type-refinement":[63],"enables":[64],"powerful":[65],"idioms":[66],"using":[67],"multiple":[68],"inheritance":[69],"state.":[71],"To":[72],"introduce":[73],"programmers":[76],"created":[78],"Classless":[79,88,112,134],"Java:":[80],"embedding":[82],"directly":[85],"into":[86],"Java.":[87],"Java":[89,102,113,135],"uses":[90],"annotation":[91],"processing":[92],"code":[94,107,122],"generation":[95,108],"relies":[97],"on":[98],"features":[100],"8":[103],"interfaces.":[105],"techniques":[109],"used":[110],"have":[114],"interesting":[115],"properties,":[116],"including":[117],"guarantees":[118],"that":[119],"the":[120],"generated":[121],"type-safe":[124],"good":[126],"integration":[127],"IDEs.":[129],"Usefulness":[130],"shown":[137],"examples":[139],"case":[141],"studies.":[142]},"counts_by_year":[{"year":2019,"cited_by_count":1}],"updated_date":"2026-06-11T09:08:48.828518","created_date":"2016-10-28T00:00:00"}
