{"id":"https://openalex.org/W2021686672","doi":"https://doi.org/10.1145/74877.74924","title":"Interfaces for strongly-typed object-oriented programming","display_name":"Interfaces for strongly-typed object-oriented programming","publication_year":1989,"publication_date":"1989-09-01","ids":{"openalex":"https://openalex.org/W2021686672","doi":"https://doi.org/10.1145/74877.74924","mag":"2021686672"},"language":"en","primary_location":{"is_oa":true,"landing_page_url":"https://doi.org/10.1145/74877.74924","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/74877.74924","source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true},"type":"article","type_crossref":"proceedings-article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"bronze","oa_url":"https://dl.acm.org/doi/pdf/10.1145/74877.74924","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5043132574","display_name":"Peter S. Canning","orcid":null},"institutions":[{"id":"https://openalex.org/I1324840837","display_name":"Hewlett-Packard (United States)","ror":"https://ror.org/059rn9488","country_code":"US","type":"company","lineage":["https://openalex.org/I1324840837"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"P. S. Canning","raw_affiliation_strings":["Hewlett-Packard Laboratories, P.O.Box 10490, Palo Alto, CA#TAB#"],"affiliations":[{"raw_affiliation_string":"Hewlett-Packard Laboratories, P.O.Box 10490, Palo Alto, CA#TAB#","institution_ids":["https://openalex.org/I1324840837"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5029147559","display_name":"William R. Cook","orcid":"https://orcid.org/0000-0003-4918-8975"},"institutions":[{"id":"https://openalex.org/I1324840837","display_name":"Hewlett-Packard (United States)","ror":"https://ror.org/059rn9488","country_code":"US","type":"company","lineage":["https://openalex.org/I1324840837"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"W. R. Cook","raw_affiliation_strings":["Hewlett-Packard Laboratories, P.O.Box 10490, Palo Alto, CA#TAB#"],"affiliations":[{"raw_affiliation_string":"Hewlett-Packard Laboratories, P.O.Box 10490, Palo Alto, CA#TAB#","institution_ids":["https://openalex.org/I1324840837"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5030301818","display_name":"Walter L. Hill","orcid":null},"institutions":[{"id":"https://openalex.org/I1324840837","display_name":"Hewlett-Packard (United States)","ror":"https://ror.org/059rn9488","country_code":"US","type":"company","lineage":["https://openalex.org/I1324840837"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"W. L. Hill","raw_affiliation_strings":["Hewlett-Packard Laboratories, P.O.Box 10490, Palo Alto, CA#TAB#"],"affiliations":[{"raw_affiliation_string":"Hewlett-Packard Laboratories, P.O.Box 10490, Palo Alto, CA#TAB#","institution_ids":["https://openalex.org/I1324840837"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5026928121","display_name":"Walter Olthoff","orcid":null},"institutions":[{"id":"https://openalex.org/I1324840837","display_name":"Hewlett-Packard (United States)","ror":"https://ror.org/059rn9488","country_code":"US","type":"company","lineage":["https://openalex.org/I1324840837"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"W. G. Olthoff","raw_affiliation_strings":["Hewlett-Packard Laboratories, P.O.Box 10490, Palo Alto, CA#TAB#"],"affiliations":[{"raw_affiliation_string":"Hewlett-Packard Laboratories, P.O.Box 10490, Palo Alto, CA#TAB#","institution_ids":["https://openalex.org/I1324840837"]}]}],"institution_assertions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":6.506,"has_fulltext":false,"cited_by_count":129,"citation_normalized_percentile":{"value":0.937094,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":97,"max":98},"biblio":{"volume":null,"issue":null,"first_page":"457","last_page":"467"},"is_retracted":false,"is_paratext":false,"primary_topic":{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9993,"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"}},"topics":[{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9993,"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"}},{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.9969,"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.9928,"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/inheritance","display_name":"Inheritance","score":0.7851886},{"id":"https://openalex.org/keywords/smalltalk","display_name":"Smalltalk","score":0.6163975},{"id":"https://openalex.org/keywords/multiple-inheritance","display_name":"Multiple inheritance","score":0.5497445},{"id":"https://openalex.org/keywords/interface","display_name":"Interface (matter)","score":0.51415473}],"concepts":[{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.8107824},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.79412186},{"id":"https://openalex.org/C2780902518","wikidata":"https://www.wikidata.org/wiki/Q6033780","display_name":"Inheritance (genetic algorithm)","level":3,"score":0.7851886},{"id":"https://openalex.org/C73752529","wikidata":"https://www.wikidata.org/wiki/Q79872","display_name":"Object-oriented programming","level":2,"score":0.6809917},{"id":"https://openalex.org/C2777293101","wikidata":"https://www.wikidata.org/wiki/Q235086","display_name":"Smalltalk","level":3,"score":0.6163975},{"id":"https://openalex.org/C200568363","wikidata":"https://www.wikidata.org/wiki/Q1070739","display_name":"Multiple inheritance","level":3,"score":0.5497445},{"id":"https://openalex.org/C113843644","wikidata":"https://www.wikidata.org/wiki/Q901882","display_name":"Interface (matter)","level":4,"score":0.51415473},{"id":"https://openalex.org/C2780598303","wikidata":"https://www.wikidata.org/wiki/Q65921492","display_name":"Flexibility (engineering)","level":2,"score":0.46847218},{"id":"https://openalex.org/C2781238097","wikidata":"https://www.wikidata.org/wiki/Q175026","display_name":"Object (grammar)","level":2,"score":0.45757836},{"id":"https://openalex.org/C2777212361","wikidata":"https://www.wikidata.org/wiki/Q5127848","display_name":"Class (philosophy)","level":2,"score":0.4106838},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.133946},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.097571045},{"id":"https://openalex.org/C55493867","wikidata":"https://www.wikidata.org/wiki/Q7094","display_name":"Biochemistry","level":1,"score":0.0},{"id":"https://openalex.org/C185592680","wikidata":"https://www.wikidata.org/wiki/Q2329","display_name":"Chemistry","level":0,"score":0.0},{"id":"https://openalex.org/C105795698","wikidata":"https://www.wikidata.org/wiki/Q12483","display_name":"Statistics","level":1,"score":0.0},{"id":"https://openalex.org/C157915830","wikidata":"https://www.wikidata.org/wiki/Q2928001","display_name":"Bubble","level":2,"score":0.0},{"id":"https://openalex.org/C129307140","wikidata":"https://www.wikidata.org/wiki/Q6795880","display_name":"Maximum bubble pressure method","level":3,"score":0.0},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.0},{"id":"https://openalex.org/C104317684","wikidata":"https://www.wikidata.org/wiki/Q7187","display_name":"Gene","level":2,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"is_oa":true,"landing_page_url":"https://doi.org/10.1145/74877.74924","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/74877.74924","source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true}],"best_oa_location":{"is_oa":true,"landing_page_url":"https://doi.org/10.1145/74877.74924","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/74877.74924","source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true},"sustainable_development_goals":[],"grants":[],"datasets":[],"versions":[],"referenced_works_count":33,"referenced_works":["https://openalex.org/W1487768293","https://openalex.org/W1492067237","https://openalex.org/W1511621732","https://openalex.org/W1548394473","https://openalex.org/W1595372275","https://openalex.org/W1603788080","https://openalex.org/W1770006921","https://openalex.org/W1968889995","https://openalex.org/W1976517701","https://openalex.org/W1987454317","https://openalex.org/W1997522747","https://openalex.org/W2004309454","https://openalex.org/W2016460392","https://openalex.org/W2023478976","https://openalex.org/W2027657506","https://openalex.org/W2030611910","https://openalex.org/W2038497675","https://openalex.org/W2069037543","https://openalex.org/W2114958714","https://openalex.org/W2136316331","https://openalex.org/W2151614365","https://openalex.org/W2161825580","https://openalex.org/W2165928807","https://openalex.org/W2171425038","https://openalex.org/W2313585303","https://openalex.org/W2686043342","https://openalex.org/W2785712105","https://openalex.org/W3172349748","https://openalex.org/W4236937290","https://openalex.org/W4244486827","https://openalex.org/W4254085206","https://openalex.org/W4255667787","https://openalex.org/W4285719527"],"related_works":["https://openalex.org/W4386444448","https://openalex.org/W4242574932","https://openalex.org/W4241453829","https://openalex.org/W2438514606","https://openalex.org/W2055691648","https://openalex.org/W169715093","https://openalex.org/W1584712945","https://openalex.org/W1537964674","https://openalex.org/W1494632715","https://openalex.org/W1487481831"],"abstract_inverted_index":{"This":[0],"paper":[1],"develops":[2],"a":[3],"system":[4,12,48],"of":[5,16,58,65,97,117],"explicit":[6],"interfaces":[7,18,53,78],"for":[8,112],"object-oriented":[9,33,68,104,118],"programming.":[10],"The":[11],"provides":[13],"the":[14,28,47,56,80,95],"benefits":[15],"module":[17],"found":[19],"in":[20,67,101],"languages":[21,34],"like":[22,35],"Ada":[23],"and":[24,60,74,85,87,99,115],"Modula-2":[25],"while":[26],"preserving":[27],"expressiveness":[29],"that":[30],"gives":[31],"untyped":[32],"Smalltalk":[36],"their":[37],"flexibility.":[38],"Interfaces":[39,107],"are":[40],"interpreted":[41],"as":[42],"polymorphic":[43],"types":[44],"to":[45,54,71],"make":[46],"sufficiently":[49],"powerful.":[50],"We":[51],"use":[52],"analyze":[55],"properties":[57],"inheritance,":[59],"identify":[61],"three":[62],"distinct":[63],"kinds":[64],"inheritance":[66,86],"programming,":[69],"corresponding":[70],"objects,":[72],"classes,":[73],"interfaces,":[75],"respectively.":[76],"Object":[77],"clarify":[79],"distinction":[81],"between":[82],"interface":[83],"containment":[84],"give":[88],"insight":[89],"into":[90],"limitations":[91],"caused":[92],"by":[93],"equating":[94],"notions":[96],"type":[98],"class":[100],"many":[102],"typed":[103],"programming":[105],"languages.":[106],"also":[108],"have":[109],"practical":[110],"consequences":[111],"design,":[113],"specification,":[114],"maintenance":[116],"systems.":[119]},"cited_by_api_url":"https://api.openalex.org/works?filter=cites:W2021686672","counts_by_year":[{"year":2021,"cited_by_count":2},{"year":2020,"cited_by_count":1},{"year":2019,"cited_by_count":1},{"year":2018,"cited_by_count":1},{"year":2017,"cited_by_count":3},{"year":2015,"cited_by_count":1},{"year":2014,"cited_by_count":1},{"year":2013,"cited_by_count":2},{"year":2012,"cited_by_count":1}],"updated_date":"2024-12-18T20:03:47.727341","created_date":"2016-06-24"}