Go前身是什么

本篇内容介绍了“Go前身是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

Go 的前身来自于 Inferno[2] (基于 Plan 9[3] 的改造)。 Inferno 包含了一个叫

做 Limbo[4] 的语言。

n 这里引用了一段来自于 Limbo 论文的描述:

Limbo 是用于开发运行在小型计算机上的分布式应用的编程语言。

它支持模块化编程,编译期和运行时的强类型检查, 进程内基于

具有类型的 channel 通讯 ,原子性 垃圾收集 ,和简单的抽象数据类

型。它被设计用于即便是没有硬件内存保护的小型设备上,也能安

全的运行。

n Go 从 Limbo 继承的另一个特性是 channel ,从 Limbo 文档来的另一段描述:

[channel] 是用于向系统中其他代理发送和接收特定类型对象的通讯机制。 channel 可以用于本地进程间通讯;用于连接到命名的目的地的库方法。两种情况都是直接发送和接收操作的。channel 在 Go 中比在 Limbo 中更加好用。如果我们对 Go 的历史深入探索,会发

现一个指向 “Newsqueak[25]” 的线索,这是在类 C 语言中使用 channel 进行通讯的先驱。 channel 并不是这些语言独有的,另一个非类 C 语言: Erlang[7] ,也在使用它。

n Go 让函数很容易成为非常轻量的线程。这些线程在Go中被叫做goroutines

“Go前身是什么”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注蜗牛博客网站,小编将为大家输出更多高质量的实用文章!

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:niceseo99@gmail.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

评论

有免费节点资源,我们会通知你!加入纸飞机订阅群

×
天气预报查看日历分享网页手机扫码留言评论Telegram