关于历史:世界上第一种计算机编程语言?

关于历史:世界上第一种计算机编程语言?

World's First Computer Programming _Language_?

好-有点不确定的问题(Eniac插件板上的插头模式是否为语言??),但竞争者包括:

  • 康拉德·祖斯(Konrad Zuse)的PlanKalkül(1940年代)-
    从未实施(通常
    被接受为第一个)。
  • 无论采用何种方式编程的Ada Lovelace(1840年代)
    艾达(Ada)-如果她是第一个
    程序员,正如大家所说,她
    必须使用了第一个编程
    语言,不是吗?再一次可能永远不会
    实施-但巴贝奇有
    任何可以被称为
    语言?
  • 图灵的描述
    他的图灵机(1936年论文)。在
    他实际上写的论文
    编程并模拟他们
    数学执行-那
    使它与(以及更早
    比)PlanKalkül在我的书中。
  • Machester Mark 1计算机(1952年)的自动编码-高水平编译,击败了Fortan(?)。图灵先生再次(!)。

  • Fortran(1950年代早期)-比Lisp领先了两年,并且无疑通过了嗅觉测试。但是它早于Mark 1自动编码吗?


PBS系列Connections提出了一个论点,即在瓷砖上打孔以控制在织机(大约1700s ??)上形成的图案是第一个编程"语言"。

接下来是演奏者的钢琴卷轴:纸上的代码,可读取并控制机器的操作。那是一种编程语言,不是吗?


DNA-还是必须涉及硅计算机? ;-)


由于Ada Lovelace被广泛认为是第一位程序员,因此我将调查她所使用的符号集。

更新:您可以阅读Lovelace在她的《关于查尔斯·巴贝奇(Charles Babbage)发明的分析引擎的草图》中的注释中所使用的注释。 Lovelace是翻译者,但是她对分析引擎编程的注释最终比原始出版物长了大约四倍。


DNA -- or does it have to involve silicon computers? ;-)

好吧,如果您走这条路,那么正确的答案必须是存在于DNA之前的RNA。但是,那么,我们有一个盲人程序员吗? ;-)


Konrad Zuse's PlanKalkül (1940s) - never implemented

Rojas等人实际上发布了该语言的一种实现。大约在2000年左右。


我认为我们需要就"编程语言"的定义达成共识,以任何有用的方式回答这个问题。直接操纵机器代码是编程语言吗?


一开始有Ada Lovelace,然后Bill说"让C#来了",那里是光!


假设将"编程语言"的定义定义为"用于描述/控制数字计算机的预期行为的文本符号",我认为只有一个可能的答案:原始(数字)机器代码。

许多其他答案(例如烹饪食谱)很聪明,但与编程本身无关,而是与不同上下文或更一般意义上的描述/控制有关。


至少在声明性意义上,编程可以归结为顺序,交替和重复的组合。人们可能会认为食谱作者是程序员,因此很早就开始考虑。考虑一个食谱:它包含顺序(切片,然后剁碎,然后加热等等),交替(如果您想使其湿润,则烘烤40分钟,否则,请使其"呈蛋糕状"烘烤55分钟)分钟并重复(当面团不僵硬时,重复搅拌直到面糊光滑)。食谱可以追溯到数千年前。


分析引擎将使用的语言是它自己的机器代码,通过打孔卡输入以指示要执行的操作以及要执行的操作的列(有效寄存器)。有关更多详细信息,请参见这些注释。


我想说的是,实际使用的第一种编程语言是第一台存储程序计算机的机器语言,我相信是Baby:http://www.computer50.org/


推荐阅读