Materialization是函数式编程里的一个专业术语, 用于特指函数式编程中查询被实际执行并生成结果的这一过程.
首先, 搜了一下中文资料, 暂时没有对该词的中文翻译, CSDN\\博客园\\阿里云上所有关于它的文档都没有做中文翻译, 直接沿用这个英文单词.
难道轮到我来创造这个词的中文翻译? 顿时觉得压力山大啊!
嗯, Materialization本身有如下多个中文意思, 我来逐一排除:
- 实体化. .NET开发者往往会联想到Entity Framework. 为了避免混淆, 放弃该选项.
- 实例化. 首先该词已经被C++中的instantiation占了坑. 同时实例化往往会被人联想到new一个class的object. 并且有丰富OOP经验而又没有函数式编程经验的.NET试读者往往会第一时间想到这个词. 极其容易造成误解,故放弃该选项.
- 具体化. 该词已经被C++中的specialization占了坑. 为了避免混淆, 放弃该选项.
- 物化. 有丰富OOP经验而又没有函数式编程经验的.NET试读者第一时间不能理解这个词, 但是很多现有的技术文档都指向这个意思.
- 物质化. 和\"物化\"同一意思.
我最终倾向于\"物化\"和\"物质化\"两者之一, 现在发起投票, 请留言发表你的意见. 投票将在本周日结束. 周一将交稿给出版社.
如果最终无人留言投票, 我将会采用\"物化\"做为中文翻译.
在翻译的过程中, 我和作者不断沟通, 和作者一起不断地刷新自己, 对于原著的每一节都有新的认识和修改, 我意识到完美是永无止境的. 也许Materialization以后会有更好的翻译. 但是在这里先公示一下, 请大家以后不要吐槽我是用机器翻译这本书.:-)