[论文解读] Prolog Server Pages
Prolog Server Pages (PSP) 是一种服务器端脚本语言,将 Prolog 代码嵌入 HTML 文档中,实现动态网页内容生成。它通过专用模块与 Apache Web 服务器集成,处理 HTTP 请求(GET/POST),管理 Cookie,并将嵌入的逻辑编译为标准 HTML 输出发送给客户端。
Prolog Server Pages (PSP) is a scripting language, based on Prolog, than can be embedded in HTML documents. To run PSP applications one needs a web server, a web browser and a PSP interpreter. The code is executed, by the interpreter, on the server-side (web server) and the output (together with the html code in witch the PSP code is embedded) is sent to the client-side (browser). The current implementation supports Apache Web Server. We implemented an Apache web server module that handles PSP files, and sends the result (an html document) to the client. PSP supports both GET and POST http requests. It also provides methods for working with http cookies.
研究动机与目标
- 通过 Prolog 的声明式逻辑编程模型,实现动态 Web 应用开发。
- 通过在 HTML 中嵌入 Prolog,弥合 Web 技术与逻辑编程之间的鸿沟。
- 在基于 Prolog 的服务器端环境中,支持标准 Web 协议,如 HTTP GET 和 POST 请求。
- 在 Prolog 驱动的 Web 框架中,提供对 HTTP Cookie 和服务器端状态管理的一流支持。
- 通过专用模块与 Apache Web 服务器无缝集成,执行 PSP 文件。
提出的方法
- 使用特殊分隔符将 Prolog 代码嵌入 HTML 文档中,类似于服务器端脚本语言。
- 开发一个 Apache Web 服务器模块,通过 Prolog 解释器识别并处理 .psp 文件。
- 在服务器端执行嵌入的 Prolog 代码,生成动态 HTML 输出后再发送给客户端。
- 通过解析请求数据并将数据传递给 Prolog 谓词,支持 GET 和 POST HTTP 方法。
- 通过 Prolog 运行时环境暴露内置方法,用于读取和写入 HTTP Cookie。
- 通过输出标准 HTML 并利用 Apache 服务器栈,确保与现有 Web 基础设施的兼容性。
实验结果
研究问题
- RQ1Prolog 是否能够通过服务器端脚本有效生成动态网页内容?
- RQ2如何将 Prolog 的逻辑编程范式集成到标准 Web 应用工作流中?
- RQ3哪些架构模式能够实现在 Web 服务器上 HTML 文档中无缝执行 Prolog 代码?
- RQ4Prolog 在多大程度上可以处理常见 Web 任务,如表单处理和通过 Cookie 的状态管理?
- RQ5是否可行构建一个支持标准 HTTP 交互的生产级 Prolog Web 服务器模块?
主要发现
- 该实现成功证明了 Prolog 可通过在 HTML 中嵌入脚本生成动态网页内容。
- Apache Web 服务器模块实现了对 PSP 文件的透明执行,将其视为第一流的 Web 资源。
- 对 GET 和 POST HTTP 方法的支持,使得使用 Prolog 开发全功能 Web 应用成为可能。
- 该系统原生支持 HTTP Cookie,使得在无状态 Web 环境中实现有状态交互成为可能。
- 该架构在服务器端逻辑执行方面具有可行性,结合了 Prolog 的符号推理能力与 Web 标准。
- 该解决方案可部署于标准 Apache 基础设施上,显示出与实际生产环境的兼容性和实用性。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。