第二部分:第9章编码风格 第9章编码风格 本章介绍 Visual Prolog6的编码风格,包括基本 元素、推荐格式、程序结构、程序设计语用学、存储 管理,以及异常处理。这里描述的 Visual prolog程序 的编码标准,是 sual Prolog系统本身的一部分。且 用户文档中的例子也是标准的,它门同样也代表了 Prolog发展中心为用户推荐的编码标准。 2004.11.3 A|程序设计
2004.11.3 AI程序设计 1 第二部分:第9章 编码风格 第9章 编码风格 本章介绍Visual Prolog 6的编码风格,包括基本 元素、推荐格式、程序结构、程序设计语用学、存储 管理,以及异常处理。这里描述的Visual Prolog程序 的编码标准,是Visual Prolog系统本身的一部分。且 用户文档中的例子也是标准的,它门同样也代表了 Prolog发展中心为用户推荐的编码标准
第二部分:第9章编码风格 第9章编码风格 9.1基本元素 9.2_推荐格式 9.3程序结构 9.4程序设计语用学 9.5存储管理 9.6异常处理 本章小结与习题 2004.11.3 A|程序设计
2004.11.3 AI程序设计 2 第二部分:第9章 编码风格 第9章 编码风格 9.1 基本元素 9.2 推荐格式 9.3 程序结构 9.4 程序设计语用学 9.5 存储管理 9.6 异常处理 本章小结与习题
第二部分:第9章编码风格 9.1基本元素 9.1.1关键字 9.1.2半关键字 9.1.3文字 9.1.4标识符 9.1.5常量 9.1.6变量 9.1.7谓词 9.1.8论域 9.1.9类和接口 2004.11.3 A|程序设计
2004.11.3 AI程序设计 3 第二部分:第9章 编码风格 9.1 基本元素 9.1.1 关键字 9.1.2 半关键字 9.1.3 文字 9.1.4 标识符 9.1.5 常量 9.1.6 变量 9.1.7 谓词 9.1.8 论域 9.1.9 类和接口
第二部分:第9章编码风格 9.1.1关键字 关键字以小写字母表示。在有关资料中,关键字是以没有衬线的粗 体字被编排的,例如 Arial,缺省颜色为暗黄色。例如 constants domains facts predicates class interface 2004.11.3 A|程序设计
2004.11.3 AI程序设计 4 第二部分:第9章 编码风格 9.1.1 关键字 • 关键字以小写字母表示。在有关资料中,关键字是以没有衬线的粗 体字被编排的,例如 Arial,缺省颜色为暗黄色。例如 constants domains facts predicates class interface
第二部分:第9章编码风格 9.1.2半关键字 Visual Prolog使用了大量的标识以满足多样化的句法结构,这些词以小写 字母书写(除了C调用约定写成C),且一般是没有衬线的字体。这些半关 键字依照它们的性质以两种不同的颜色显示。如果这个词表示一种选择,那 么它显示为藏青色,而如果它是一种结构词,那么它将以暗黄色显示。 erroneous stdcall 这个例子显示了颜色和字体。 failure predicates procedure my Predicate: (string determ language Value) nondeter procedure( language as stdcall as"myP 2004.11.3 A|程序设计
2004.11.3 AI程序设计 5 第二部分:第9章 编码风格 9.1.2 半关键字 • Visual Prolog使用了大量的标识以满足多样化的句法结构,这些词以小写 字母书写(除了C调用约定写成C),且一般是没有衬线的字体。这些半关 键字依照它们的性质以两种不同的颜色显示。如果这个词表示一种选择,那 么它显示为藏青色,而如果它是一种结构词,那么它将以暗黄色显示。 erroneous failure procedure determ nondeterm multi stdcall C ... language as ... 这个例子显示了颜色和字体。 predicates myPredicate : (string Value) procedure (i) language stdcall as "_myP
第二部分:第9章编码风格 9.1.3文字 文字显示为蓝色。例如 Hello world! 2004.11.3 A|程序设计 6
2004.11.3 AI程序设计 6 第二部分:第9章 编码风格 9.1.3 文字 • 文字显示为蓝色。例如 "Hello world!
第二部分:第9章编码风格 9.1.4标识符 标识符的一般格式可以由下面的EBNF语法来描述: = =i_] Word group>=+ 前缀和后缀被用来表示某种标识符,并将用来处理各种标识符之间的联系 这些词以大写字母书写,当然除了整个标识符的第一个字母必须小写以外 所有变量以大写字母开始,而其他所有的标识符以小写字母开始。 在文件中,除了关键字,所有的标识符以衬线字体编排。例如 Times New Roman字体。 2004.11.3 A|程序设计
2004.11.3 AI程序设计 7 第二部分:第9章 编码风格 9.1.4 标识符 • 标识符的一般格式可以由下面的EBNF语法来描述: = = { ‘_’ }* = + • 前缀和后缀被用来表示某种标识符,并将用来处理各种标识符之间的联系。 这些词以大写字母书写,当然除了整个标识符的第一个字母必须小写以外。 • 所有变量以大写字母开始,而其他所有的标识符以小写字母开始。 • 在文件中,除了关键字,所有的标识符以衬线字体编排。例如Times New Roman字体
人第二部分:第9章编码风格 9.1.5常量 常量既没前缀也没后缀,它以小写字母开始。例如 numberofRows, pi, logErrorMsg 2004.11.3 A|程序设计 8
2004.11.3 AI程序设计 8 第二部分:第9章 编码风格 9.1.5 常量 • 常量既没前缀也没后缀,它以小写字母开始。例如 • numberOfRows,pi,logErrorMsg
人第二部分:第9章编码风格 9.1.6变量 变量也没前缀和后缀。像前面提到的 Prolog要求的那样, 变量以大写字母开始。在程序文件中变量以绿色显示。 2004.11.3 A|程序设计
2004.11.3 AI程序设计 9 第二部分:第9章 编码风格 9.1.6 变量 • 变量也没前缀和后缀。像前面提到的Prolog要求的那样, 变量以大写字母开始。在程序文件中变量以绿色显示
人第二部分:第9章编码风格 9.1.7谓词 谓词没有前缀。然而,“try"可以用来表示一个谓词是确定性的, 特别是它被用做从一个相应的程序描述中区分确定性谓词的描述。 而后者将引起一个异常而不是失败。例如 try SetValue :(integer Value) determ (i) setValue :(integer Value) procedure (O 除非为了避免混淆必须添加后缀,否则谓词是没有后缀的。在一些 情况下,为避免混淆,表9-1中的后缀应该被选用 注意:一般来说,多重谓词应以_nd为后缀,但如果环境需要也可 用mult代之。 2004.11.3 A|程序设计 10
2004.11.3 AI程序设计 10 第二部分:第9章 编码风格 9.1.7 谓词 • 谓词没有前缀。然而,“try”可以用来表示一个谓词是确定性的, 特别是它被用做从一个相应的程序描述中区分确定性谓词的描述。 而后者将引起一个异常而不是失败。例如: trySetValue : (integer Value) determ (i). setValue : (integer Value) procedure (i). • 除非为了避免混淆必须添加后缀,否则谓词是没有后缀的。在一些 情况下,为避免混淆,表9-1中的后缀应该被选用。 • 注意:一般来说,多重谓词应以_nd为后缀,但如果环境需要也可 用_multi代之