为嘛编程语言都是免费的呢?

2019-07-09 14:51:29 +08:00
 bbdk

....为嘛 python c++都是免费的呢;因为没有唯一的归属么?

14898 次点击
所在节点    程序员
118 条回复
Davic1
2019-07-09 16:20:10 +08:00
至于那些楼瞎鸡儿喷楼主的, 我倒觉得人品很 low.
别人提个问题, 自己不想着把自己的观点说清楚, 非要以"这种问题也要问"的心理先入为主.尤其是 1 楼的回答, 好蠢.
guokeke
2019-07-09 16:25:11 +08:00
我觉得是因为社区驱动,开源文化导致的,而且都和创始人价值观直接挂钩,很难收费,或者说就不存在收费这个概念, 从一开始就确立的一个愿景。
要是收费了,就会进行一波自然选择,会有新的语言被创造出来。
不仅仅是语言,像 linux 也“免费”的,虽然说开源不等于免费,可事实上就是免费的, 收费的都是公司服务, 代码本身就一直可以下载。
mannixSuo
2019-07-09 16:27:10 +08:00
java 是不是要收费啦?
FrankHB
2019-07-09 16:29:04 +08:00
@vsitebon 那个 Quora 挂的第一个答案就有问题↓
@lithiumii MATLAB 不是语言。
我不知道有什么能合法有效完全地阻止你自己实现一个兼容的 MATLAB scripting language 然后免费发布(当然,不能侵犯其它权利,不用同样的名字)。

@mokeyjay @qq292382270 类似地,我不知道谁能合法地完全阻止你山寨一个兼容易语言的其它语言的实现免费发布。

@shijingshijing 指令集不是整个授权的对象。要告基本上就是折腾专利。
否则 QEMU 之类的模拟器早就万世不得超生了。

@littlewing 我不觉得 Oracle 还能造出不存在的法律并立即生效。

另外,就算是软件实现,一般版权法也不限制使用——直接限制的是类似非法复制之类的传播和修改后再次发布的衍生作品之类明确有限的一些情况,这不包括软件的“使用”。
不过中国的法律要求你停止使用明知侵权的软件。
zzzzzzZ
2019-07-09 16:29:28 +08:00
@bbdk #5
语言不免费,你怎么开始学这门语言?怎么在哪使用这门语言?如果你学个英语连基本的语法都学不懂就要开始交“英语费”?怎么交交给谁?交给英国吗?

开发环境收费怎么就不算是编程语言收费了?

iOS 不交钱不给上架,上架了还收你支付渠道抽成
易语言不交钱不给编译,除非你用盗版
C#、Unity 不交钱不给商用,个人学习交流可以,商用不被发现可以,盈利或者未盈利被抓住了,来找你打官司还能一直钻牛角尖的“编程语言免费”来跟法院脱罪是吗?

@Davic1 #21 是因为你跟楼主都缺乏常识,缺乏基本的逻辑思考能力,才需要这么费力的把“编程语言为什么免费”和“编程环境收费关编程语言免费什么事”来解释清楚

顺便,请不要以为开源的编程语言免费,就管中窥豹一叶障目,PHP/Java/C++的标准库是免费且开源的,但是也有很多付费库,好听点就是先问是不是再问为什么,难听点就是多去读点书
Davic1
2019-07-09 16:33:24 +08:00
@zzzzzzZ 那你觉得把"为什么 1+1=2"解释清楚的人是不是也是缺乏常识呢? 请先学会就题论题, 再去炫耀自己的知识.
dddz97
2019-07-09 16:35:54 +08:00
我打几个英文还要给钱?
guokeke
2019-07-09 16:37:05 +08:00
@bbdk 这个问题其实很复杂,源头应该是 “自由软件运动”, 我们现在能在这里免费发文字都要感谢 “自由软件运动” 以及站长。
lithiumii
2019-07-09 16:37:19 +08:00
@FrankHB 根据维基: MATLAB (matrix laboratory) is a multi-paradigm numerical computing environment and proprietary **programming language** developed by MathWorks.
当然硬要说它不是语言那就不是吧。
另外 MATLAB scripting language 也是有的,叫 Octave
Sornets
2019-07-09 16:39:41 +08:00
因为收费的会被免费的取代
而作者会通过其他方式获得回报

就像微信如果收费才能收发消息立马就要完蛋,但是免费不耽误人家挣钱
mageemeng
2019-07-09 16:42:03 +08:00
@Davic1 赞同,这本来就是一个茶余饭后的好话题
FrankHB
2019-07-09 16:42:18 +08:00
@zzzzzzZ 开发环境收费算是编程语言收费,你能糊弄过法官再说。
C#不交钱不给商用?没给钱商用.NET Core 的是不是先要挖掉 C#的实现?
正常的标准库一坨 spec,都没担保提供参考实现,哪来的源码,开的什么源?就算是指实现,至少 VC++自带的 Dinkumware 长期以来就一直不是“免费且开源”的。
zzzzzzZ
2019-07-09 16:43:06 +08:00
@Davic1 #26 杠精的眼里永远只有自己那一片井,哪怕脸都被打的啪啪响了还是要杠一句我是对的,没错你是对的
zzzzzzZ
2019-07-09 16:45:39 +08:00
@FrankHB #29 你可能是盗版 Windows 的受害者,顺便后面那一段很好的补充了我开源语言与非开源语言的论证
dyllanwli
2019-07-09 16:51:25 +08:00
点进去看 zzzz 原来天天就喷来喷去的哈哈哈哈哈
chencode
2019-07-09 16:54:33 +08:00
@lithiumii octave 了解一下
alittlefun
2019-07-09 16:55:14 +08:00
java ?
FrankHB
2019-07-09 16:57:42 +08:00
@lithiumii 对 end-user 来说,你如果是 MATLAB 的用户,同样是 MATLAB 提供的所谓 MATLAB programing language 的实现的用户。这时候你可以不区分它的哪部分才是语言实现,因为 MathWorks 就没发布单独产品能让你把 MATLAB 中的语言实现甚至语言本身剥离出来单独用——锅的源头其实是懒得单独给语言命名。(不像 Mathematica 最后总算是挤出来个叫 Wolfram Language 的……)
但是考虑重新实现语言来讲,就完全不是这种情况了。不把作为整体产品的 MATLAB 分开就没法说清楚做的是什么。这时候 MATLAB 这个名字还是留给整个产品清楚点。MATLAB scripting language 是引用维基里的限制得比较明确的说法,或者按官方的说法得拿 MATLAB programming language 消歧义。
讨论语言单独具有的权利时也是如此,所以至少不加区分是有问题的。
(也有类似其它抽风的比如,Perl 是语言,perl 指实现。)
zzzzzzZ
2019-07-09 16:58:57 +08:00
@dyllanwli #32 不要污蔑我,欢迎点进来看,顺便这破绽有价值的帖子越来越少了,知乎化 80%?
FrankHB
2019-07-09 17:00:04 +08:00
@zzzzzzZ 你可能是假版权法和讼棍骗子的受害者。什么东西算盗版,语言是不是有所谓“开源”,补完法律常识课再说。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/581333

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX