天天看点

Decision Computation and Language(一)

首先是关于语言:

我们无法确定一个有着有序符号的一串排列算不算是语言的一部分,于是Formal Language 提供了一个更加精确的规则来
    管理什么样的字符串是属于语言的范畴,Formal Language包括了编程语言,数据库查询语言以及一些不同的文件格式,
    而相比之下,英语法语什么的不属于formal language的范畴,纵然你仍然可以写一些关于他们的一些规则。
           

怎么样去形容或者讲授一个语法:

1.  一些不太正式的表达:

            一个算法表达式一般是由一些变量和数字和一些插入的操作符(+,-,*,/)组成的,然后一些子表达式也会被一
            些插入语依附....之类的东西

        2.  例如:a42是一个有效的变量名,而42a不是的,因为变量名不能以数字开头

        3.  所以我们需要一些注释来更准确的表达这些description
           

这一门课主要是:表示正规语言的符号(notations for representing formal languages),为我们提供了:

1.  更加准确的定义

    2. 创造编译器去识别语言

    3. 提供方法去检验:
            ·
        · 一串符号是否属于语言的范畴

        · 两种可替换的语言描述是否是相同的语言
           

在编程语言中:

编译阶段:

        1.词法分析:把字符串序列分成符号,类似于变量名,操作符,标记这种。

        2.转换:鉴别符号之间的关系

        3.生成代码

        4.代码最优化
           
Decision Computation and Language(一)
Decision Computation and Language(一)