{"title":"通过联合和交叉类型支持动态和静态类型","authors":"Francisco Ortin, Miguel García","doi":"10.1109/PIC.2010.5687860","DOIUrl":null,"url":null,"abstract":"Although static typing provides early type error detection, better legibility and abstraction, and more opportunities for compiler optimizations, dynamic typing supplies a high degree of runtime adaptiveness, providing an agile and interactive development suitable for rapid prototyping. In this article, the minimal core type system of a programming language which main aim is to provide the benefits of both dynamic and static typing is presented. Keeping explicit typing, implicit type inference is introduced to combine dynamic and static typing in the same programming language. Union and intersection types are customized to express the dynamism of implicitly typed references. The main benefits of our work are an early type error detection in dynamic code, the integration of dynamic and static code in the same programming language, and a notable optimization of the generated code.","PeriodicalId":142910,"journal":{"name":"2010 IEEE International Conference on Progress in Informatics and Computing","volume":"109 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2010-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"6","resultStr":"{\"title\":\"Supporting dynamic and static typing by means of union and intersection types\",\"authors\":\"Francisco Ortin, Miguel García\",\"doi\":\"10.1109/PIC.2010.5687860\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Although static typing provides early type error detection, better legibility and abstraction, and more opportunities for compiler optimizations, dynamic typing supplies a high degree of runtime adaptiveness, providing an agile and interactive development suitable for rapid prototyping. In this article, the minimal core type system of a programming language which main aim is to provide the benefits of both dynamic and static typing is presented. Keeping explicit typing, implicit type inference is introduced to combine dynamic and static typing in the same programming language. Union and intersection types are customized to express the dynamism of implicitly typed references. The main benefits of our work are an early type error detection in dynamic code, the integration of dynamic and static code in the same programming language, and a notable optimization of the generated code.\",\"PeriodicalId\":142910,\"journal\":{\"name\":\"2010 IEEE International Conference on Progress in Informatics and Computing\",\"volume\":\"109 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2010-12-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"6\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2010 IEEE International Conference on Progress in Informatics and Computing\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/PIC.2010.5687860\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2010 IEEE International Conference on Progress in Informatics and Computing","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/PIC.2010.5687860","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Supporting dynamic and static typing by means of union and intersection types
Although static typing provides early type error detection, better legibility and abstraction, and more opportunities for compiler optimizations, dynamic typing supplies a high degree of runtime adaptiveness, providing an agile and interactive development suitable for rapid prototyping. In this article, the minimal core type system of a programming language which main aim is to provide the benefits of both dynamic and static typing is presented. Keeping explicit typing, implicit type inference is introduced to combine dynamic and static typing in the same programming language. Union and intersection types are customized to express the dynamism of implicitly typed references. The main benefits of our work are an early type error detection in dynamic code, the integration of dynamic and static code in the same programming language, and a notable optimization of the generated code.