{"title":"同步响应式web编程","authors":"Rémy El Sibaïe, E. Chailloux","doi":"10.1145/3001929.3001931","DOIUrl":null,"url":null,"abstract":"The current event-based model of web client programming lacks of a high level abstraction for concurrency and communication when many interactions are involved. The design of JavaScript runtime in the browser is very simple and chains steps of input handling and computation of output in a sequential way. This definition describes exactly a subset of programs well handled by the synchronous-reactive model. It proposes constructs to express parallel tasks communicating through broadcasted signals enforcing a static hypothesis of determinism, coherency and causality that improve programs composition. It is then interesting to consider client events as inputs and web view elements as outputs of a synchronous-reactive program. We describe here the design of pendulum, a language extension implementing those principles and targeting web client programming, which generates fast sequential code.","PeriodicalId":116808,"journal":{"name":"Proceedings of the 3rd International Workshop on Reactive and Event-Based Languages and Systems","volume":"281 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2016-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Synchronous-reactive web programming\",\"authors\":\"Rémy El Sibaïe, E. Chailloux\",\"doi\":\"10.1145/3001929.3001931\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"The current event-based model of web client programming lacks of a high level abstraction for concurrency and communication when many interactions are involved. The design of JavaScript runtime in the browser is very simple and chains steps of input handling and computation of output in a sequential way. This definition describes exactly a subset of programs well handled by the synchronous-reactive model. It proposes constructs to express parallel tasks communicating through broadcasted signals enforcing a static hypothesis of determinism, coherency and causality that improve programs composition. It is then interesting to consider client events as inputs and web view elements as outputs of a synchronous-reactive program. We describe here the design of pendulum, a language extension implementing those principles and targeting web client programming, which generates fast sequential code.\",\"PeriodicalId\":116808,\"journal\":{\"name\":\"Proceedings of the 3rd International Workshop on Reactive and Event-Based Languages and Systems\",\"volume\":\"281 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2016-11-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Proceedings of the 3rd International Workshop on Reactive and Event-Based Languages and Systems\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1145/3001929.3001931\",\"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 3rd International Workshop on Reactive and Event-Based Languages and Systems","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3001929.3001931","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
The current event-based model of web client programming lacks of a high level abstraction for concurrency and communication when many interactions are involved. The design of JavaScript runtime in the browser is very simple and chains steps of input handling and computation of output in a sequential way. This definition describes exactly a subset of programs well handled by the synchronous-reactive model. It proposes constructs to express parallel tasks communicating through broadcasted signals enforcing a static hypothesis of determinism, coherency and causality that improve programs composition. It is then interesting to consider client events as inputs and web view elements as outputs of a synchronous-reactive program. We describe here the design of pendulum, a language extension implementing those principles and targeting web client programming, which generates fast sequential code.