{"title":"标准ML中的结构化TCP。","authors":"E. Biagioni","doi":"10.1145/190314.190318","DOIUrl":null,"url":null,"abstract":"This paper describes the design of an implementation of the Transmission Control Protocol using an extension of the Standard ML (SML) language. SML supports higher-order functions, modularity, and type-safe module composition. We find that by using SML we can achieve good structure and good performance simultaneously. Good structure includes a modular decomposition of the protocol stack and of the TCP implementation, a control structure that imposes a total ordering on all events and processes them synchronously, and a test structure that allows component testing to catch problems before system integration. Strategies that help achieve good performance include using fast algorithms, using language constructs that make it easy to stage function evaluation, and language implementation features such as compacting garbage collection.","PeriodicalId":142337,"journal":{"name":"Proceedings of the conference on Communications architectures, protocols and applications","volume":"15 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1994-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"57","resultStr":"{\"title\":\"A structured TCP in standard ML.\",\"authors\":\"E. Biagioni\",\"doi\":\"10.1145/190314.190318\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"This paper describes the design of an implementation of the Transmission Control Protocol using an extension of the Standard ML (SML) language. SML supports higher-order functions, modularity, and type-safe module composition. We find that by using SML we can achieve good structure and good performance simultaneously. Good structure includes a modular decomposition of the protocol stack and of the TCP implementation, a control structure that imposes a total ordering on all events and processes them synchronously, and a test structure that allows component testing to catch problems before system integration. Strategies that help achieve good performance include using fast algorithms, using language constructs that make it easy to stage function evaluation, and language implementation features such as compacting garbage collection.\",\"PeriodicalId\":142337,\"journal\":{\"name\":\"Proceedings of the conference on Communications architectures, protocols and applications\",\"volume\":\"15 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"1994-10-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"57\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Proceedings of the conference on Communications architectures, protocols and applications\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1145/190314.190318\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the conference on Communications architectures, protocols and applications","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/190314.190318","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
This paper describes the design of an implementation of the Transmission Control Protocol using an extension of the Standard ML (SML) language. SML supports higher-order functions, modularity, and type-safe module composition. We find that by using SML we can achieve good structure and good performance simultaneously. Good structure includes a modular decomposition of the protocol stack and of the TCP implementation, a control structure that imposes a total ordering on all events and processes them synchronously, and a test structure that allows component testing to catch problems before system integration. Strategies that help achieve good performance include using fast algorithms, using language constructs that make it easy to stage function evaluation, and language implementation features such as compacting garbage collection.