Go语言起源 【Go语言圣经笔记】

Go语言起源

以下早期语言对Go语言的设计产生了重要影响:

  • C
    Go语言有时候被描述为“C类似语言”,或者是“21世纪的C语言”。Go从C语言继承了相似的表达式语法控制流结构基础数据类型调用参数传值指针等很多思想,还有C语言一直所看中的编译后机器码的运行效率以及和现有操作系统的无缝适配。

  • Pascal

  • Modula-2 包的概念

  • Oberon 摒弃了模块接口文件和 模块实现文件之间的区别 面向对象特性所提供的方法的声明语法

  • Oberon-2 包的导入和声明语法

  • CSP - Tony Haore
    在CSP的概念中,程序是一组中间没有共享状态的平行运行的处理过程,它们之间使用管道进行通信控制同步。不过Tony Hoare的CSP只是一个用于描述并发性基本概念的描述语言,并不是一个可以编写可执行程序的通用编程语言。

    Rob Pike尝试将CSP引入实际的编程语言:

    • Squeak(老鼠间交流的语言)管道静态创建
    • 进版的Newsqueak语言 提供了类似C语言语句和表达式的语法和类似Pascal语言的推导语法 带垃圾回收的纯函数式语言 管道动态创建 属于第一类值 可以保存到变量中
  • Alef -> Limbo
    http://talks.golang.org/2012/concurrency.slide#9

  • APL iota

  • Scheme 词法作用域与嵌套函数

Go中的创新设计:

  • 切片 为动态数组提供了有效的随机存取的性能 链表的底层共享机制
  • defer语句

参考文献

Go语言圣经(简体中文版)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值