{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,6,18]],"date-time":"2026-06-18T04:28:45Z","timestamp":1781756925085,"version":"3.54.5"},"reference-count":23,"publisher":"Elsevier BV","issue":"3","license":[{"start":{"date-parts":[[1978,12,1]],"date-time":"1978-12-01T00:00:00Z","timestamp":281318400000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.elsevier.com\/tdm\/userlicense\/1.0\/"},{"start":{"date-parts":[[2013,7,17]],"date-time":"2013-07-17T00:00:00Z","timestamp":1374019200000},"content-version":"vor","delay-in-days":12647,"URL":"https:\/\/www.elsevier.com\/open-access\/userlicense\/1.0\/"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Journal of Computer and System Sciences"],"published-print":{"date-parts":[[1978,12]]},"DOI":"10.1016\/0022-0000(78)90014-4","type":"journal-article","created":{"date-parts":[[2003,12,4]],"date-time":"2003-12-04T07:01:00Z","timestamp":1070521260000},"page":"348-375","source":"Crossref","is-referenced-by-count":1340,"title":["A theory of type polymorphism in programming"],"prefix":"10.1016","volume":"17","author":[{"given":"Robin","family":"Milner","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"78","reference":[{"key":"10.1016\/0022-0000(78)90014-4_BIB1","series-title":"Recursive Programming Techniques","author":"Burge","year":"1975"},{"key":"10.1016\/0022-0000(78)90014-4_BIB2","article-title":"Edinburgh LCF","author":"Gordon","year":"1977"},{"key":"10.1016\/0022-0000(78)90014-4_BIB3","series-title":"Proc. 5th Annual ACM SIGACT-SIGPLAN Symposium on Principles of Programming Languages","article-title":"A metalanguage for interactive proof in LCF","author":"Gordon","year":"1978"},{"key":"10.1016\/0022-0000(78)90014-4_BIB4","doi-asserted-by":"crossref","first-page":"414","DOI":"10.1145\/359605.359624","article-title":"Some ideas on data type in high-level languages","volume":"20","author":"Gries","year":"1977","journal-title":"Comm. ACM."},{"key":"10.1016\/0022-0000(78)90014-4_BIB5","first-page":"29","article-title":"The principal type-scheme of an object in combinatory logic","volume":"146","author":"Hindley","year":"1969","journal-title":"Trans. Amer. Math. Soc."},{"issue":"2","key":"10.1016\/0022-0000(78)90014-4_BIB6","article-title":"Report on the programming language Euclid","volume":"12","author":"Lampson","year":"1977","journal-title":"SIGPLAN Notices (ACM)"},{"key":"10.1016\/0022-0000(78)90014-4_BIB7","doi-asserted-by":"crossref","first-page":"157","DOI":"10.1145\/365230.365257","article-title":"The next 700 programming languages","volume":"9","author":"Landin","year":"1966","journal-title":"Comm. ACM"},{"key":"10.1016\/0022-0000(78)90014-4_BIB8","series-title":"Proc. of ACM SIGPLAN conference on Very High Level Languages","first-page":"50","article-title":"Programming with abstract data types","volume":"9","author":"Liskov","year":"1974"},{"key":"10.1016\/0022-0000(78)90014-4_BIB9","first-page":"49","article-title":"Models of LCF","volume":"Vol. 82","author":"Milner","year":"1976"},{"key":"10.1016\/0022-0000(78)90014-4_BIB10","article-title":"Lambda-Calculus Models of Programming Languages","author":"Morris","year":"1968"},{"key":"10.1016\/0022-0000(78)90014-4_BIB11","doi-asserted-by":"crossref","first-page":"452","DOI":"10.1137\/0205035","article-title":"A power-domain construction","volume":"5","author":"Plotkin","year":"1976","journal-title":"SIAM J. Comput."},{"key":"10.1016\/0022-0000(78)90014-4_BIB12","series-title":"Towards a Theory of Type Structure","author":"Reynolds","year":"1974"},{"key":"10.1016\/0022-0000(78)90014-4_BIB13","series-title":"Proc. 5th ACM Symposium on Principles of Programming Languages","first-page":"39","article-title":"Syntactic control of interference","author":"Reynolds","year":"1978"},{"key":"10.1016\/0022-0000(78)90014-4_BIB14","doi-asserted-by":"crossref","first-page":"23","DOI":"10.1145\/321250.321253","article-title":"A machine-oriented logic based on the resolution principle","volume":"12","author":"Robinson","year":"1965","journal-title":"J. Assoc. Comput. Mach."},{"key":"10.1016\/0022-0000(78)90014-4_BIB15","series-title":"Proc. 4th International Congress for Logic, Methodology and Philosophy of Science","article-title":"Lattice theoretic models for various type-free calculi","author":"Scott","year":"1972"},{"key":"10.1016\/0022-0000(78)90014-4_BIB16","article-title":"Towards a mathematical semantics for computer languages","volume":"Vol. 21","author":"Scott","year":"1971"},{"key":"10.1016\/0022-0000(78)90014-4_BIB17","doi-asserted-by":"crossref","first-page":"522","DOI":"10.1137\/0205037","article-title":"Data types as lattices","volume":"5","author":"Scott","year":"1976","journal-title":"SIAM J. Comput."},{"key":"10.1016\/0022-0000(78)90014-4_BIB18","series-title":"Proc. 4th ICALP Conference","article-title":"Data types as objects","author":"Shamir","year":"1977"},{"key":"10.1016\/0022-0000(78)90014-4_BIB19","series-title":"Notes for the International Summer School in Computer Programming","article-title":"Fundamental concepts in programming languages","author":"Strachey","year":"1967"},{"key":"10.1016\/0022-0000(78)90014-4_BIB20","doi-asserted-by":"crossref","first-page":"315","DOI":"10.1007\/BF00271340","article-title":"On a new approach to representation-independent data classes","volume":"8","author":"Tennent","year":"1977","journal-title":"Acta Inform."},{"key":"10.1016\/0022-0000(78)90014-4_BIB21","doi-asserted-by":"crossref","first-page":"251","DOI":"10.1145\/360980.360992","article-title":"The treatment of types in EL1","volume":"17","author":"Wegbreit","year":"1974","journal-title":"Comm. ACM"},{"key":"10.1016\/0022-0000(78)90014-4_BIB22","doi-asserted-by":"crossref","first-page":"1","DOI":"10.1007\/BF00265077","article-title":"Revised report on the algorithmic language ALGOL 68","volume":"5","author":"Van Wijngaarden","year":"1975","journal-title":"Acta Informatica"},{"key":"10.1016\/0022-0000(78)90014-4_BIB23","doi-asserted-by":"crossref","DOI":"10.21236\/ADA028365","article-title":"Abstraction and Verification in ALPHARD: Introduction to Language and Methodology","author":"Wulf","year":"1976"}],"container-title":["Journal of Computer and System Sciences"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/api.elsevier.com\/content\/article\/PII:0022000078900144?httpAccept=text\/xml","content-type":"text\/xml","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/api.elsevier.com\/content\/article\/PII:0022000078900144?httpAccept=text\/plain","content-type":"text\/plain","content-version":"vor","intended-application":"text-mining"}],"deposited":{"date-parts":[[2019,2,16]],"date-time":"2019-02-16T08:28:39Z","timestamp":1550305719000},"score":1,"resource":{"primary":{"URL":"https:\/\/linkinghub.elsevier.com\/retrieve\/pii\/0022000078900144"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[1978,12]]},"references-count":23,"journal-issue":{"issue":"3","published-print":{"date-parts":[[1978,12]]}},"alternative-id":["0022000078900144"],"URL":"https:\/\/doi.org\/10.1016\/0022-0000(78)90014-4","relation":{},"ISSN":["0022-0000"],"issn-type":[{"value":"0022-0000","type":"print"}],"subject":[],"published":{"date-parts":[[1978,12]]}}}