胡说八道--

纯功能过程
应用于
图形用户界面

马格纳斯
托马斯·哈尔格伦

计算机科学系

查尔默斯理工大学和哥德堡大学

Avhandling för teknologie doktorsexamen i datalogi vid Chalmers公司Tekniska Högskola kommer,enligt beslut av sektionen för matematikoch datavetenskap,att offentligt försvaras av Thomas Hallgren måndagen den 16 mars 1998,och马格努斯卡尔松提斯达根登17号火星1998年。争议10.15日1 Hörsalen,计划1号,马特马蒂斯克中心,埃克兰达格坦86号,哥德堡。



kommer att hållas påengelska争议案。


摘要
本文的主要成果是一种程序编写方法纯功能语言的图形用户界面。这个方法基于一个称为胡说八道.该方法充分利用了函数语言,如高阶函数和参数化多态性。

Fudget概念是用更简单的概念来定义的流处理器,这可以看作是一个简单的,但实际上过程概念的有用体现。基于fudgets的程序流处理器是通信过程的网络使用组合器分层构建。沟通是类型安全。基本组合器提供串行组合、并行组合组成和循环。与之前的工作的主要区别流处理函数和我们的方法是远离溪流。我们得到了一个可以完全在一个纯功能的语言,但这也使得利用并行评估和不确定性(如有)在功能语言中。纯功能方法使流程成为一流的价值观,并使其易于表达进程克隆和进程迁移。

该方法的实际可行性通过Fudget库,这是一个图形用户的实现纯函数语言Haskell的接口工具包,再加上一些小到大的应用程序在库的顶部实现。

除了GUI编程之外,fudget还适用于其他形式并发I/O编程。我们演示了客户机/服务器我们可以编写基于类型安全通信的应用程序在客户端和服务器之间。我们以一个web浏览器为例GUI编程和网络通信结合在一起。

我们认为fudgets是一个更一般的基于组合子的例子一种将功能语言结合在一起的方法使用组合库是减少使用的一个很好的选择由特定于应用程序的工具支持的表达语言。我们描述一组组合词,让人想起解析组合词,用于构建语法导向编辑器。