作者noctem (noctem)
看板PLT
标题Re: [徵才]Functional Programming 的相关工作
时间Wed Mar 7 17:05:58 2007
※ 引述《reader (读者)》之铭言:
: 原来你还是在研究程式语言,就我的认识,穆老师是在台湾对於程式语言
: 研究,特别是函数语言最为执着努力的一位了。
啊,谢谢你.. 其实国内做同样研究的还有几位(中研院的庄老师、
政大的陈老师等等.. ),做相关理论研究的更多,我算是回来得
最晚的。最近大家也觉得人够多了,该是合起来做一些事情的时候
了。
: 从上大学不久就开始了吧? 十年如一日的研究,真是不得不敬服。
咦?听来我们好像认识哩?请问您是...? :)
在国外是比较有环境让我做这样的研究。身边的人都做这样的东西,
处在其中觉得很自然,生产得也快。现在我回来一年了,还是没什
麽成绩。已经蛮慌的了。
: 其实我不太了解 program derivation 和 meta-programming 能有
: 什麽不同,最终都还是运用程式语言或工具生产软体的方法。
我粗略的理解是 meta-programming 泛指用程式来处理程式。
如果是这样的话,差别大概是: 我做的那种 derivation 多半是用
手在做的呢。一种解释是 derivation 是写程式的过程之一;另一
种讲法是把将一个演算法 derive 出来的过程当作了解它的方法。
这两种活动都是人在做。
当然渐渐地会发现,有些 derivation 的过程是蛮机械化的,因此这
些部份可以用电脑来辅助做。我们的目标之一应该也是尽量让
可以自动做的部份变多。因此也许可以说 program derivation
的成果可以应用在 meta programming 上吧。但对另一些人来说,
他们的兴趣是继续寻找用来 derive 程式的数学结构,能否自动化
就待会儿再说。
: 以上是用我设计的程式语言 (未发表) ,不过应该满容易理解的,就
: 不做额外说明了。
之後会发表吗? :)
: XML 处理这部分,一般是在 information retrieval 的领域中做的,
: 用程式语言来做,可能不是杀鸡用牛刀,就是很可能实用意义不够。
: 不过,若是想要做点什麽东西,配合 XML 的特性来设计,或是以此
: 做为起点,应该还不错。
嗯,目前是有些专门设计来处理 XML 的 functional 语言(例 XDuce
和 CDuce)。不过他们的设计重点放在型别上: 两个语言都有适合
XML 的 type system.
Information retrieval 是我不懂的东西.. @_@ 我开始碰 XML 也是
最近的事情,可能不很进入状况。其实这几年很多 programming language
的研究者开始搞 XML, 是觉得「我们搞跟树有关的东西也搞那麽多年了,
现在 XML 流行起来,我们能不能把之前弄的东西应用在这上面?」
然後就这麽试试看了。
: : functional language. 是否有可能设计一个语言,让你能先
: : 定义一个函数 f, 然後说「g 是 f 的反函数」?这样的语言能
: : 玩出什麽花样呢?
: 我不理解,先不谈可能性,但如果实作出来了,可以怎麽应用呢?
Hmm.. 研究反函数的学者有一些,通常的讲法是
o 有的人认为这是本来就该有的。函数可以 compose, 可以 apply,
可以 invert. 但现在的语言只能做前两者而不能做第三者,
是个缺陷,应该做出来。
o 可以扯很远扯到量子电脑:在量子电脑上的程式都是可以逆转的。
那麽最好是有鼓励 programmer 写出可逆的程式的语言。
此外我自己之前参加的一个计画中,有一小部份(很意外地)需要确保
programmer 写的程式是可逆的。所以当时做过一点点相关的研究。
不过老实说以上的理由说服力有多高,都要看写企划的人作文能力有
多强啦。对我来说,我想试试看这个计画的原因是好奇:其一是想知道
可不可能;其二是想知道如果要确保程式可逆,需要遵循哪些规则,
以及有了这个 invert operator 之後会怎麽影响程式风格。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.109.20.217
1F:推 godfat:可以拿来做超级 undo/redo 的能力? @_@ 03/08 00:23