zoukankan      html  css  js  c++  java
  • 关于Backus-Naur Form巴克斯诺尔范式和扩展巴克斯范式的知识点和相关词语中英文对照

    巴克斯诺尔范式的相关词语中英文对照和知识点
    syntax 语法 强调的是编程语言的组形式,例如一个句子中会包含表达式、陈述还有各种单元等等
    semantics 语义 强调的是这个编程语言的实际含义,例如While的语义为:当Boolean表达式为true时,内部的陈述就会被执行;否则就会跳过while段
    recognizer 识别器 当已知一个句子的时候,可以识别它是否满足当前规则
    generator 生成器 当已知规则的情况下,可以生成任意满足当前规则的句子
    lexeme 词素 例如, '+', '-', '*', '/', '=', '1', ';' 
    token 词素的分类 例如,可以把1, 3, 10分为int_literal类
    Backus-Naur Form 巴克斯诺尔范式 简称,巴克斯范式
    nonterminal symbol 非终结符 在<>中间的字符
    terminal symbol 终结符 没有<>包围的字符
    left-hand side(LHS) 左边 在巴克斯范式中,一般是起始符,即在->或=左边的部分,right-hand side(RHS)同理
    identification 标识符 变量的名字,例如,int a,b,c; 中的a,b,c
    derivation 推导 用终结符代替所有非终结符的过程
    leftmost derivation   从RHS的最左边开始推导
    parse tree 语法分析树 或者语法解析树
    ambiguity 歧义

    由于两个或以上非终结符出现在同一个式子当中,从不同位置开始推导会产生不一样的计算顺序。

    解决方法:把优先级高的放入抽象概念中。抽象即可理解成一个非终结符,因为它里面的内容还不确定,所以还是很抽象的。

    operator associativity 操作符的结合性 如果编程语言是LHS的,那么它就是有left associativity的
    扩展巴克斯范式的知识点
    [] 可选表达式,可以使用[]中的表达式或者不使用 opt
    (…|…|…) 在括号里面任选其一 one of
    {} {}中的内容可以使用0到多次  
  • 相关阅读:
    前端生成pdf文件之pdfmake.js
    vim 安装
    linux基础学习
    python 编码处理
    Ubuntu 下配置 SSH服务全过程及问题解决
    yum 安装
    Ubuntu安装MySQL
    Linux各发行版本及其软件包管理方法
    轻松学习LINUX系列教程推出
    常用命令
  • 原文地址:https://www.cnblogs.com/anthonyhoo/p/13020462.html
Copyright © 2011-2022 走看看