代码之髓——编程语言核心概念

学习方式

  1. 在比较中学习
  2. 在历史中学习

历史原因,最原始的计算机ENIAC使用电缆编程,之后使用纸带。FORTRAN语言是第一个大家现在普遍使用的语言类型。 *

为什么有编程语言?

为了便捷、高效。

语言各有各的便捷。C++重视执行速度,规则繁多。Scheme语言规则容易掌握。Python侧重代码易读。 不同的目的会使用不同的语言。语言只是工具,要根据需求选择最好的工具。

为什么要有语法规则?

  1. 语法是什么?语法是一种由程序设计者指定的规则。
  2. 为什么要这样规定?为了便捷。 例如,运算符的计算顺序,大部分与四则运算相同。

  • 桟机器与FORTH语言:利用桟实现计算顺序。
  • 语法树与LISP: 树形结构表达计算顺序。不同规则的语法树遍历规则不同。 在python中查看:

    import ast
    ast.dump(ast.parse("(1 + 2) * 3"))
    
    'Module(body=[Expr(value=BinOp(left=BinOp(left=Num(n=1), op=Add(), right=Num(n=2)), op=Mult(), right=Num(n=3)))])'
    

要确认理解是否正确,首先要表达出来。当你不知道自己该学什么的时候,不妨想一想自己学习的目的是什么,或者从小事做起,不断的把事情做大。

源程序通过语法分析器生成语法树。(这不是一件容易的事情)

为什么有流程控制?

为什么有if语句,从C语言与汇编说起。

直接跳转到某一命令去执行,也就是if else。