搜索到孟岩blog里这样一篇文章,
Functional Programming应译为“泛函程序设计”
http://blog.csdn.net/myan/archive/2004/06/11/1137.aspx
我认为这样翻译确实比“函数式程序设计”好。把functional programming翻译 成“函数式程序设计”的误导确实是比较严重的,这样翻译确实是词不达意义甚 至是南辕北辙的(其实我觉得这个英文名字起的就不怎么恰当)。
虽然这么翻译时间已经很长了,但是时间长并不是可以错误的理由,已经误导了这么多人,难道还要在继续误导下去吗?
不过“泛函”一词在“泛函分析”中已经使用,并且“泛函分析”中的“泛函”并不等同于“以函数为变量的函数”,但是通俗一点的理解这样讲也是可以的,一些“泛函分析”教材也是这样引导入门。其实“泛函分析”中是扩展了“泛函”的概念,从“泛函”字面上也看不出来,这么看连“泛函分析”中“泛函”叫成“泛函”也是不贴切的了。不过我认为这么叫还是可以的,不要对“泛函分析”中的“泛函”名词要求这么严格。那么同样的,也不要对“泛函程序设计”中的名词意义要求非得严格符合“泛函分析”中的意义。
不管怎么讲,把Functional Programming译为“泛函程序设计” 都要比译成“函数式程序设计”要好。即使仍然有误导,但是比“函数式程序设计”可要小多了。
还可以考虑有没有更好的翻译方法,我想了一个,“复合函数程序设计”,不过自己也感觉不满意,还不如叫成“泛函程序设计” 。
我认为孟岩提出的这个问题是挺重要的,目前国内学术界很多名词都翻译不贴切,给学习与科研都造成不少障碍,确实应该解决,时间长并不是错误的理由。