Program-Language


1. 主流编程语言
2. 编程语言分类
    2.1 编译or解释
    2.2 按照客观系统的描述可分为两类
    2.3 按照编程范型可分为
3. 语言范式 Paradigm
4. 计算机语言历史
5. 编程语言排名
6. 编程语言影响关系
7. 更多信息:

1. 主流编程语言

Language2019TopLanguages InfluencedInfluenced by
Java120153917
C220175410
Python32018309
C++42003366
Lisp32 601
C#6 178
JavaScript72014127
PHP8200428
SQL9201371
Objective-C102012112
Ruby1220061710
Perl17 1910
go182016 7

列描述:

  • 2019: 截止2019年7月排名
  • Top: 登录过首位的年份
  • Languages Influenced: 影响多少个编程语言
  • Influenced by: 被多少个编程语言影响

2. 编程语言分类

  • 机器语言 (二进制代码)
  • 汇编语言 (面向机器的程序设计语言)
  • 高级语言 (...)

2.1 编译or解释

  • 解释性语言:Java、JavaScript、Perl、Python、Ruby、MATLAB 等。
  • 编译性语言: C/C++、Pascal/Object Pascal(Delphi)
  • 脚本语言(一种解释性语言):Python、JavaScript,ASP,PHP,Perl等

2.2 按照客观系统的描述可分为两类

  • 面向过程语言(C);
  • 面向对象语言(C++, Objective-C)

2.3 按照编程范型可分为

  • 命令式语言;  (Fortran、ALGOL、COBOL、C、Ada、Pascal)
  • 函数式语言;  (Lisp、Haskell、ML、Scheme 、F#)
  • 逻辑式语言;  (Prolog)
  • 纯面向对象语言  (Smalltalk)

3. 语言范式 Paradigm

sn语言范式 Paradigm比如: 描述count
1面向对象的编程
Object-oriented
Lisp, Java, Python, C++, Ruby, Perl, Smalltalk使用由数据字段和方法组成的数据结构及其交互(对象)来设计程序188
2功能编程 FunctionalLisp,Python, C++, Ruby, JavaScript, C#使用数学函数的评估并避免状态和可变数据130
3命令式编程 ImperativeC, Java, Python, JavaScript, Pascal, Ruby, Perl改变程序状态的显式语句118
4逻辑编程 LogicProlog使用显式数学逻辑进行编程20
5声明性编程 DeclarativeHaskell描述应该执行的计算,而不指定详细的状态变化c.f.命令式编程(功能和逻辑编程是声明性编程的主要子组)15
6通用编程 GenericJava, C++, Perl, C#使用根据待指定的后续类型编写的算法,然后根据需要对作为参数提供的特定类型进行实例化10
7反思性编程 ReflectiveRuby, JavaScript元编程方法,其中程序修改或扩展自身5
8数据流编程 DataflowSISAL数据值发生变化时强制重新计算公式(例如电子表格)3
9管道编程 Pipeline 一个简单的语法更改,用于添加语法以将函数调用嵌套到最初使用none设计的语言2
10分布式编程 Distributed 支持通过计算机网络进行通信的多台自治计算机1
11多范式编程语言Python, C++, Perl, Ruby, C#Multi-paradigm programming language94
12程序编程Lisp, C, Python, C++, PerlProcedural programming89
13结构化编程C, Java, Pascal, RubyStructured programming65
14并发计算C#Concurrent computing26
15基于原型的编程JavaScriptPrototype-based programming24
16面向堆栈的编程语言ForthStack-oriented programming language17
17并行计算ALGOL 68Parallel computing16
18数组编程APLArray programming13
19知识表示语言KPLKnowledge Representation Language9
20连接编程语言ForthConcatenative programming language9
21口译语言Lisp, Python, RubyInterpreted language8
22动态编程语言Perl, RubyDynamic programming language7
23数据库编程SQLDatabase programming7
24教育编程语言LogoEducational programming language6
25数学Lisp, Haskell, APLMathematics4
26懒惰的评价HaskellLazy evaluation4
27编译语言HaskellCompiled language4
28强打字Haskell, JavaStrong typing3
29可视化编程语言 Visual programming language3
30按合同设计EiffelDesign by contract3
31模块化编程Modula, MesaModular programming3
32类型推断Haskell, MLType inference3
33功能级编程FPFunction-level programming3
34标记语言CurlMarkup language2
35依赖类型 Dependent type2
36演员模特 Actor model2
37框架语言 Frame language2
38自修改代码 Self-modifying code2
39事件驱动的编程 Event-driven programming2
40组合逻辑 Combinatory logic2
41细胞为主 Cell-based2
42虚拟机 Virtual machine1
43一次编写, 随处运行 Write once, run anywhere1
44多代理系统 Multi-agent system1
45基于表达式 Expression-based1
46基于知识的系统 Knowledge-based systems1
47面向组件的编程 Component oriented programming1
48封装 Encapsulation1
49阿贾克斯 Ajax1
50操作者 Operator1
51示例中心编程 Example Centric Programming1
52二维 Two dimensional1

 注: [count]列内的数字,表示该范式包含多少种编程语言,数据来源: https://exploring-data.com/vis/programming-languages-influence-network/

4. 计算机语言历史

lang.pdf (1954-2018)
https://www.levenez.com/lang/lang.pdf

5. 编程语言排名

https://www.tiobe.com/tiobe-index/

6. 编程语言影响关系

https://exploring-data.com/vis/programming-languages-influence-network/
编程语言影响关系图↑及相关说明↓
https://exploring-data.com/info/programming-languages-influence-network/

7. 更多信息:

https://en.wikipedia.org/wiki/Programming_paradigm
编程范式是一种根据编程语言的特性对编程语言进行分类的方法。语言可以分为多种范例。
https://upload.wikimedia.org/wikipedia/commons/f/f7/Programming_paradigms.svg
根据Peter Van Roy的各种编程范例概述(svg图)

多范式编程语言的比较
https://en.wikipedia.org/wiki/Comparison_of_multi-paradigm_programming_languages

https://en.wikipedia.org/wiki/Comparison_of_programming_languages

https://en.wikipedia.org/wiki/Categorical_list_of_programming_languages
编程语言的分类列表


转载于:https://www.cnblogs.com/sztom/p/11223227.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值