2021年2月, 编程语言的七国集团峰会在风景优美的Linux庄园如期召开。

C, Java, Python, JavaScript , C++ , C#,  PHP 相继入座。

C语言作为主持人,在大屏幕上用一幅图总结了一下近二十年各国的沉浮。

各国代表对C语言的工作纷纷表示赞赏。

C语言说道:我们七国集团已经统治IT界20多年了,历经桌面时代,互联网时代,大数据时代,人工智能时代而不倒,这次会议就是争取把大好局面再维持20年!

C语言随后介绍了本次G7峰会的两大议题。

1. 解决内部争端

2. 应对新编程语言的威胁

第一个议题刚刚开始各方就吵成了一锅粥。

Java率先向JavaScript发难, 指责它不遵守约定,用Node.js向后端发起进攻的恶劣行为。

C#愤怒地举报JavaScript 用Electron 对桌面开发的蚕食。

JavaScript则辩解说C/C++/C#也可以写代码运行在浏览器端中,不信你们去看WebAssembly,还有Java也做桌面开发例如IDEA和Eclipse.....

眼瞅着第一个议题就要打起来,C老大赶紧呼吁各方冷静,要约束各方行为,为了大局不要内讧。

经过一番唇枪舌战, 各方再次确立了自己的势力范围:

桌面开发:C#

前端开发:JavaScript

系统级软件:C/C++

后端开发:Java/C#

大数据:Java/ Python

人工智能:C++/Python

然后大会转入第二个议题,C语言给每个人发了一份报告, 上面列举了最近10年出现的编程新秀。

Go : 2009

Rust : 2010

Kotlin : 2011

Elixir : 2011

Julia : 2012

TypeScript : 2012

Swift : 2014

Python代表立刻建议把Elixir和Swift划掉, 因为前者结合了Erlang和RoR,太小众了。后者只在苹果的生态系统中折腾,对G7没啥威胁。

JavaScript则建议划掉TypeScript, 毕竟和自己师出同门,最终还得编译成JavaScript才能运行。

大家纷纷表示同意。

Java 也不甘示弱地要求把Kotlin从列表中划掉,因为那只是一堆语法糖而已,对他没啥威胁。

C#提醒Java不可大意,毕竟Kotlin有Google这么一个大腿, Google 为了摆脱Java API的束缚,和Oracle大打出手,正在力推Kotlin。

Java则坚定地认为Kotlin只是一点点改良,不是革命,成不了气候。

C语言表达了对Julia的担忧,因为他号称将 C 语言的速度、Ruby 的灵活、Python 的通用性、Matlab的数学符号结合在一起,支持并行处理!

Python则不屑一顾,说野心越大失望越大,一个人不可能把所有的好都得了去, 再说了,它主要是面向科学计算的,不用担心。

C脑子中突然闪过一句名言:弱小不是生存的障碍,傲慢才是。

名单上只剩下了Go、Rust。

Go : 2009

Rust : 2010

Kotlin : 2011

Elixir : 2011

Julia : 2012

TypeScript : 2012

Swift : 2014

剩下的这两位不可小觑, Rust和C一样贴近硬件,还能解决野指针问题,微软已经表态支持。

Go语言号称互联网时代的C语言,这些年借着云计算的东风,发展迅速, 后端已经有很多系统用它开发了。

刚才热闹的气氛一下子紧张下来,大家都在盘算他们对自己利益的侵犯有多大。

良久以后,Python放了一个大招:“他们侵犯了程序员的人权!

原因是Go语言把类型定义放到变量名的后面,程序员很不适应,甚至真气逆行。

Rust的概念奇葩,所有权和借用难以被常人所理解,一段简单的代码都编译不过。

(码农翻身注:参见文章《我中了美人计》《自从我学了Rust,就开始了受虐之旅》)

大家都觉得可行,G7控制着主流舆论,占据道德制高点, 打人权牌轻而易举,这个招数屡试不爽。

Java则持保留意见,因为本家兄弟Scala和Go一样,也是把类型放到后面。

C语言则表示他和Ken Thompson很熟,如果实在不行就考虑招安Go,把G7变成G8。

只不过新人加入会触动现有的利益,需要从长计议。

为期半天的G7峰会胜利闭幕了,参会各方再次划分了各自势力范围,发表了一个重要的宣言。

宣言强调,G7经过多年的发展,非常稳定、成熟、强大,并且已经积累了海量的类库,拥有庞大的生态系统,采用新语言的成本极其高昂,风险极大。

宣言谴责了Go和Rust对程序员人权的侵犯,决定对他们实施为期一年的制裁,希望他们幡然悔悟,及时悬崖勒马。

宣言最后委婉地指出:G7的大门始终对任何人敞开,只要符合G7价值观的语言都欢迎加入。

(完)

重磅!七国首脑会议决定制裁Go语言!的更多相关文章

  1. G7或变G6+1?特朗普七国峰会箱友军开炮

    今日导读 G7 峰会刚召开完毕,德国总理默克尔发的一张照片就迅速火遍全球.照片中她身体前倾,像是在质问特朗普,而后者则双手交叉胸前,我自岿然不动,这张火药味十足的照片不禁让人脑补当时剑拔弩张的气氛.到 ...

  2. 第七课第六节,T语言流程语句( 版本5.0)

    select语句 seelct语句,可以说是if语句的升级版,当我们的if语句嵌套太多,或者if语句判断太多的时候,都可以考虑使用选择语句 在多条件判断的时候,选择语句的执行速度比多个if语句要快而且 ...

  3. 第七课第四节,T语言流程语句(版本5.0)

    break语句 通常用在循环.遍历语句中.当跳出(break)语句用于循环语句中时,可使程序终止循环而执行循环后面的语句, 通常跳出 语句总是与如果语句联在一起.即满足条件时便跳出循环.可以说:跳出语 ...

  4. 重磅︱文本挖掘深度学习之word2vec的R语言实现

    每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- 笔者寄语:2013年末,Google发布的 w ...

  5. PID控制算法的C语言实现七 梯形积分的PID控制算法C语言实现

    在PID控制律中积分项的作用是消除余差,为了减小余差,应提高积分项的运算精度,为此,可将矩形积分改为梯形积分. 梯形积分的计算公式为: pid.voltage=pid.Kp*pid.err+index ...

  6. 搞定C系语言的的swap

    http://www.cs.utsa.edu/~wagner/CS2213/swap/swap.html 原地址 Parameters, by value and by reference: Both ...

  7. 权力的游戏第七季/全集Game of Thrones迅雷下载

    艾美及金球奖获奖HBO原创剧集<权力的游戏>第七季将于2016年夏天晚些时候开拍.新的一季共有七集,主要拍摄地为北爱尔兰,部分镜头也将在西班牙和冰岛取景.上映时间预计将略有推迟,至2017 ...

  8. 重磅︱R+NLP:text2vec包——New 文本分析生态系统 No.1(一,简介)

    每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- 词向量的表示主流的有两种方式,一种当然是耳熟能 ...

  9. 一文犀利看懂中美贸易战 z

    如今的中国面对着前所未有的经济全球化的大环境.面对着如何成为创新性国家的重任. 钛媒体注:美国东部时间 7 月 6 日凌晨0:01 分,美国正式开始对 340 亿美元的中国产品加征 25% 的关税,这 ...

随机推荐

  1. F - F(最小生成树)

    题意:连通各点最短距离,最小生成树. You are assigned to design network connections between certain points in a wide a ...

  2. HDU-4315 Climbing the Hill

    题目链接 先回到阶梯博弈的裸题中,比如POJ-1704,所有的块只能向左移并且不能跨越,这个向左移的结果我们可以理解为将左边的宽度减少使得右边的宽度增加,等同于阶梯模型中将石子从高阶移动到低阶.那么最 ...

  3. hdu3436 Queue-jumpers(Splay)

    Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission ...

  4. 【noi 2.6_747】Divisibility(DP)

    这题题意与前面的"判断整除"重复了.具体解释可看我这篇的博文. http://www.cnblogs.com/konjak/p/5936738.html 1 #include< ...

  5. hdu 01 Matrix

    Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission ...

  6. Java 窗口 绘制图形 #1

    写在前面: editplus换成eclipse了 Sketchpad要钱,买不起 自己搞(rua) by emeralddarkness 建立了一个平面直角坐标系 两个变元x,y,参数i 实现了以下功 ...

  7. C# TCP应用编程一 概述

    TCP 是Transmission Control Protocol(传输控制协议)的简称,是TCP/IP 体系中面向连接的运输层协议,在网络中提供全双工的和可靠的服务.一旦通信双方建立了TCP 连接 ...

  8. OpenStack Train版-5.安装nova计算服务(控制节点)

    nova计算服务需要在 控制节点 和 计算节点 都安装 控制节点主要安装 ​ nova-api(nova主服务)​ nova-scheduler(nova调度服务)​ nova-conductor(n ...

  9. JavaScript预编译过程理解

    1-JavaScript运行三部曲 语法分析 预编译 解释执行 语法分析很简单,就是引擎检查你的代码有没有什么低级的语法错误: 解释执行顾名思义便是执行代码了: 预编译简单理解就是在内存中开辟一些空间 ...

  10. CSS 解决Float后塌陷问题

    当父级元素没有设定高度时候,而子集元素设定float类型时候,此时父级元素不能靠子集元素撑起来,所以就形成了塌陷: 示例分析 **1.Float之前的效果** <!DOCTYPE html> ...