函数式编程里的Materialization应该翻译成什么?

Materialization是函数式编程里的一个专业术语, 用于特指函数式编程中查询被实际执行并生成结果的这一过程.

首先, 搜了一下中文资料, 暂时没有对该词的中文翻译,  CSDN\博客园\阿里云上所有关于它的文档都没有做中文翻译, 直接沿用这个英文单词.

难道轮到我来创造这个词的中文翻译? 顿时觉得压力山大啊!

首先,我认为这个词是应该要翻译成中文的, 而不是保留英文原文不做翻译, 原因是: 这个词太长太难念了, 导致影响了阅读体验. 而像map, reduce这些又短又容易念的我在书中就没有做中文翻译, 直接保留英文原文不做翻译.

嗯, Materialization本身有如下多个中文意思, 我来逐一排除:

  1. 实体化. .NET开发者往往会联想到Entity Framework. 为了避免混淆, 放弃该选项.

  2. 实例化. 首先该词已经被C++中的instantiation占了坑. 同时实例化往往会被人联想到new一个class的object. 并且有丰富OOP经验而又没有函数式编程经验的.NET试读者往往会第一时间想到这个词. 极其容易造成误解,故放弃该选项.

  3. 具体化. 该词已经被C++中的specialization占了坑. 为了避免混淆, 放弃该选项.

  4. 物化. 有丰富OOP经验而又没有函数式编程经验的.NET试读者第一时间不能理解这个词, 但是很多现有的技术文档都指向这个意思.

  5. 物质化. 和"物化"同一意思.

我最终倾向于"物化"和"物质化"两者之一, 现在发起投票, 请留言发表你的意见. 投票将在本周日结束. 周一将交稿给出版社.

如果最终无人留言投票, 我将会采用"物化"做为中文翻译.

在翻译的过程中, 我和作者不断沟通, 和作者一起不断地刷新自己, 对于原著的每一节都有新的认识和修改, 我意识到完美是永无止境的. 也许Materialization以后会有更好的翻译. 但是在这里先公示一下, 请大家以后不要吐槽我是用机器翻译这本书.:-) 

=======2019-06-27 08:31 更新======

此帖投放在全国各地的.NET俱乐部微信群一夜之后,  有不少群友提供了宝贵的意见, 我罗列如下:

  1. 来自北京.NET俱乐部的: 建议叫m13n, 就像k8s, i18n一样. 嗯, 这个建议的确不错, 也在我旧有思路之外, 不过目前函数式编程尚未兴起, Materialization还未被大家熟知, 不像k8s, i18n那样熟为人知, 因此在本书中叫m13n可能会让人莫名其妙. 但是在以后的岁月中, 在函数式编程广为人知的时候, 叫m13n的确会和k8s, i18n一样方便.

  2. 来自长沙.NET俱乐部的: 联想起另外一个专业名词"物化视图", 感觉像同一个意思, 一个计算过程, 执行后生成结果(然后保存起来). 同时有另外两个人也支持使用"物化"这个词

  3. 来自成都.NET俱乐部的:

    1. 有人提出"实化"和"石化", 

    2. 有人提出"物料化",

    3. 有人认为"物化"和"物质化"还是有很大区别的.

    4. 有人认为: 物, 物体一般描述实际的东西吧. 实, 实体感觉更抽象一些. 适合计算机领域. 比较我们平时说的实体, 改成物体多别扭啊. 这个建议很好, 但是翻译成实体很容易让大家联想到Entity, 但是Materialization和Entity以及EF没有任何关系

    5. 有人认为应该不做翻译.

    6. 不得不说, 成都.NET俱乐部讨论热烈啊, 谢谢. 关于这些建议, 我最后会综合分析的. 但是, 我认为这个词是应该要翻译成中文的, 而不是保留英文原文不做翻译, 原因是: 这个词太长太难念了, 导致影响了阅读体验. 像map, reduce这些又短又容易念的我在书中都没有做中文翻译, 直接保留英文原文不做翻译.

  4. 来自深圳.NET俱乐部的: 有人认为专用词去强硬翻译, 只会让新人误解, 甚至更难理解. 这个建议不错, 但是在实际试读中发现反而是相反的, 有十几年工作经验的.NET开发者看到未做翻译的英文原词要么就是能直接看懂, 要么就会去google一下. 反而只有半年.NET工作经验的应届毕业生会觉得莫名其妙, 影响阅读体验. by the way, 还有人吐槽"鲁棒性"这个词的翻译, 更加让我意识到, 我做为第一个翻译Materialization这个词的责任重大啊, 不想给以后的人挖坑.

  5. 来自合肥.NET俱乐部的: 有人支持"物化"一票

  6. 来自武汉.NET俱乐部的:有人反映oracle中的物化视图也是用的“物化”这个词,“物化”两票,m13n一票

  7. 来自我本人朋友圈留言的: 投"物化"两票

  8. 直接在此blog post下留言的痴者工良, 留言大家也都能看得到了.

谢谢大家

==========2019-06-29 11:59 更新=========

经过各位朋友和.NET开发人员的散发,从更多渠道得到更多的意见,详情如下:

  1. 来自《构建之法》微信群的:赞同“物化”,认为术语最重要的就是区分度,所以连“鲁棒性”都可以吃得开就是因为这个原因。

  2. 来自沈阳.NET俱乐部的“西部-叛徒”朋友:

    1. 具现化:来源于科幻|ACG这边,但是好像有别的英文词对应了,好消息的话就是目前还未推广开来。在acg这边已经无障碍,意思完全是 抽象|精神->具体|现实。同时这种复杂外来语源的词能连起来朗读即可,不用强求音节数,因为现代汉语2~4都是合理而常见的

    2. 实现化:个人认为实现这个词可以作为名词,加上“化”来再动词化或继续赋予名词词性从构词上没漏洞,而且能表达出原意的大部分

    3. 物质化:直接按照material基本意思的动词化,相比物化,个人认为双音节词作词根更能精准表达含义的层面、领域,避免了物化这个词产生的生疏感,

    4. 实物化:这个翻译个人感觉地气得太多了,但也能明白,就是不知道和原词的引申含义是否能契合

    5. 质化。

    6. 实化。

    7. 具化。

    8. 现在“化”字词很多是日语反向传播回来的,不知道是否能在日语上找到更多灵感。

    9. 个人解析原词核心material可以翻译为:具 物 实 现 质 材 料 要(机要的要),其中后三个感觉和原词方向有些远

同时,我也把这个事情告诉了书籍英文版原版作者,作者表示大大地同意加赞赏。

谢谢大家

640?wx_fmt=jpeg


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/315223.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Ozon Tech Challenge 2020 (Div.1 + Div.2) E.Kuroni and the Score Distribution 构造

传送门 文章目录题意:思路:题意: 思路: 不难想到,长度为nnn的数组最多的满足条件的三元组序列是1,2,3....,n1,2,3....,n1,2,3....,n,对于每一个位置贡献为i−12\frac{i-1}{2}2i−1​,那么如果m…

【CF1209E】Rotate Columns【状压DP】【位运算】【贪心】

题意:给一个NMN \times MNM的矩阵,可以进行任意多次操作将一列轮换,求每一行的最大值之和的最大值。多组数据。 Easy VersionN≤4N \leq 4N≤4,M≤100M \leq100M≤100 Hard VersionN≤12N \leq 12N≤12,M≤2000M \leq2000M≤2000 看这数据…

Exceptionless(二) - 使用进阶

作者:markjiang7m2原文地址:https://www.cnblogs.com/markjiang7m2/p/11100563.html官网地址:http://letyouknow.net在上一篇文章Exceptionless - .Net Core开源日志框架中就说到如何对Exceptionless进行本地化部署,不过我也跟大家…

Ozon Tech Challenge 2020 (Div.1 + Div.2) F. Kuroni and the Punishment 随机化

传送门 文章目录题意:思路:题意: 给你nnn个数,每次操作可以选择将某个数1,−11,-11,−1,求最少进行多少次操作使得所有数都为正数且gcd>1gcd>1gcd>1。 思路: 考虑gcd2gcd2gcd2的情况&#xff0…

【洛谷P4841】城市规划【指数型生成函数】【麦克劳林级数】【多项式对数】

传送门 题意:求NNN个点的带标号无向连通简单图的个数。 N≤130000N \leq 130000N≤130000 这个问题的主要矛盾在于连通 这个并不好表示,但可以用这个表示出不要求连通的方案数 由于带标号,先构造答案的EGF f(x)∑i0∞aii!xif(x)\sum_{i0}…

基于 Kong 和 Kubernetes 的 WebApi 多版本解决方案

前言大家好,很久没有写博客了,最近半年也是比较的忙,所以给关注我的粉丝们道个歉。去年和朱永光大哥聊的时候提了一下我们的这个方案,他说让我有空写篇博客讲一下,之前是非常的忙,所以这次趁着有些时间就写…

CodeCraft-20 (Div. 2) D. Nash Matrix 构造 + dfs

传送门 文章目录题意:思路:题意: 给定一个n∗nn*nn∗n的矩阵,每个点上面都有一个xi,yix_i,y_ixi​,yi​,表示这个点到xi,yix_i,y_ixi​,yi​这个点停下,当xi−1,yi−1x_i-1,y_i-1xi​−1,yi​−1的时候代表…

【HAOI2018】染色【反向二项式反演】【NTT卷积】

传送门 题意:NNN个位置染MMM种颜色,恰好出现SSS次的颜色数量恰好为kkk时的愉悦度为wkw_kwk​,求所有方案的愉悦度之和。对100453580910045358091004535809取模。 N≤1e7N \leq 1e7N≤1e7,M≤1e5M \leq 1e5M≤1e5,S≤150S \leq 150S≤150 本题的恶心之处…

从严治码-别人在项目中下毒,我该怎么治?

01 从软考说起从4月份开始,由于备考《系统集成项目管理工程师》的原因,博客没有持续更新,在上半年考试结束之后,又对项目进行了一些收尾的工作。下面就这段时间的学习作一个记录和总结吧。在学习的过程中,提炼了一些自…

CodeCraft-20 (Div. 2) C. Primitive Primes 思维 + 数论

传送门 文章目录题意&#xff1a;思路&#xff1a;题意&#xff1a; 给你两个长度分别为n,mn,mn,m的多项式&#xff0c;将他们乘起来&#xff0c;问系数modp0\bmod p 0modp0的项的指数是多少&#xff0c;两个多项式所有项的系数gcd1gcd1gcd1。 n,m<1e6n,m<1e6n,m<1e6…

【LOJ166】拉格朗日插值2【拉格朗日插值】【NTT卷积】

传送门 题意&#xff1a;给定n,m,f(0),f(1),......,f(n)n,m,f(0),f(1),... ...,f(n)n,m,f(0),f(1),......,f(n)&#xff0c;求f(m),f(m1),......f(mn)f(m),f(m1),... ...f(mn)f(m),f(m1),......f(mn) 模998244353998244353998244353 n≤100000,m≤1e8,n<mn \leq 100000,m \…

学习MVVM设计模式后第一次用于生产

WPF的MVVM设计模式从winform转变到WPF的过程&#xff0c;难点主要还是在MVVM的设计模式。当然&#xff0c;如果依然采用winform的涉及方式&#xff0c;在每个控件背后绑定事件的方式运用在wpf中&#xff0c;依然可行&#xff0c;但是假如GUI改版&#xff0c;其背后绑定的特别为…

剑指 Offer 14- II. 剪绳子 II

给你一根长度为 n 的绳子&#xff0c;请把绳子剪成整数长度的 m 段&#xff08;m、n都是整数&#xff0c;n>1并且m>1&#xff09;&#xff0c;每段绳子的长度记为 k[0],k[1]...k[m - 1] 。请问 k[0]*k[1]*...*k[m - 1] 可能的最大乘积是多少&#xff1f;例如&#xff0c;…

Educational Codeforces Round 108 (Rated for Div. 2) D. Maximum Sum of Products 思维 + dp

传送门 文章目录题意&#xff1a;思路&#xff1a;题意&#xff1a; 给你两个长度为nnn的数组a,ba,ba,b&#xff0c;你可以至多反转一段连续区间&#xff0c;求∑i1nai∗bi\sum _{i1}^n a_i*b_i∑i1n​ai​∗bi​最大是多少。 n<5e3n<5e3n<5e3 思路&#xff1a; 首…

【CF1215E】Marbles【状压DP】

传送门 题意&#xff1a;给一个长为NNN的序列aaa&#xff0c;每次操作交换两个相邻位置&#xff0c;求最少操作次数使得所有相同的值连成一片。 N≤400000N \leq 400000N≤400000,ai≤20a_i \leq20ai​≤20 我们发现aia_iai​很小&#xff0c;盲猜单独考虑 我们重新确认一个…

netcore mvc快速开发系统(菜单,角色,权限[精确到按钮])开源

基于netcore2.0 mvc 开发的 快速搭建具有如下特色的后台管理系统用户管理菜单管理角色管理权限管理[精确到按钮]&#xff09;代码生成器代码克隆到本地 用vs2017或以上版本 打开工程。项目结构如下&#xff1a;找到DbModel下面的初始化db脚本里面包含4张表的schema和初始化数据…

剑指 Offer 25. 合并两个排序的链表

输入两个递增排序的链表&#xff0c;合并这两个链表并使新链表中的节点仍然是递增排序的。 示例1&#xff1a; 输入&#xff1a;1->2->4, 1->3->4 输出&#xff1a;1->1->2->3->4->4 限制&#xff1a; 0 < 链表长度 < 1000 思路&#xff1a;和…

Codeforces Round #720 (Div. 2) C. Nastia and a Hidden Permutation 交互

传送门 文章目录题意&#xff1a;思路&#xff1a;题意&#xff1a; 给你一个序列ppp长度nnn&#xff0c;每次可以执行两个种询问&#xff1a; t1max(min(x,pi),min(x1,pj))t1\ \ max(min(x,p_i),min(x1,p_j))t1 max(min(x,pi​),min(x1,pj​)) t2min(max(x,pi),max(x1,pj))t…

【NOIP2018】赛道修建【二分】【树形dp】【multiset】【贪心】

传送门 题意&#xff1a;给一棵带边权的树&#xff0c;求MMM条没有公共边的路径的最小长度的最大值。 N≤50000N \leq50000N≤50000 抛开NOIP不谈&#xff0c;其实这题本身出的很好 显然二分 问题转化成了“最多可以找多少条长度不小于kkk的路径” 递归处理 对于每个结点…

asp.net core 系列之Startup

这篇文章简单记录 ASP.NET Core中 &#xff0c;startup类的一些使用。一.前言在 Startup类中&#xff0c;一般有两个方法&#xff1a;ConfigureServices 方法: 用来配置应用的 service 。 Configure 方法&#xff1a;创建应用的请求处理管道它们都在应用启动时&#xff0c;被AS…