巴科斯范式

简介: PS: 巴科斯范式,很多的linux手册以及各种软件的官方文档,所有稍微复杂点儿的语法规则几乎都是它定义的! 巴科斯范式(BNF: Backus-Naur Form 的缩写)是由 John Backus 和Peter Naur首先引入的用来描述计算机语言语法的符号集。现在,几乎每一位新编程语言书籍的作者都使用巴科斯范式来定义编程语言的语法规则。     巴科斯范式的内容   
PS: 巴科斯范式,很多的linux手册以及各种软件的官方文档,所有稍微复杂点儿的语法规则几乎都是它定义的!

巴科斯范式(BNF: Backus-Naur Form 的缩写)是由 John Backus 和Peter Naur首先引入的用来描述计算机语言语法的符号集。现在,几乎每一位新编程语言书籍的作者都使用巴科斯范式来定义编程语言的语法规则。  
 
巴科斯范式的内容 
 

双引号中的字("word")代表着这些字符本身。而double_quote用来代表双引号。
双引号外的字(有可能有下划线)代表着语法部分
尖括号( < > )内包含的为必选项。
方括号( [ ] )内包含的为可选项。
大括号( { } )内包含的为可重复0至无数次的项。
竖线( | )表示在其左右两边任选一项,相当于"OR"的意思。
::= 是“被定义为”的意思。

巴科斯范式示例  

例如用BNF来定义的Java语言中的For语句的实例:

FOR_STATEMENT ::= "for" "(" variable_declaration (expression ";" ) ";) [ expression ] ";" [ expression ] ";" ")" statement

目录
相关文章
|
6月前
|
Java 开发者
多线程编程范式(一) 协作范式
多线程编程范式(一) 协作范式
|
6月前
|
Rust 并行计算 JavaScript
函数式编程:革命性的编程范式
函数式编程:革命性的编程范式
|
6月前
|
Java 程序员 数据处理
探索编程范式:面向对象编程与函数式编程的比较与取舍
本文将探讨面向对象编程(OOP)和函数式编程(FP)两种主流的编程范式,并比较它们在代码组织、可复用性、并发性和代码风格等方面的特点。通过深入了解它们的优势和不足,读者可以更好地选择适合自己项目需求的编程范式。
263 1
|
数据库
数据库设计:范式与反范式
数据库设计:范式与反范式
|
SQL 存储 关系型数据库
数据库设计范式
数据库设计范式是一组规则,用于规范化关系型数据库的设计,以提高数据的一致性、减少冗余和数据异常。常见的数据库设计范式包括第一范式(1NF)、第二范式(2NF)、第三范式(3NF)和BC范式(BCNF)。以下是这些范式的简要介绍:
123 0
|
设计模式 分布式计算 算法
聊聊编程范式
聊聊编程范式
聊聊编程范式
|
程序员 Go
编程范式(一):结构化编程
编程范式(一):结构化编程
439 0
|
存储 架构师 程序员
编程范式(三):函数式编程
编程范式(三):函数式编程
324 0
|
架构师 安全 程序员
编程范式(二):面向对象编程
编程范式(二):面向对象编程
324 0