{"title":"关系式反应编程:网络迷你版关仁","authors":"Evan Donahue","doi":"arxiv-2408.17044","DOIUrl":null,"url":null,"abstract":"Over the past decade, reactive frameworks and languages have become the\ndominant programming paradigm in front-end web development. In this paradigm,\nuser actions change application state, and those changes propagate reactively\nto derived state and to the display, reducing the likelihood that various parts\nof the data model and user-facing view will become out of sync due to\nprogrammer error. In this paper, we explore the application of relational\nprogramming to the specification and synchronized evolution of model and view\nacross time in response to user input. To that end, we present a reactive\nJavascript implementation of miniKanren and an integrated reactive programming\nmodel oriented towards the challenges of front-end web development.","PeriodicalId":501197,"journal":{"name":"arXiv - CS - Programming Languages","volume":"1 1","pages":""},"PeriodicalIF":0.0000,"publicationDate":"2024-08-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Relational Reactive Programming: miniKanren for the Web\",\"authors\":\"Evan Donahue\",\"doi\":\"arxiv-2408.17044\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Over the past decade, reactive frameworks and languages have become the\\ndominant programming paradigm in front-end web development. In this paradigm,\\nuser actions change application state, and those changes propagate reactively\\nto derived state and to the display, reducing the likelihood that various parts\\nof the data model and user-facing view will become out of sync due to\\nprogrammer error. In this paper, we explore the application of relational\\nprogramming to the specification and synchronized evolution of model and view\\nacross time in response to user input. To that end, we present a reactive\\nJavascript implementation of miniKanren and an integrated reactive programming\\nmodel oriented towards the challenges of front-end web development.\",\"PeriodicalId\":501197,\"journal\":{\"name\":\"arXiv - CS - Programming Languages\",\"volume\":\"1 1\",\"pages\":\"\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2024-08-30\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"arXiv - CS - Programming Languages\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/arxiv-2408.17044\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"arXiv - CS - Programming Languages","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/arxiv-2408.17044","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Relational Reactive Programming: miniKanren for the Web
Over the past decade, reactive frameworks and languages have become the
dominant programming paradigm in front-end web development. In this paradigm,
user actions change application state, and those changes propagate reactively
to derived state and to the display, reducing the likelihood that various parts
of the data model and user-facing view will become out of sync due to
programmer error. In this paper, we explore the application of relational
programming to the specification and synchronized evolution of model and view
across time in response to user input. To that end, we present a reactive
Javascript implementation of miniKanren and an integrated reactive programming
model oriented towards the challenges of front-end web development.