以前为了做compiler,研读+实现了几乎所有种类的语言。现在看语法手册几乎很快就可以理解整个语言的内容。后来我对比了一下go和rust,发现go的类型系统简直就是拼凑的。这会导致跟C语言一样,需要高超的技巧才能写大程序。而rust则没有这种问题,每个部分的组成都很和谐。
----------------------------------------------------------------------

Rust是挺优秀的,函数式本来就比命令式来的优雅。但同时也要看到,两种语言的定位不同。Go的定位是取代C(或C++),做所有软件的基础。而Rust想是一种划时代的语言,如果成功,将是颠覆性的。

但同时也应该看到,
Go的目标简单,现在也比较稳定,可以使用了
而Rust虽然很强大,但它还处于很早期的阶段,一切还有待于发展。

如果Rust能实现其大部分特性,将是十分优秀的语言,期待。

----------------------------------------------------------------------

语言之争很费时间的,没必要和这帮人说。每个人都有自己的偏好,有的人就对Java来电,有的人就不喜欢Go,你说啥都没用的。自己用着舒服就醒了。
顺便提醒你一下,意见有没有道理不是说某个compiler大拿就能判定的。首先是不是大拿,多大拿另说,如果你问rob
pike,他肯定说Go比Rust好,rob和这个人比谁更大拿?Linus说C++ sucks,难不成C++程序员全换行业了?

自己专心做自己的事情就是了。
至于那句“作者竟然说学完C++的时间和用go写64个开源项目的时间一样多”,呵呵,他明显没看懂这个玩笑。

是么?Go team的人里面,应用开发的大拿其实还是不少的
Go推出的主要目的之一就是G内部大东西太多了,系统级开发巨型项目非常痛苦,所以估计Go开发时和不同team都有沟通交流,要address的问题很多就是巨型开发team中的实际问题。举个例子,Go的interface就是专为大型应用项目设计的,原因大家也都知道吧。Go的优点在实际大型应用项目已经体现,而且不是说除了Google没人用,用了的人反馈是什么样的,大家估计也有所耳闻

Dart team起点就不一样,因为javascript实在太......那个了。但Dart始终还是主营前端吧。这俩基本就没法比较。

我用Go并不是因为Ken Thompson、Rob Pike这帮人,我觉得C++ sucks也不是因为Linus。那就是我用过之后喜欢还是不喜欢而已。
不要迷信权威。说服别人用Go最好的办法不是拉出一帮名人说观点,而是做一个牛逼的项目和库出来,让别人主动想用
----------------------------------------------------------------------

这个,GUI库明显不在Go Team的开发日程之内。我觉得用swig做一个其它GUI库(比如Qt)的绑定,像pyQt那样才是比较好的模式
----------------------------------------------------------------------

现在对 GO 语言,我关注挺长时间,感觉作者们控制的很严格,很多很好的建议都被拒绝了,参见 golang-nuts 邮件组。有些建议,他们只需要做很少的工作,就能有很好的效果,他们就是拒绝改进。
----------------------------------------------------------------------
比如什么?我猜想你是说'#!'么?
我觉得控制得严格些有好处。因为加入一个特性简单,但是你要想从语言中去掉一个已有的特性就难了。

如果一个特性可以被外部有效地实现(比如用gorun实现#!),那么就没有必要增加语言本身的复杂性。
所以不是Go team懒惰,连一些很简单实现的建议都不采纳(#!)或者说拒绝改进。

我认为Go还是要简单、一致(正交性)上取胜的。这符合Unix界软件的一贯风格,换句话说就是KISS原则。

----------------------------------------------------------------------
参考:https://groups.google.com/forum/#!topic/golang-china/aX61jyZXBws%5B1-25-false%5D

Go推出的主要目的之一就是G内部大东西太多了,系统级开发巨型项目非常痛苦,Go定位取代C++,Go以简单取胜(KISS)的更多相关文章

  1. 一个电商项目的Web服务化改造7:Dubbo服务的调用,4个项目

    使用dubbo服务的过程,很简单,和之前学习的WebService完全一样,和本地接口调用也基本一致. dubbo和WebService的区别:我认为dubbo就是封装了WebService,然后提供 ...

  2. 用软碟通UltraISO刻录Win 10 1909 到U盘,只有1个G左右,安装不了系统

    之前一直用软碟通刻录WIN10的ISO镜像到U盘.最近想到用最新版的WIN10 1909 来做一个U盘系统,刻录也成功了.就是安装系统的时候总报错,找了很久原因,终于发现刻录后占用U盘的空间只有1G左 ...

  3. DarkMode(1):产品应用深色模式分析

    为什么Dark Mode变得越来越流行 2018 年的 macOS Mojave 率先支持了深色外观,紧接着 Windows 10 在 2018 年的 10 月份大版本更新中,也引入了 Dark Mo ...

  4. linux内核空间与用户空间信息交互方法

    linux内核空间与用户空间信息交互方法     本文作者: 康华:计算机硕士,主要从事Linux操作系统内核.Linux技术标准.计算机安全.软件测试等领域的研究与开发工作,现就职于信息产业部软件与 ...

  5. .NET的Actor模型:Orleans

    Orleans是微软推出的类似Scala Akka的Actor模型,Orleans是一个建立在.NET之上的,设计的目标是为了方便程序员开发需要大规模扩展的云服务, 可用于实现DDD+EventSou ...

  6. 使用vbs脚本进行批量编码转换

    使用vbs脚本进行批量编码转换 最近需要使用SourceInsight查看分析在Linux系统下开发的项目代码,我们知道Linux系统中文本文件默认编码格式是UTF-8,而Windows中文系统中的默 ...

  7. (六) 一起学 Unix 环境高级编程 (APUE) 之 进程控制

    . . . . . 目录 (一) 一起学 Unix 环境高级编程 (APUE) 之 标准IO (二) 一起学 Unix 环境高级编程 (APUE) 之 文件 IO (三) 一起学 Unix 环境高级编 ...

  8. 微软停服 XP系统到底伤害了谁?

    http://majihua.baijia.baidu.com/article/10386 微软现在成了招人恨的角色,因为其史上最成功的操作系统WINDOWS XP在4月8日就将停止服务,而社会上对X ...

  9. ASP.NET Core Web开发学习笔记-1介绍篇

    ASP.NET Core Web开发学习笔记-1介绍篇 给大家说声报歉,从2012年个人情感破裂的那一天,本人的51CTO,CnBlogs,Csdn,QQ,Weboo就再也没有更新过.踏实的生活(曾辞 ...

随机推荐

  1. mysql手工注入

    以下是mynona本人原创的,奉献给大家,不要小看数据库注入 参考: http://www.daydaydata.com/help/sql/advance/limit.html http://www. ...

  2. C# 链接Sql和Access数据库语句

    1.sql数据库: 1.1.链接数据语句:server=localhost;database=Data; uid=sa;pwd=123; 或 Data Source=localhost;DataBas ...

  3. c++异常详解

    一.什么是异常处理 一句话:异常处理就是处理程序中的错误. 二.为什么需要异常处理,以及异常处理的基本思想 C++之父Bjarne Stroustrup在<The C++ Programming ...

  4. .NET基础:C#静态构造函数、静态方法、静态属性

    用一个题目带大家走进静态函数,先看题目 class Program    {        public static int Count = 0;        static Program()   ...

  5. ASP.NET MVC 学习第二天

    今天使用mvc完成简单的增删改,内容比较简单,来熟悉一下mvc,数据库操作是用前面的ef,也算是温习一下ef吧. 新建mvc项目,在项目中的Models内添加ef,我这里只操作一下简单的user表.里 ...

  6. Linux内核分析作业二—操作系统是如何工作的

    一.实验:简单的时间片轮转多道程序内核代码运行与分析 my_start_kernel之前都是硬件初始化,它是操作系统的执行入口,每循环100000次就进行一次打印. 执行更加简单,每次时钟中断时都会调 ...

  7. Learn know more about big data

    As we all know,we are in a big data age now."Every sword has two slides",as a ITer,we shou ...

  8. firefox常用扩展、脚本

    1.AutoPopup.uc.js:鼠标移到菜单和下拉箭头上自动弹出下拉菜单 2.moveButton.uc.js:移动或克隆按钮或菜单到火狐浏览器的任意位置 moveButton.uc.js使用说明 ...

  9. angular入门系列教程2

    主题: 本篇主要介绍下angular里的一些概念,并且在咱们的小应用上加上点料.. 概念(大概了解即可,代码中遇到的会有详细注释): 模板:动态模板,是动态的,直接去处理DOM的,而不是通过处理字符串 ...

  10. XCode签名证书死活不能选

    Editors>Show Values on Xcode , then you can select the code sign instead of typing