python名字起源_观点|13 种编程语言名称的来历

2023-11-23 11:59

本文主要是介绍python名字起源_观点|13 种编程语言名称的来历,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

可能程序员们都认为编写代码时给变量取名是件烦人的事,不过他们还需要给另外一个东西取名, 那就是新的编程语言。编程语言命名通常有几个规律,如根据特性取缩写(如BASIC,COBOL,TCL和LISP),以已有的语言为基础(如 C++,C#和CoffeeScript),或直接是数学和计算机领域杰出人物的名字(如Ada,Pascal和Turing)。有时,设计者取名时更充 满想象力。

下面是13个意味深长的名字,以及它们背后的故事。

102038bu2e7jlm53lq5j53.jpg

Python

于 20世纪80年代末,由Guido van Rossum发明,初衷据说是为了打发圣诞节的无趣,1991年首次发布,是ABC语言的继承,同时也是一种脚本语言,目前已经很流行。取名 时,Guido van Rossum认为它应该“短小,独特,还有一点神秘感”,他是英国著名剧团Monty Python的忠实粉丝,所以就是Python了。

Java

于20世纪90年代初期诞生,源自Sun公司的智能家电程序开 发,如互动电视。最初名为Oak,不过Sun公司的律师发现这个名字已经被注册。通过一系列的会议,公司从一个包含有Silk,DNA和Java的名单中 选择了它。是谁第一个建议使用Java这个名字的不得而知,不过普遍猜测是灵感来自Peet咖啡店,因为Sun公司的工程师们很喜欢到这里喝咖啡。

Forth

102039s2xaaqqoo78ia8q8.jpg

于20世纪60年代,由Charles Moore创造。1968年Charles Moore在一家名为Mohasco的家装公司工作,只有一台最多2250图形显示点数的IBM1130微型计算机,不过却要用它来设计地毯,而FORTRAN却不能满足要求,所以他发明了Forth。最初其名为Fourth,不巧,IBM1130最多支持5个字符的文件名,“u”去而“Forth”生。

Perl

被 誉为“瑞士军刀”,以灵活性和高效性著称,于20世界80年代由Larry Wall发明。Larry Wall的构思是这个名字应该短,并充满正面意味。想到pearl前,他还考虑过他妻子的名字Gloria。不过已经有一种语言叫PEARL,所以去掉了 pearl中的"a"。值得一提的是,这个名字一直都是小写,受Unix文件系统都是区分大小写的影响,1991年Perl 4发布时,Larry Wall将首字母改为大写。

Lua

于1993年,由TeCGraf开发完成,是一种脚本语言。该语言由DEL和SOL开发而来,结合了两者的优点,并增加了了流控制等函数特性,可谓是它们的孩子。葡萄牙语中,sol意为”太阳”,而lua意为“月亮”。

Smalltalk

于 20世纪70年代早期,首次由Xerox PARC开发,是是面向对象类型语言的一员,后来的Java, Python和Ruby中都能见到其影子。优化后,参与开发者Alan Kay对其命名时表示应该遵从名字看起来好看的语言,如“Zus”和“Thor”都不长命,这种规律。所以,就取了“Smalltalk”这个平平的名 字。

Logo

于20世纪60年代,是由Daniel G. Bobrow, Wally Feurzeig, Seymour Papert 和Cynthia Solomon设计的一种教学式语言,也是一种Lisp方言,为教学过程中介绍大量程序设计概念提供了便利,对后来的教学式编程语具有深厚的影响,如 Scratch。这种语言的一个重要特征就是 “海龟绘图”系统。其名源自“logos”,希腊语中意为“单词”或“思想”,以区别于传统的编程语言。

Ruby

于1993年,由Yukihiro MatsuMOTO(“Matz”) 开发完成,是名副其实的面向对象的脚本语言,与Perl和Python比肩。Matz希望同Perl一样,为它取一个宝石的名字。与同事Keiju Iahitsuka在许多名字中筛选后,剩下Coral和Ruby。最终选择Ruby是因为,Perl的发音与6月的诞生石pearl(珍珠)相 同,Ruby选择以7月的诞生石ruby(红宝石)命名,Matz认为Ruby不只甘做Perl(Matz认为其是“玩具语言”)的后继者,而是要替代它。

Scheme

20 世纪50年代末,John McCarthy在MIT开发了最早的高级编程语言,Lisp。它迅速成为了人工智能研究领域的首选。随后,许多Lisp方言相继诞生,如Planner 和Conniver。1975年,Gerald Jay Sussman同MIT的Guy Steele联合开发完成了另外一种Lisp方言,并根据Planner和Conniver的取名方式,命名为Schemer。同是不巧,当在MIT开发 的ITS操作系统上运行时,这种系统最多支持六个字符的文件名,所就改为了Scheme。

Scala

于2001年,由 Martin Odersky开发完成,既是一种函数式编程语言,也具有面向对象的特性,运行于Java平台(早期有.NET平台的实现)。其名Scala的得来有两个 原因:SCAlable LAN两个单词相结合;意大利语中 scala意为“梯子”或“楼梯”,蕴含“更佳的编程语言”。

Scratch

第一版 Scratch 由麻省理工学院媒体实验室终身幼稚园组在2006年研发出来,是一种教学式语言。儿童可以通过拖拽电脑屏幕上的程序模块完成程序设计序。它可以用以创作小说,电影,游戏,音乐等等,几乎你能想到的它都能办到。其名源自打碟的声音。

AWK

102039rnkkin9r4hllzhnx.jpg

如果使用过Unix系统,AWK对你来说可能再熟悉不过了。它于1997年开发完成,是用以处理文本文件的解释性语言,同时也是Linux及Unix环境中 现有的功能最强大的数据处理引擎之一。Larry Wall开发Perl时深受其影响。AWK这个名字同许多语言名字一样,也是缩写,不同的是,这三个字母是其发明这的名字首字母,贝尔实验室的 Alfred Aho,Peter Weinberger和 Brian Kernighan(上图)。

Groovy

2003 年,Java程序员James Strachan需要这样一种脚本语言:同Python和Ruby相似,但又却能在Java平台上运行。于是发明了Groovy。它能动态编译为Java 字节码。正如James Strachen 所说的那样,“在绝妙的(groovy)Java代码基础上编程”,这个名字就不言而喻了。

linisi.svg

这篇关于python名字起源_观点|13 种编程语言名称的来历的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/417800

相关文章

Python+FFmpeg实现视频自动化处理的完整指南

《Python+FFmpeg实现视频自动化处理的完整指南》本文总结了一套在Python中使用subprocess.run调用FFmpeg进行视频自动化处理的解决方案,涵盖了跨平台硬件加速、中间素材处理... 目录一、 跨平台硬件加速:统一接口设计1. 核心映射逻辑2. python 实现代码二、 中间素材处

python中的flask_sqlalchemy的使用及示例详解

《python中的flask_sqlalchemy的使用及示例详解》文章主要介绍了在使用SQLAlchemy创建模型实例时,通过元类动态创建实例的方式,并说明了如何在实例化时执行__init__方法,... 目录@orm.reconstructorSQLAlchemy的回滚关联其他模型数据库基本操作将数据添

Python实现快速扫描目标主机的开放端口和服务

《Python实现快速扫描目标主机的开放端口和服务》这篇文章主要为大家详细介绍了如何使用Python编写一个功能强大的端口扫描器脚本,实现快速扫描目标主机的开放端口和服务,感兴趣的小伙伴可以了解下... 目录功能介绍场景应用1. 网络安全审计2. 系统管理维护3. 网络故障排查4. 合规性检查报错处理1.

Python轻松实现Word到Markdown的转换

《Python轻松实现Word到Markdown的转换》在文档管理、内容发布等场景中,将Word转换为Markdown格式是常见需求,本文将介绍如何使用FreeSpire.DocforPython实现... 目录一、工具简介二、核心转换实现1. 基础单文件转换2. 批量转换Word文件三、工具特性分析优点局

Python中4大日志记录库比较的终极PK

《Python中4大日志记录库比较的终极PK》日志记录框架是一种工具,可帮助您标准化应用程序中的日志记录过程,:本文主要介绍Python中4大日志记录库比较的相关资料,文中通过代码介绍的非常详细,... 目录一、logging库1、优点2、缺点二、LogAid库三、Loguru库四、Structlogphp

C++,C#,Rust,Go,Java,Python,JavaScript的性能对比全面讲解

《C++,C#,Rust,Go,Java,Python,JavaScript的性能对比全面讲解》:本文主要介绍C++,C#,Rust,Go,Java,Python,JavaScript性能对比全面... 目录编程语言性能对比、核心优势与最佳使用场景性能对比表格C++C#RustGoJavapythonjav

Python海象运算符:=的具体实现

《Python海象运算符:=的具体实现》海象运算符又称​​赋值表达式,Python3.8后可用,其核心设计是在表达式内部完成变量赋值并返回该值,从而简化代码逻辑,下面就来详细的介绍一下如何使用,感兴趣... 目录简介​​条件判断优化循环控制简化​推导式高效计算​正则匹配与数据提取​性能对比简介海象运算符

python项目环境切换的几种实现方式

《python项目环境切换的几种实现方式》本文主要介绍了python项目环境切换的几种实现方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录1. 如何在不同python项目中,安装不同的依赖2. 如何切换到不同项目的工作空间3.创建项目

python项目打包成docker容器镜像的两种方法实现

《python项目打包成docker容器镜像的两种方法实现》本文介绍两种将Python项目打包为Docker镜像的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 目录简单版:(一次成功,后续下载对应的软件依赖)第一步:肯定是构建dockerfile,如下:第二步

Python + Streamlit项目部署方案超详细教程(非Docker版)

《Python+Streamlit项目部署方案超详细教程(非Docker版)》Streamlit是一款强大的Python框架,专为机器学习及数据可视化打造,:本文主要介绍Python+St... 目录一、针对 Alibaba Cloud linux/Centos 系统的完整部署方案1. 服务器基础配置(阿里