热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

九款编程语言以及缔造它们的伟大女性

从大型机步入主流市场至今,女性这半边天已经为我们设计并开发出了大量出色、而且目前仍给软件开发领域带来深远影响的编程语言。

从大型机步入主流市场至今,女性这半边天已经为我们设计并开发出了大量出色、而且目前仍给软件开发领域带来深远影响的编程语言。

编程语言 女程序员 汇编语言

九款编程语言以及缔造它们的伟大女性

从第一印象来讲,软件开发工作似乎一直是个男性主导下的世界。但尽管如此,女性在过去几十年中,同样给编程技术带来重要且至今仍具有关键意义的贡献成果。作为其中的一大核心区划,编程语言的开发工作中亦不乏女性从业者们的身影。无数女性技术先驱者们早在大型机与机器码称雄的时代就开始设计并开发用于向计算机设备下达指令的语言,并在随后的汇编以及更高级别的现代语言时代下继续作出诸多贡献。在今天的文章中,我们将一同了解九款出于女性技术人员之手的编程语言、它们多年来所产生的重大影响以及其背后缔造者们的故事。

ARC汇编语言

编程语言 女程序员 汇编语言

缔造者: Kathleen Booth

年份: 1950年

背景故事:在早期计算机编程流程当中,我们必须以机器码方式直接编写程序,也就是说必须编写计算机能够解读并据此采取行动的一系列1与0组合。汇编语言的出现让程序员们得以通过助记符的形式来编写机器指令,而且由机器码向汇编码转化的趋势也让计算机编程变得更容易也更可靠。出现时间最早的汇编语言之一出自Kathleen Botth之手,她当时在英国的伯克贝克学院任教。该语言专门针对ARC(即自动继电器计算机)所开发,而后者的设计与构建工作同样有Booth的参与。

Address

编程语言 女程序员 汇编语言

缔造者: Kateryna Yushchenko

年份: 1955年

背景故事:欧洲地区诞生的第一款可编程计算机名为MESM,其由苏联于1950年所打造。负责其运作管理工作的科学家之一正是位于基辅的乌克兰科学院尤先科SSR数学研究所的Kateryna Yushchenko,她同时也是第一位被苏联授予物理与数学科学规划博士头衔的女性。由于在MESM上使用机器码进行编程的难度很高,因此Yushcenko和她的同事们认为有必要打造一套更为高级的编程语言来简化这方面的工作。1955年,Yushchenko创造出了Address编程语言,这是第一种支持间接寻址机制的语言、而且出现时间早于西方发达国家的诸多知名高级语言——例如COBOL。Address在随后的二十多年中一直被苏联所广泛使用。

COBOL

编程语言 女程序员 汇编语言

缔造者: Grace Hopper及其他来自数据系统语言记录会议的成员

年份: 1959年

背景故事:COBOL,全称为面向商业的通用语言,最初的诞生契机源自美国政府以及各大企业对于能够埃不同计算机设备之上、能够为非技术人员使用的数据处理编程语言的需求。该委员会负责着这一新型编程语言的开发,而Grace Hopper正是美国海军方面的关键性技术顾问之一。早在迈入这一行业头一个十年,Hopper就曾经在面对UNIVAC系统时创建出了第一款编译器——也就是A-O——以及一系列其它早期高级编程语言,例如ARITH-MATIC以及B-0、或者叫作FLOW-MATIC。诞生于1955年的FLOW-MATIC是一款采用英文关键词的商务应用程序开发语言。随后于1959年出现的COBOL最终继承了FLOW-MATIC中的大部分设计思路,并于次年推出了第一套正式版本——正是因为这一点,Hopper被业界尊为COBOL之母。

FORMAC

编程语言 女程序员 汇编语言

缔造者: Jean Sammet

年份: 1962年

背景故事: FORTRAN语言于上世纪五十年代由IBM公司开发而成,其主要面向数学计算以及科学计算任务。而在1961年,IBM公司雇用了数学家Jean Sammet。她此前曾经在在Sperry Gyroscope以及Sylvania负责科学编程类工作,并与Grace Hopper一同参与了COBOL语言的开发。1962年,Sammet在IBM公司开发出了编程语言FORMAC(即FORmula MAnipulation Compiler,公式操作编译器)。而作为其扩展成果之一,FORTRAN能够执行各类代数运算。FORMAC而后成为第一款被广泛用于进行符号型数学计算的编程语言。

Logo

编程语言 女程序员 汇编语言

缔造者: Cynthia Solomon协同Daniel G. Bobrow、Wally Feurzeig以及Seymour Papert

年份: 1967年

背景故事: 在上世纪六十年代末期,来自马萨诸塞州坎布里奇Bolt、Beranek以及Newman的研究小组成员们意识到有必要开发一套专门面向儿童的、大量采用单词与语句而非数字及符号的编程语言——这一设计思路与当时的各类主流编程语言有着明显的区别。其中一位研究人员正是Cynthia Solomon,她的计算机科学之旅始于在人工智能先驱机构麻省理工学院Marvin Minsky自学Lisp语言的经历。Solomon参与了这款名为Logo的全新语言的开发工作,并于上世纪六十年代末制定了向七年级学生教授其使用方法的指导细则。Logo语言最知名的象征性应用就是我们耳熟能详的小海龟机器人,用户可以对其发出指令以绘制各类几何图形。Solomon最终加入到麻省理工学院的人工智能实验室,随后还负责了苹果商标的创造工作。Logo影响了此后出现的多种教育性编程语言,例如SmallTalk以及Scratch。

CLU

编程语言 女程序员 汇编语言

缔造者: Barbara Liskov

年份: 1974年

背景故事: 面向对象型编程语言的一大革命性发展标志正是上世纪七十年代中期CLU语言的诞生。CLU的设计与开发由麻省理工学院的Barbara Liskov负责领导,而她也是美国历史上第一位获得计算机科学博士学位的女性。通过CLU语言,Liskov提出了诸多概念(或者说将其引入流行),其中包括抽象数据类型、迭代器以及并行作业等等。CLU本身并不属于面向对象语言,因为它某些关键性的面向对象特性,例如继承。CLU虽然从来没能得到广泛应用,但它却给其后的众多著名语言带来了巨大的影响,例如Java、Python以及C++,它们都或多或少地采纳了来自CLU的先驱性概念。

Smalltalk

编程语言 女程序员 汇编语言

缔造者: Adele Goldberg协同Alan Kay、Dan Ingalls、Ted Kaehler、Diana Merry、Scott Wallace、Peter Deutsch以及其他Xerox PARC成员

年份: 1980年

背景故事: 正如二十年前COBOL的诞生让编程真正走入寻常百姓家,SmallTalk的一大设计目标正是构建一种适用于任何一位用户——而不仅仅是计算机科学家——并允许他们借此开发应用程序的语言。SmallTalk由Xerox公司的帕洛阿尔托研究中心(简称PARC)在Alan Kay的指导下创建而成,她的设计灵感则来源于Simula、世界上第一款面向对象程序。1973年,Adele Goldberg加入到Kay在PARC的开发团队,并在SmallTalk及其各类先驱性概念——例如模式-视图-控制器(图形化用户界面背后的关键性概念)、所见即所得编辑器以及集成化开发环境——的构建过程中扮演着重要角色。1979年,Goldberg在一台PARC Alto计算机上向Steve Jobs及其手下程序员展示了SmallTalk演示素材及其GUI设计,而这直接启发了苹果旗下Macintosh桌面系统的诞生。SmallTalk最初于1980年首次以SmallTalk-80的名头公开亮相,并对随后出现的多种知名编程语言产生了深远影响,包括Java、Objective-C以及Python。

BBC BASIC


缔造者: Sophie Wilson

年份: 1981年

背景故事: BBC BASIC也许是在史以来惟一一种专门为电视节目所开发出的编程语言。1981年,BBC公司希望推动一套名为“计算机素养项目”的电视节目,用于指导普通百姓学会编程。不过BBC公司的技术顾问们认为现有的BASIC版本还不足以完成这一目标。为了解决这个问题,BBC方面专而向Acorn Computers公司寻求帮助,希望由后者打造一款名为BBC Micro的新型计算机,外加一款专门面向电视节目的新型BASIC版本。Sophie Wilson是一位计算机科学家,而且在大学阶段就曾经开发出了Acorn的第一款计算机,即8位Acorn Microcomputer。Wilson以不足16KB的小巧体积为BBC编写出了BASIC的新版本,其中包含有命名规程、函数以及IF-THEN-ELSE结构等功能特性。计算机素养项目与BBC Micro以及Wilson的BBC BASIC给观众带来了巨大的冲击,正是这些让英国的观众们第一次接触到计算机以及编程的广阔世界。而且这些成果随后还被移植到多种其它平台之上。

Coq

编程语言 女程序员 汇编语言

缔造者: Christine Paulin-Mohring协同Thierry Coquand、Gérard Huet、Bruno Barras、Jean-Christophe Filliâtre、Hugo Herbelin、Chet Murthy、Yves Bertot以及Pierre Castéran

年份: 1991年

背景故事: 1984年,法国计算机科学家Gérard Huet以及Thierry Coquand开始着手开发一套交互型系统,专门针对数学定理进行相关证明过程。其初始版本为Coquand打造的Calculus of Constructions(即构造演算),简称为CoC。1991年,Christine Paulin-Mohrin以Calculus of Inductive Constructions为基础创建出了一套新的实现方案,并将该语言重新命名为Coq——这正是为了向Coquand致敬。除了数学定理之外,颇具知名度的Coq Proof Assistant System(即Coq证明辅助系统)也被用于进行软件验证。Paulin-Mohring已经被编程业界广泛视为这款重要语言及工具的主要开发者之一。


推荐阅读
  • 2018年人工智能大数据的爆发,学Java还是Python?
    本文介绍了2018年人工智能大数据的爆发以及学习Java和Python的相关知识。在人工智能和大数据时代,Java和Python这两门编程语言都很优秀且火爆。选择学习哪门语言要根据个人兴趣爱好来决定。Python是一门拥有简洁语法的高级编程语言,容易上手。其特色之一是强制使用空白符作为语句缩进,使得新手可以快速上手。目前,Python在人工智能领域有着广泛的应用。如果对Java、Python或大数据感兴趣,欢迎加入qq群458345782。 ... [详细]
  • 提升Python编程效率的十点建议
    本文介绍了提升Python编程效率的十点建议,包括不使用分号、选择合适的代码编辑器、遵循Python代码规范等。这些建议可以帮助开发者节省时间,提高编程效率。同时,还提供了相关参考链接供读者深入学习。 ... [详细]
  • 学习SLAM的女生,很酷
    本文介绍了学习SLAM的女生的故事,她们选择SLAM作为研究方向,面临各种学习挑战,但坚持不懈,最终获得成功。文章鼓励未来想走科研道路的女生勇敢追求自己的梦想,同时提到了一位正在英国攻读硕士学位的女生与SLAM结缘的经历。 ... [详细]
  • Python字典推导式及循环列表生成字典方法
    本文介绍了Python中使用字典推导式和循环列表生成字典的方法,包括通过循环列表生成相应的字典,并给出了执行结果。详细讲解了代码实现过程。 ... [详细]
  • 本文介绍了Python版Protobuf的安装和使用方法,包括版本选择、编译配置、示例代码等内容。通过学习本教程,您将了解如何在Python中使用Protobuf进行数据序列化和反序列化操作,以及相关的注意事项和技巧。 ... [详细]
  • 2022年的风口:你看不起的行业,真的很挣钱!
    本文介绍了2022年的风口,探讨了一份稳定的副业收入对于普通人增加收入的重要性,以及如何抓住风口来实现赚钱的目标。文章指出,拼命工作并不一定能让人有钱,而是需要顺应时代的方向。 ... [详细]
  • wpf+mvvm代码组织结构及实现方式
    本文介绍了wpf+mvvm代码组织结构的由来和实现方式。作者回顾了自己大学时期接触wpf开发和mvvm模式的经历,认为mvvm模式使得开发更加专注于业务且高效。与此同时,作者指出mvvm模式相较于mvc模式的优势。文章还提到了当没有mvvm时处理数据和UI交互的例子,以及前后端分离和组件化的概念。作者希望能够只关注原始数据结构,将数据交给UI自行改变,从而解放劳动力,避免加班。 ... [详细]
  • Python15行代码实现免费发送手机短信,推送消息「建议收藏」
    Python15行代码实现免费发 ... [详细]
  • Python语法上的区别及注意事项
    本文介绍了Python2x和Python3x在语法上的区别,包括print语句的变化、除法运算结果的不同、raw_input函数的替代、class写法的变化等。同时还介绍了Python脚本的解释程序的指定方法,以及在不同版本的Python中如何执行脚本。对于想要学习Python的人来说,本文提供了一些注意事项和技巧。 ... [详细]
  • 如何使用计算机控制遥控车的步骤和电路制作方法
    本文介绍了使用计算机控制遥控车的步骤和电路制作方法。首先,需要检查发送器的连接器和跳线,以确定命令的传递方式。然后,通过连接跳线和地面,将发送器与电池的负极连接,以实现遥控车的前进。接下来,制作一个简单的电路,使用Arduino命令将连接到跳线的电线接地,从而实现将Arduino命令转化为发送器命令。最后,通过焊接晶体管和电阻,完成电路制作。详细的步骤和材料使用方法将在正文中介绍。 ... [详细]
  • 硬科技投资时代,投资者们该如何抉择?
    随着越来越多符合国家战略、市场认可度高、突破关键核心技术的科技创新型企业挂牌上市,硬科技投资越来越热。华夏中证科创创业50ETF联接基金的开售为投资者提供了新的选择。硬科技的发展有助于突破“卡脖子”技术、实现进口替代,以及推动产业升级。在硬科技投资时代,投资者们应该如何抉择? ... [详细]
  • 本文讨论了小学编程普及的必要性,以及学生在学习编程过程中所需具备的数学能力和综合能力。通过采访获奖的牛娃发现,学习编程需要耐得住寂寞,并且需要花费大量的时间和精力。 ... [详细]
  • 在工作了一年多后,我对现在的工作感到厌倦,没有激情,于是决定转行做程序猿。我在学校开了一个某宝店,通过自己摸索和努力,每个月挣够了零花钱和伙食费。我决定往互联网方向靠,不喜欢面对面和人沟通,而虚拟世界中的开发工作让我感到兴奋。我开始学习Java,感到困惑和怀疑自己的智商,但一篇鸡汤文激发了我学习Python的兴趣,我感到智商找回来了。我相信没有梦想的人和咸鱼没有什么区别。 ... [详细]
  • 本文介绍了iOS开发中检测和解决内存泄漏的方法,包括静态分析、使用instruments检查内存泄漏以及代码测试等。同时还介绍了最能挣钱的行业,包括互联网行业、娱乐行业、教育行业、智能行业和老年服务行业,并提供了选行业的技巧。 ... [详细]
  • 建站ABC智能电销机器人的功能特点及应用优势
    近年来,人工智能化运用越来越普及,各大科技公司为了能够引领市场抢占商机,开发出了多款产品,像建站ABC的电话机器人就是其中之一。电话机器人又名智能电销机器人,是当下各大企业常用的一种工具软件,他能高效率工作、低成本管理,是企业的AI智能外呼助手,功能强大且使用率高。建站ABC智能电销机器人拥有降低人工成本、提高工作效率、提升销售业绩等特点,无论大小型企业均可使用,并可以定制化服务,保障不同企业的不同需求。 ... [详细]
author-avatar
seazz2001
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有