【托马斯·哈格伦照片,2016年7月】

托马斯·哈格伦

电子邮件: 托马斯+h 在altocummulus-dot-org

你好!

我是一名函数式程序员。从2009年11月到2020年7月,我在语言技术集团,主要是维护GF公司(语法框架)和一些基于GF的web应用.我还一直在做什么?
2020我教过数据库在研究阶段3。
2019我帮了忙数据库学习阶段3的课程。我教过函数编程导论在研究阶段1。
2016-2018我教过这门课函数式编程这些年的11月至12月(lp2)(2016,2017,2018).
2009-2010年我教过这门课硬件描述和验证这些年来(2009,2010).
2001-2006发件人2001年7月至2006年9月,我在Programatica项目俄勒冈州研究生院PacSoft小组。我保存了我在那里的时候的主页.
1988-20011998年5月1日至2001年6月31日,我曾在计算机科学系查尔默斯理工大学,在我完成之前论文(关于软糖)我是同一个地方的博士生。我是函数式编程很长一段时间。我还与编程逻辑组论校对助理用户界面的开发(阿尔法).

教学

研发

我把大部分时间都花在了这些事情上:
2009-我在GF公司语法编译器并开发了一些基于的web应用程序GF公司.
2006-2009我通过以下方式在学术界之外应用函数编程发展电子商务系统在哈斯克尔。
2001-2006我在程序设计学项目支持Haskell中高保证编程的工具。我也在房屋,一个操作系统在Haskell中实现。
1996-2001我花了很多时间阿尔法,实现了一个校对编辑器使用Fudgets。最近的工作是支持自然语言,通过接口阿内·兰塔语法框架,GF公司.
1991-1996函数式语言的图形用户界面。马格纳斯我发展了软糖,图形用户界面工具包函数式编程语言哈斯克尔。我们写了一个共同的博士论文关于这个。
1987年至1993年带有函数式语言子类型的类型系统。这是我的执照论文是关于的。

出版物

还提供:

软糖-惰性函数语言中的图形用户界面 (摘要)
M.卡尔森,T.哈尔格伦
1993年FPCA函数式编程会议《语言与计算机体系结构》,第321-330页,美国计算机学会出版社,1993年6月。
Fudgets——纯功能流程图形用户界面的应用程序
马格努斯·卡尔森,托马斯·哈格伦
查尔默斯大学计算科学系博士论文1998年3月,瑞典哥德堡S-412 96号,《技术》杂志。
Fudgets主页
托马斯·哈格伦马格努斯·卡尔森
1997
用小控件编程 (摘要)
托马斯·哈格伦马格努斯·卡尔森
在J。Jeuring和E.Meijer,《高级函数编程》,第137-182页,Springer Verlag,LNCS 9251995。
流处理器:并发纯函数语言编程
托马斯·哈格伦马格努斯·卡尔森
第7名北欧规划理论讲习班,哥德堡,1995年11月。
项目报告:Fun趣味2
T.哈尔格伦
1988年,英国伦敦帝国学院硕士论文。
交互式实时多用户游戏简介LML编程
托马斯·哈格伦
技术报告,第89号备忘录,编程方法组,查默斯理工大学,瑞典哥德堡,1990年1月。
多元函数语言中的子类型 (摘要)
托马斯·哈格伦
1993年2月,瑞典哥德堡查尔默斯科技大学执照论文。
控件-Lazy中的图形用户界面和I/O函数式语言
M.Carlsson,T.哈尔格伦
1993年5月,瑞典哥德堡查尔默斯科技大学执照论文。
可扩展的校对文本编辑器 (摘要)
托马斯·哈格伦,阿内·兰塔
程序设计和自动推理的逻辑(LPAR’2000),LNCS/LNAI,第1955号,第70-84页,Springer Verlag,2000年11月。
功能依赖的乐趣 (摘要)
托马斯·哈格伦
2001年1月,瑞典哥德堡查尔默斯计算机科学系,CS/CE联合冬季会议记录,第135-145页。
Haskell 98模块系统的形式化规范 (摘要)
伊沃·S·迪亚奇基,马克·琼斯,托马斯·哈格伦
《2002年ACM SIGPLAN Haskell研讨会论文集》,第17-28页,宾夕法尼亚州匹兹堡,美国,2002年10月。
Programatica项目中的Haskell工具 (摘要)
托马斯·哈格伦
Johan Jeuring,《ACM SIGPLAN Haskell研讨会论文集》,Haskell2003,瑞典乌普萨拉,2003年8月28日,第103-106页,ACM,瑞典乌普萨拉,2008年8月。
编程工具集概述 (摘要)
托马斯·哈格伦詹姆斯·胡克,马克·琼斯,理查德·基伯茨
2004年4月HCSS04高可信度软件和系统会议。
Haskell中操作系统构建的原则方法 (摘要)
托马斯·哈格伦,马克·琼斯丽贝卡·莱斯利,安德鲁·托尔马赫
2005年9月,爱沙尼亚塔林,第十届ACM SIGPLAN函数式编程国际会议记录,第116-128页。
用函数语言编写系统软件:一份经验报告
伊沃·S·迪亚奇基,托马斯·哈格伦,马克·琼斯,丽贝卡·莱斯利,安德鲁·托尔马赫
在2007年10月于美国华盛顿州史蒂文森举行的第四届编程语言和操作系统研讨会论文集中。
基于Web的多语言语法翻译工具
阿内·兰塔,克拉西米尔·安吉洛夫,托马斯·哈格伦
2010年7月,瑞典乌普萨拉,计算语言学协会,ACL 2010系统演示会议记录,第66-71页。
MOLTO短语手册
奥尔加·卡普洛蒂,克拉西米尔·安吉洛夫、雷蒙娜·埃纳什(Ramona Enache)、,托马斯·哈格伦,阿内·兰塔
2010年10月在瑞典林雪平举行的2010年瑞典语言技术会议,第35-36页。
基于云的多语言语法编辑器 (摘要)
托马斯·哈格伦、雷蒙娜·埃纳什(Ramona Enache)、,阿内·兰塔
《跨框架语法工程(GEAF)2015年研讨会论文集》,第41-48页,计算语言学协会,中国北京,2015年7月。
跨语言语法:将语法框架与普遍依存关系联系起来 (摘要)
阿内·兰塔普拉桑特·科拉奇纳,托马斯·哈格伦
在NoDaLiDa 2017中,NEALT Proceedings,Linköping University Electronic Press,Gothenburg,Sweden,软件演示,\网址{http://nodalida2017.se/program}2017年5月。

软件

托马斯·哈格伦的Ohloh简介 编写计算机程序是我喜欢做的事,我两者都做在我的工作和爱好中。下面,我提到其中一些,都很小和大型。

Web应用程序

我首先提到一些web应用程序,因为它对您来说很容易试试看。
Web控件(2017年)
WebFudgets允许使用Fudgets构建Haskell程序(参见下文)在网页中运行。我已经改编了一些福吉兹的节目WebFudgets。
GF云(2010-2016)
一些基于GF公司,由我和其他人开发的。
以下“玩具”是我在教编译器构造课程2001年:
RegToy公司(2001年1月,2019年5月更新)
一个小型Haskell程序的web界面,用于转换常规有限自动机的表达式。
LRToy公司(2001年1月)
生成LR的小Haskell程序的web界面分析BNF语法的表。
FlowToy公司(2001年2月)
一个小型Haskell程序的web接口,该程序执行中间语言程序的简单数据流分析。
一些较旧的web应用程序:
有轨电车(~1996-2000)
一个完整、独立、专用的搜索哥德堡旅游路线的web服务器哈斯克尔实施的公共交通系统。(这样的web服务没有在我写的时候就已经存在了。现在,你可以使用类似的官方提供的服务瓦斯特拉菲克.)
韦伯斯特英语词典(~1995)
一个相当小的程序,部分是shell脚本,部分是C。
克洛肯(~1995)
用瑞典语显示时间。一个小的C程序。

其他网络相关软件

作为一名专门的函数式程序员,我做了一些用函数语言编写web软件的实验哈斯克尔:

WWW浏览器-一种web浏览器(1994)

这很简单web浏览器.因为它取回了并行内联图像,它可以比NCSA Mosaic(当时的主流浏览器)。本章对此进行了描述WWW浏览器-WWW客户属于我的博士论文.

www检查链接(~1994)

这是一个网页作者的工具。wwwchecklinks搜索文档层次结构和报告断开的链接.它还生成交叉引用列表。

互联网图书馆(1994年)
包含构建所需关键组件的库WWW浏览器、wwwchecklinks、,有轨电车和其他网络相关软件。

其他一些软件

软糖(1991-1996)
Haskell的GUI工具包马格纳斯我主要是在1991-1995年实施的,但我仍然会不时进行一些添加和改进。我们还实现了一些游戏和其他使用Fudgets的小程序。有关一些示例,请参见这个Fudgets演示页面.
阿尔法(1996-2004)
具有图形用户界面的校对助手,已实现在Haskell中使用Fudgets。我对Alfa的工作主要涉及图形用户界面,并将所有内容都插在一起。阿格达GF公司在Alfa中使用。
Programatica Haskell前端(2001-2006)
这基本上是一个Haskell编译器前端,我花了很多时间在中作为PostDoc工作的时间Programatica项目.
房屋
在Haskell中实现的原型操作系统是2004年哈斯克尔研讨会上提出的Programatica项目ICFP 2005.
hbcmake公司
随附的自动制造工具高压断路器,用LML编写。它有作为nhcmake公司,随一起提供国家控股公司,及以后赫马克,更独立于编译器的版本nhcmake公司.
Humake公司
的继承人hbc蛋糕。它有一个图形用户接口,它可以在多台机器上并行编译本地网络。尽管我自己使用它(例如,编译阿尔法)我从来没有认为它已经完成了,所以它还没有完成已向公众发布。
规则(1999-)
我创建的一个用于我个人操作的小工具寄存器(即关系数据库中的表或关系)存储在文本文件中。它可以转换为不同的格式,例如。CSV、TSV、Unix邮箱、Unix密码文件、URL编码查询、,甚至JSON。

历史

我15岁时买了第一台电脑,从那以后我喜欢写各种各样的节目。编程语言I最初使用的大多是BASIC和6502汇编程序。作为本科生查尔默斯大学被介绍到函数式编程并被吸引住了,但我继续在我被介绍到Lazy ML编译器之前,我的大部分程序都是用C编写的作为一名博士生。现在,我用哈斯克尔,而且很少使用C或Shell脚本。

比较编程语言很有趣。我最喜欢的网页主题是99墙上的啤酒瓶。此页显示相同的编程数百种不同语言的示例!

只是为了好玩