谁发明了那些经典的编程语言

谁发明了那些经典的编程语言,第1张

我也抄一下。

奥古斯塔·阿达·金,勒芙蕾丝伯爵夫人(augusta

ada

king,

countess

of

lovelace,1815年12月10日-1852年11月27日),原名奥古斯塔·阿达·拜伦(augusta

ada

byron),通称阿达·洛芙莱斯(ada

lovelace),是著名英国诗人拜伦之女,数学家。计算机程序创始人,建立了循环和子程序概念。

为计算程序拟定“算法”,写作的第一份“程序设计流程图”,被珍视为“第一位给计算机写程序的人”。为了纪念阿达·奥古斯塔对现代电脑与软件工程所产生的重大影响,美国国防部将耗费巨资、历时近20年研制成功的高级程序语言命名为ada语言,它被公认为是第四代计算机语言的主要代表。

在1842年,人称“数字女王”的阿达·洛芙莱斯(ada

lovelace)编写了历史上首款电脑程序。

在1834年,阿达的朋友——英国数学家、发明家兼机械工程师查尔斯·巴贝其(charles

babbage)——发明了一台分析机;阿达则致力于为该分析机编写算法,并于1843

年公布了世界上第一套算法。

巴贝其分析机后来被认为是最早期的计算机雏形,而阿达的算法则被认为是最早的计算机程序和软件。

1852年,阿达为了治疗子宫颈癌,却因此死于失血过多,得年36岁。无独有偶,她与她父亲拜伦死于相同年龄,一样死于治疗中的失血过多。她留下了两个儿子与一位女儿—安妮·布兰特贵女。

依她的遗言,阿达葬于诺丁汉哈克诺的圣

玛丽亚·抹大拉教堂,长眠在父亲的身旁。

在1842年与1843年其间,阿达花了9个月的时间翻译意大利数学家路易吉·米那比亚对巴贝奇最新的计算机设计书(即分析机概论)所留下的备忘录。在这部译文里,她附加许多注记,内容详细说明用计算机进行伯努利数的运算方式,而被认为是世界上第一个电脑程式;因此,阿达也被认为是世界上第一位程式设计师。巴贝奇在他所著的《经过哲学家人生》(passages

from

the

life

of

a

philosopher,

1846)里留有下面的述叙:

伦敦科学馆分析机复制品

“我认为她为米那比亚的备忘录增加许多注记,并加入了一些想法。虽然这些想法是由我们一起讨论出来的,但是最后被写进注记里的想法确确实实是她自己的构想。我将许多代数运算的问题交给她处理,这些工作也与伯努利数的运算相关。在她所送回给我的文件,更修正了我先前在程序里的重大错误。”

阿达的文章创造出许多巴贝奇也未曾提到的新构想,比如阿达曾经预言道:“这个机器未来可以用来排版、编曲或是各种更复杂的用途。”

她死后一百年,于1953年,阿达之前对查尔斯·巴贝奇的《分析机概论》所留下的笔记被重新公布,并被公认对现代计算机与软件工程造成了重大影响。[2]

在1980年12月10日,美国国防部制作了一个新的高级计算机编程语言——ada,以纪念阿达·洛芙莱斯。

在微软的wins产品里也可以找到阿达的全息图标签。

英国计算机公会每年都颁发以阿达命名的软件工程创新大奖。

应该先学习PASCAL基本的语言初步了解程序设计,再学Delphi才会学得顺手

关于pascal:

一、PASCAL语言的来历

Pascal是一种计算机通用的高级程序设计语言。它由瑞士Niklaus Wirth教授于六十年代末设计并创立。Pascal也可以是指人名,它的取名原本就是为了纪念十七世纪法国著名哲学家和数学家Blaise Pascal,而不是编程工具。以法国数学家命名的pascal语言现已成为使用最广泛的基于DOS的语言之一,其主要特点有:严格的结构化形式;丰富完备的数据类型;运行效率高;查错能力强。

Pascal语言还是一种自编译的语言,这就使它的可靠性大大提高了。

Pascal具有简洁的语法,结构化的程序结构。它是结构化编程语言,于70年代在ALGOL基础上研制出来的。它具有丰富的数据类型并提供了数据类型定义设施,其控制结构体现了结构程序设计原则。

它最初是为系统地教授程序设计而设计的,特点是简明化和结构化,适合教学科学计算与系统软件的研制。如今,在许多学校的计算机语言课上,学的都是Pascal语言。

Pascal是最早出现的结构化编程语言,具有丰富的数据类型和简洁灵活的 *** 作语句,适于描述数值和非数值的问题。

正因为上述特点,Pascal语言可以被方便地用于描述各种算法与数据结构。尤其是对于程序设计的初学者,Pascal语言有益于培养良好的程序设计风格和习惯。IOI(国际奥林匹克信息学竞赛)把Pascal语言作为三种程序设计语言之一, NOI(全国奥林匹克信息学竞赛)把Pascal语言定为唯一提倡的程序设计语言,在大学中Pascal语言也常常被用作学习数据结构与算法的教学语言。

二、PASCAL语言的发展

在Pascal问世以来的三十余年间,先后产生了适合于不同机型的各种各样版本。其中影响最大的莫过于Turbo Pascal系列软件。它是由美国Borland公司设计、研制的一种适用于微机的Pascal编译系统。该编译系统由1983年推出10版本发展到1992年推出的70版本,其版本不断更新,而功能更趋完善。

Turbo Pascal语言是编译型程序语言,它提供了一个集成环境的工作系统,集编辑、编译、运行、调试等多功能于一体

Pascal有5个主要的版本,分别是Unextended Pascal、Extended Pascal、Object-Oriented Extensions to Pascal、Borland Pascal和Delphi Object Pascal。其中,Unextended Pascal、Extended Pascal和Object-Oriented Extensions to Pascal是由Pascal标准委员会所创立和维护的,Unextended Pascal类似于瑞士Niklaus Wirth教授和KJensen于1974年联名发表的Pascal用户手册和报告,而Extended Pascal则是在其基础上进行了扩展,加入了许多新的特性,它们都属于正式的Pascal标准;Object-Oriented Extensions to Pascal是由Pascal标准委员会发表的一份技术报告,在Extended Pascal的基础上增加了一些用以支持面向对象程序设计的特性,但它属于非正式的标准。Borland Pascal和Delphi Object Pascal是由Borland公司专门为其开发的编译工具设计的Pascal语言,前者是用于DOS的Turbo Pascal系列和Windows 3x的Turbo Pascal for Windows的传统高级语言,后者是用于Windows的Delphi和Linux的Kylix的面向对象程序设计语言,它们都不是正式的Pascal标准,具有专利性。但由于Turbo Pascal系列和Delphi功能强大并且广为流行,Borland Pascal和Delphi Object Pascal已自成为一种标准,为许多人所熟悉。

三、PASCAL语言的影响

高级语言发展过程中,PASCAL是一个重要的里程碑。PASCAL语言是第一个系统地体现了EWDijkstra和CARHoare定义的结构化程序设计概念的语言。1971年,瑞士联邦技术学院尼克劳斯·沃尔斯(NWirth)教授发明了另一种简单明晰的电脑语言,这就是以电脑先驱帕斯卡的名字命名的PASCAL语言。PASCAL语言语法严谨,层次分明,程序易写,具有很强的可读性,是第一个结构化的编程语言。它一出世就受到广泛欢迎,迅速地从欧洲传到美国。沃尔斯一生还写作了大量有关程序设计、算法和数据结构的著作,因此,他获得了1984年度“图灵奖”。

四、PASCAL在学习和竞赛中的应用

在中国的信息学奥林匹克竞赛中,过去比较常用的Pascal编程工具是Turbo Pascal。Turbo Pascal是DOS下的一种16位编程工具,在Delphi出现之前,它是世界上最多人使用的Pascal编程工具,拥有编译速度极快的先进编译器和功能强大而又简便易用的集成开发环境(IDE),在微机程序员中广为流行,正是它的出现奠定了Pascal在DOS/Windows平台上不可动摇的根基,现在常见的版本有Turbo Pascal 55、Turbo Pascal 60和Borland Turbo Pascal with Objects 70。Turbo Pascal 60与Turbo Pascal 55相比,主要是IDE更为强大,而其程序设计功能改变不大,只是增加了一些新的功能,例如可以内嵌asm汇编语句等。而Borland Turbo Pascal with Objects 70(简称Borland Pascal 70)则有了新的飞跃,首先是IDE进一步加强,提供了程序浏览器,然后是程序设计功能有了很大的提升,新增了一些十分有用的标准子程序,支持比较完善的面向对象程序设计功能,并提供了DOS实模式、DOS保护模式和Windows模式三种程序编译模式,能够编写出可以使用扩充内存(XMS)的保护模式应用程序或者在Windows 3x下运行的Windows程序,另外还提供了一个对象窗口库(OWL),使用它可以快速的开发出具有一致的视窗界面(DOS或Windows 3x)的应用程序。Borland Pascal 70在1992年推出,是Turbo Pascal系列在DOS下的最后版本。

现在,随着Turbo Pascal逐渐被淘汰,全国信息学奥林匹克竞赛决赛(NOI)和国际信息学奥林匹克竞赛(IOI)已经指定Free Pascal为比赛使用的Pascal编程工具。Free Pascal是由一个国际组织开发的32位Pascal编程工具,属于共享软件,可用于各种 *** 作系统。根据编译选项的不同,它可以使用Borland Pascal兼容语法、Delphi 2 Object Pascal语法或者其它语法进行编写程序。由于它拥有32位的编译器,而且一直在更新发展中,因此它的功能比Borland Pascal更加强大,拥有许多现代程序设计的特征,但同时也很不成熟,存在很多漏洞。Free Pascal正处于发展初期,相应的函数库十分少,对程序员的吸引力远比不上拥有VCL和CLX的Delphi和Kylix。

计算机中的高级语言有java,c,c++,C#,pascal,python,lisp,prolog,FoxPro,易语言,等。

1、Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。

Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。

2、C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

3、C++是C语言的继承,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。

C++擅长面向对象程序设计的同时,还可以进行基于过程的程序设计,因而C++就适应的问题规模而论,大小由之。

4、Pascal以法国数学家命名的Pascal语言现已成为使用最广泛的语言之一,其主要特点有:严格的结构化形式;丰富完备的数据类型;运行效率高;查错能力强。

5、Python是一种计算机程序设计语言。是一种动态的、面向对象的脚本语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的、大型项目的开发。

6、LISP是一种通用高级计算机程序语言,长期以来垄断人工智能领域的应用。LISP作为因应人工智能而设计的语言,是第一个声明式系内函数式程序设计语言,有别于命令式系内过程式的C、Fortran和面向对象的Java、C#等结构化程序设计语言。

7、Prolog是一种逻辑编程语言。它建立在逻辑学的理论基础之上, 最初被运用于自然语言等研究领域。现已广泛的应用在人工智能的研究中,可以用来建造专家系统、自然语言理解、智能知识库等。

同时对一些通常的应用程序的编写也很有帮助,能够比其他的语言更快速地开发程序,因为它的编程方法更像是使用逻辑的语言来描述程序。

8、visual foxpro简称VFP,同VB、DELPHI一样都是程序开发工具,VFP由于自带免费的DBF格式的数据库,在国内曾经是非常流行的开发语言,现在许多单位的MIS系统都是用VFP开发的。VFP主要用在小规模企业单位的MIS系统开发,当然也有像工控软件、多媒体软件的开发中。

9、易语言是一门以中文作为程序代码编程语言,其以“易”著称,创始人为吴涛。易语言早期版本的名字为E语言。其最早的版本的发布可追溯至2000年9月11日。创造易语言的初衷是进行用中文来编写程序的实践,方便中国人以中国人的思维编写程序,并不用再去学习西方思维。

易语言的诞生极大的降低了编程的门槛和学习的难度。从2000年以来,易语言已经发展到一定的规模,功能上、用户数量上都十分可观。

参考资料:

百度百科_Java

百度百科_C语言

百度百科_C++

百度百科_Python

百度百科_pascal

百度百科_LISP

百度百科_Prolog

百度百科_foxpro

百度百科_易语言

D。

大多数现代过程式语言都鼓励结构化程序设计,结构化程序设计主要强调的是程序的易读性,其中的具体情况如下:

结构化程序设计通常使用自上往下的设计模型,开发员将整个程序结构映射到单个小部分。已定义的函数或相似函数的集合在单个模块或字模块中编码,这意味着,代码能够更有效的载入存储器,模块能在其它程序中再利用。模块单独测试之后,与其它模块整合起来形成整个程序组织。

程序流程遵循简单的层次化模型,采用“for”、“repeat”、“while”等循环结构,不鼓励使用“Go To”语句。几乎任何语言都能使用结构化程序设计技术来避免非结构化语言的通常陷阱。非结构化程序设计必须依赖于开发人员避免结构问题,从而导致程序组织较差。

扩展资料

现代程序设计的相关明细

据了解,现代程序设计按照语言的实用性可分为以下两类:

1、面向对象的程序设计

作为结构化语言的自然延伸,其先进编程方法会产生一个清晰而又容易扩展及维护的程序。如果为程序建立了一个对象,就可以在其他的程序中使用这个对象,完全不必重新编制繁复的代码。对象的重复使用可以大大地节省开发时间,从而提高现代程序设计的工作效率。

2、C语言

作为一种结构化语言,不但便于组织程序,而且易于调试和维护。由于实现了对硬件的编程 *** 作,因此集高级语言和低级语言的功能于一体,既可用于系统软件的开发,也适合于应用软件的开发。此外还具有效率高、可移植性强等特点,因此在现代程序设计中得到广泛开发和应用。

参考资料来源:百度百科-结构化程序设计

我们都知道,java编程无论是在软件开发或者是说其他编程方面,使用范围都是非常广泛的,所以,今天java课程就一起来了解一下,java编程开发语言与其他编程语言的区别和优势都有哪些。

现代JavaWeb开发

因为JavaWeb服务器与Web一样老,因此在JavaWeb上长期存在的成功传统和实践很快就要扔掉,现在可能是一个好的时候来解释这一系列中“现代”意思。

在本文中,我说“现代”的意思,就是“与现代主流软件开发趋势一致”。这些趋势并不是完全任意的堆砌,他们一个一个契合在一起。出现于这个期间大量小型快速发展的创业公司更偏爱精益开发方法。这些都要求一个更好使用,更少安装、部署和配置,集开发和运维于一体的工具。广受欢迎的云计算通过资源管理,也就虚拟化(无论是工具上还是在系统级)鼓励这些方法。系统级部署和资源分配也支持异构架构的发展。所谓异构架构就是指寻找适合的工具(也有可能是不同的工具)做合适的事。

传统的JavaWeb服务器,也就是典型的应用服务器,都有一个特别的特性:支持在一个JVM上运行多个应用。这个应用服务器提供能分开应用的运行时环境,而且升级,安装和启动都是独立的。一个应用可能运行在一个配置好的,已经运行的环境中,这种方法很多时候都工作良好,你也有理由继续使用这种方案,但是这种方案,离“现化”太远了。在不同的应用中分配不同的资源这件事是并不简单,而且在一定程度上跟现在使用hypervisor和os容器来运行应用的方案是矛盾的。因为现在针对hypervisor和os容器设计的工具和技术在多应用服务器上效率并不高,即使这些多应用服务器只是用来运行一个应用,而且这些多应用服务器的运维也不“现代”:安装配置web或者app服务器是不可缺少的,部署应用需要很多步,每一步可能都很麻烦。

现代的方法,就是在其它语言和运行平台使用的方法--单应用服务器。单应用服务器中,web容器是嵌入到应用中(而不是把应用部署到web容嚣中)。这样做就可以简单的部署,管理,配置和在系统级进行资源的分配。这就是为什么,一但现代的方法被引入Java中,传统的应用服务器(我的意思是任何打算运行多个应用的servlet或者全功能的J2e服务器)就死了。

在这里,我们调研的工具和技术并非覆盖全部的的领域。特别是在web和web相关的领域中,开发,工具,库和框架激增。这种增长部分原因是,不像嵌入式开发和大型机开发,web开发在初创公司和开发爱好者中广受欢迎。这类人是新技术的早期采纳者和体验者,有时也会为了探索技术的边界,或者学习,还有自我证明发明一种新的择术。这样的结果就是数以百计的库被发明出来,全都为了解决同样的目标,只是使用的方法略有不同。这种事情发生在Java的世界里,也发生在其他的语言生态中。

同时,我们不会讨论那种有巨大的MVC结构,模板系统或者设计来就是在服务器端渲染html的“全功能”的web框架。有很多理由不这么做,一个就是,我从来没有使用过那种框架,所以我不会评论他们的适用性或“现化化”,二,这个主题就非常复杂,需要更多的讨论,而在别的地方已经有了(这里,这里),三,web开发正在朝客户端渲染和SPA方向发展(如angular),本质上正在朝着以前c/s的架构发展,数据和命令都通过>

>

Java与其他语言不同的一点是JCP(JavaCommunityProcess)的工作,它的工作是标准化API(即使对于不属于语言规范或甚至标准运行时的库)也是如此,然后由各种商业或开源组织实现。这些JSR(JavaSpecificationRequests)是由专家组制作的,它能把一项技术从普遍变成成熟并成为标准。当JSR通过时,就会非常有用,因为几乎所有迎合相关领域的库都将实现这个标准API,这使得切换实现不那么痛苦。

对于服务器实现(代码中框架更为普遍)来说,标准对于客户端(每个调用或多或少都是独立的并且可以被替换)而言更重要。您可以使用三个不同的>

相比于客户端(每次请求或多或少比较独立和能被替代),标准化对服务器应用更重要(因为框架代码无处不在)。你可以使用三个不同的>

以上就是关于谁发明了那些经典的编程语言全部的内容,包括:谁发明了那些经典的编程语言、PASCAL是什么,容易学习的不学会PASCAL是不是也会delphi、高级语言有哪些等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/9873077.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存