chapter 1 revise and :uk:
:uk:lize chapter 1 - lambda, revise and fix typo by the way
I'll pick up chapter 1 to translate.
:+1: cool, u can put anything want to discuss here about chapter 1 :smile:
hi, 第一章基本翻译好了,有几个问题:
README.md
- lambda的定义,我没有想到合适的翻译,英文版直接从wikipedia上引用过来吗?
- “匿名函数不是原本的 lambda 算子”,算子这个概念我不是很熟悉,翻译成“operator”?
anonymous_function.md
- “因为并没有期待值”,这句我不是很理解
- “因此
function()则是打印出来的 function 表达式穿件的匿名函数.”,“穿件”是不是一个typo错误,你想表达“传进来”?
arror_funcion.md
- " 只是少了
function和return以及 block, 不是吗? 如果觉得差不多, 因为你看惯了 JavaScript 的匿名函数, 你的大脑编译器自动的忽略了,因为他们不需要显示的存在." 这一段,我有些不太理解,你是想说觉得两种写法差不多的话,是一件好事,表明我们已经习惯了函数式的写法。或者你想表达:觉得两种写法差不多是一件坏事,我们应该区别对待两种写法? - “确实是 JavaScript 的一个 bug”,this的问题,是一个bug吗?
README
- 大意就是所有的运算都能化简成 lambda 运算
- 英文叫 lambda calculus, 可能是我中文叫 lambda 算子不合适,大概这个意思,就是 lambda 运算。
anonymous function
- 没有期待返回值,就是statement是不需要返回的, 只有 expression 有值
- 是 typo(后面可能还有很多 typo 不好意思)
arrow function
- 我意思是如果觉得看 function block 看习惯了,说明你习惯了 javascript 的 lambda 的复杂写法, 但这是完全是没有必要的,因为 lambda 只是一个简单的映射,箭头的方式更容易理解。
- 我听过 mozilla 的研究员讲过一个 session 说这其实是 bug, 他们终于制定了 arrow function 来修正了这个 bug, 因为按正常的 lambda 来说, 也不应该有 this, this 是面向对象的东西。 MDN 也提及 this 是一个 issue
第一章的翻译根据你的回答,更新了一些句子。几个问题:
README
- lambda定义那段,从markdown看,你的中文版似乎想引用一个超链接,但是你忘记放链接了。
- 随后的lambda calculus那一段,你将匿名函数和lambda算子区分开的原因是:匿名函数接受多个参数,lambda算子只接受一个参数。我的翻译是:
However, an anonymous function is not a lambda calculus, because an anonymous function may accept multiple parameters, whereas, the lambda calculus accepts only one parameter, like:
你的中文版没有这层意思“whereas, the lambda calculus accepts only one parameter”,加上去,是不是这句话的因果关系更加明显一些?
anonymous function
- 没有期待返回值,这一段,我翻译的版本调整了句子的前后顺序,试图将因果关系,递进关系表达地更加明显,可能还需要完善:
But why the error says:
function statement requires a name. In JavaScript, there is another way to declare a function, that is using function statement. A statement requires a name. The code above is treated as function statement, because it returns nothing. Therefore, we got the error.
谢谢了,我 merge 的时候看看