-
Notifications
You must be signed in to change notification settings - Fork 275
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
“堆栈”这种用词,经不起推敲,且毫无逻辑,英文也无对应 #54
Comments
本文这里的表达我觉得是:“堆+栈”(heap+stack),都指代了。不过看例子大概率是 “堆”。 |
DLL 没有自己的调用栈,也就不存在栈的概念。 |
首先”堆栈“这个词是有其含义的,“堆栈”一般指的是“stack”。 |
首先这是一句正确的废话。这句话非常没有价值,尤其你还强调了“一般”。因为就在仓库,他在计算机中使用了“堆栈”所表达的含义就不是:“栈”(stack),而是:“堆”(heap)。 这种词语早就该被扫进历史的垃圾堆里,毫无存在的价值,它在计算机中既不能代表栈,也不能代表堆,也很少有人拿它指代“堆+栈”,这种混乱不该存在,这没有什么好争议的。
这种愚蠢翻译也应该扫进历史的垃圾堆里,“Stacks”翻译为“堆栈”,甚至在很多地方不需要带 “s”,在众多古老中文书籍中都存在此用词。尤其众多文档中同样有。大多数人自己写堆栈这个词都不见得知道自己在说“堆”,还是“栈”,当使用“堆栈”这个词语,纯属徒增阅读难度。 最后,没有必要给这种过时的古老用词洗,我已经说了,它的中文翻译经不起推敲,没有价值。“堆栈”、“堆栈”,既有人拿它表示“堆”,也有人拿它表示“栈”,这个词语本身是更差的表达方式,而且存在根本的歧义,两个有明确指代的“字”,组成了一个没有多少价值的“词”。 |
不是“很少有人用它来指堆 + 栈”,而是用“堆栈”的人指的都是栈。没看懂你在杠什么。给出一个“堆栈”包含“堆”的正经文章谢谢。 |
这种错误的词语我都不知道有什么存在的必要和讨论的余地,没有价值。 |
在讨论段划分的时候, "堆"/"栈"/"堆栈" 三个词都是被广泛认可的, 但很明显有个异类试图混淆指代, 把 stack 翻译成 "堆栈" 就是个历史 错误, 因为一部分人被荼毒并习以为常了就认为这是最佳的? 明明有更简洁的叫法"栈", 为什么要坚持一个暧昧的/近似于行业黑话的翻译呢? 还是说你觉得让初学者面对这个你曾经或许困惑过的黑话体会你当年的"辛路历程"很有趣? |
照这么说 C 语言把定长数组叫 array 也是个错误。B 语言里定长数组叫 vector 更符合词汇本意,保持协变性的矢量维度是固定的。 不是说非要讨论什么东西。假设有人看到了一篇文章里写“堆栈”,你总不能给人家洋洋洒洒骂一顿,而是应该知道文章里想表达的是什么意思吧,你又不能改别人写的文章。直接给喷一顿除了让别人看不懂之外意义何在。 |
在能改正的地方改正,在能讨论的地方讨论,在能教导的地方教导。 |
你这句话更是莫名其妙, 提 issue 就是为了促进改善项目, 改不了的自然不强求, 但是如果不允许提建议你干脆关了该仓库 issue ? |
我也没说不改正啊,看看我之前说的我自己也都更倾向于“栈”一个字,避免混淆。。。 |
我也没说不改正啊,看看我之前说的我自己也都更倾向于改成“栈”一个字,避免混淆。。。 和愣头青交流真困难。 |
综上,这与将这里的描述“堆栈”改为什么是两件事情,从始至终没有在和你聊这个基本共识。 |
那你扯那么多废话干嘛? 洋洋洒洒小论文, 引经据典讨论观点 A 的正确性, 然后结尾写个支持 观点 B ? 然后你又批评指出问题的人, 又赞同批评的观点, 你知道自己在说什么吗? 看你的发言真没劲. |
瞪大眼睛好好看看 conversation 再说话。 |
conversation 没问题, 倒是你大概率是写申论入脑了, 一个话题正说反说, 因为一个本身就没什么争议的话题引入大量的无用例子. |
“堆栈”这个词在安全领域用的还是比较多的,比如堆栈溢出、堆栈平衡等等。因为堆和栈可以在同一块连续的虚拟内存中,如果一方被破坏,另一方也会遭到间接乃至直接的破坏,所以经常合在一起说。 “堆栈”本身就是一种泛指,可以指不断变化的内存区域,也可以指内存管理相关的数据结构,但这些问题在OS层面,不在语言层面,恐怕会越说越复杂,所以就用了“堆栈”这种比较宽泛的概念。 当然,如果引起读者的误解就不好了,后续优化吧~ |
这并未被主流所认可,甚至是少数人认为,可以看我最早的说辞:
以及其他人的:
就应该清晰的感觉到,大家并不认可它是泛指,反而主流的认为就是:“栈”,且绝大多数的情况下就是如此。 所以如我所说,有极大歧义,并没有绝对统一(即使统一也存在问题)。 也就是我最早说的问题:“那么“堆栈”到底是“堆”(heap)还是“栈”(stack),又或者是“堆+栈”(heap+stack)?” 目前的答案是:并无标准答案,每个人甚至有不同的理解,主流的两种是单指“栈”,或者“泛指”。 事实上泛指也只是我在本 issue 看到的,其他时候大多数只是听说。 这个用词有历史原因,有个人理解原因,但,总归不可否认的是:这不够好。 按照您的理解是“泛指”,也意味着这里表达的意思是“泛指”?那么这个优化措辞可能就比较困难了。 |
在阅读 ▌R2.5 资源的分配与回收方法应成对提供 这一节内容的时候,我注意到了一个用词:“堆栈”。
这是一个在中文互联网极其常见,又古老的词语,那么“堆栈”到底是“堆”(heap)还是“栈”(stack),又或者是“堆+栈”(heap+stack)?
据我所知,通常来说它在指:“栈”。这种用词毫无逻辑且经不起推敲,纯属历史遗留,应当改正。
The text was updated successfully, but these errors were encountered: