mirror of
https://github.com/gopl-zh/gopl-zh.github.com.git
synced 2024-11-24 15:18:57 +00:00
d54b4d781b
diff --git a/ch0/ch0-01.md b/ch0/ch0-01.md index ecb1c9a..ac8116f 100644 --- a/ch0/ch0-01.md +++ b/ch0/ch0-01.md @@ -14,7 +14,7 @@ Go语言的另一支祖先,带来了Go语言区别其他语言的重要特性 接下来,Rob Pike和其他人开始不断尝试将[CSP](https://en.wikipedia.org/wiki/Communicating_sequential_processes)引入实际的编程语言中。他们第一次尝试引入[CSP](https://en.wikipedia.org/wiki/Communicating_sequential_processes)特性的编程语言叫[Squeak](http://doc.cat-v.org/bell_labs/squeak/)(老鼠间交流的语言),是一个提供鼠标和键盘事件处理的编程语言,它的管道是静态创建的。然后是改进版的[Newsqueak](http://doc.cat-v.org/bell_labs/squeak/)语言,提供了类似C语言语句和表达式的语法和类似[Pascal][Pascal]语言的推导语法。Newsqueak是一个带垃圾回收的纯函数式语言,它再次针对键盘、鼠标和窗口事件管理。但是在Newsqueak语言中管道是动态创建的,属于第一类值, 可以保存到变量中。 -在Plan9操作系统中,这些优秀的想法被吸收到了一个叫[Alef][Alef]的编程语言中。Alef试图将Newsqueak语言改造为系统编程语言,但是因为缺少垃圾回收机制而导致并发编程很痛苦。(译注:在Aelf之后还有一个叫[Limbo][Limbo]的编程语言,Go语言从其中借鉴了很多特性。 具体请参考Pike的讲稿:http://talks.golang.org/2012/concurrency.slide#9 ) +在Plan9操作系统中,这些优秀的想法被吸收到了一个叫[Alef][Alef]的编程语言中。Alef试图将Newsqueak语言改造为系统编程语言,但是因为缺少垃圾回收机制而导致并发编程很痛苦。(译注:在Alef之后还有一个叫[Limbo][Limbo]的编程语言,Go语言从其中借鉴了很多特性。 具体请参考Pike的讲稿:http://talks.golang.org/2012/concurrency.slide#9 ) Go语言的其他的一些特性零散地来自于其他一些编程语言;比如iota语法是从[APL][APL]语言借鉴,词法作用域与嵌套函数来自于[Scheme][Scheme]语言(和其他很多语言)。当然,我们也可以从Go中发现很多创新的设计。比如Go语言的切片为动态数组提供了有效的随机存取的性能,这可能会让人联想到链表的底层的共享机制。还有Go语言新发明的defer语句。 |
||
---|---|---|
appendix | ||
ch0 | ||
ch1 | ||
ch2 | ||
ch3 | ||
ch4 | ||
ch5 | ||
ch6 | ||
ch7 | ||
ch8 | ||
ch9 | ||
ch10 | ||
ch11 | ||
ch12 | ||
ch13 | ||
images | ||
tools | ||
vendor | ||
.gitignore | ||
book.json | ||
builder.go | ||
CONTRIBUTORS.md | ||
cover_bgd.png | ||
cover_middle.jpg | ||
cover_patch.png | ||
cover_small.jpg | ||
cover.jpg | ||
doc.go | ||
fix-data-revision.go | ||
gopl-zh-qrcode.png | ||
LICENSE | ||
links.md | ||
Makefile | ||
preface.md | ||
README.md | ||
SUMMARY.md | ||
update_version.go | ||
zh2tw.go |
Go语言圣经(中文版)
Go语言圣经 《The Go Programming Language》 中文版本,仅供学习交流之用。
- 项目主页:http://github.com/golang-china/gopl-zh
- 项目主页:http://bitbucket.org/golang-china/gopl-zh
- 原版官网:http://gopl.io
在线预览:
- http://gopl-zh.b0.upaiyun.com/
- http://docs.ruanjiadeng.com/gopl-zh/
- http://shifei.me/gopl-zh/
- http://2goo.info/media/html/gopl-zh-gh-pages/
- http://docs.plhwin.com/gopl-zh/
- https://docs.hacknode.org/gopl-zh/
- http://books.studygolang.com/gopl-zh/
注意,在线预览不是最新版,最新以仓库里的内容为准
从源文件构建
先安装NodeJS和GitBook命令行工具(npm install gitbook-cli -g
命令)。
- 运行
go get github.com/golang-china/gopl-zh
,获取 源文件。 - 切换到
gopl-zh
目录,运行gitbook install
,安装GitBook插件。 - 运行
make
,生成_book
目录。 - 打开
_book/index.html
文件。
Go语言圣经DMCA相关
目前Github上的gopl-zh因为DMCA问题暂时无法访问,需要私下交流的请转QQ群(531508541)。
版权声明
Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License。
严禁任何商业行为使用或引用该文档的全部或部分内容!
欢迎大家提供建议!