fbpx
维基百科

BETA语言

BETA是一种纯面向对象编程语言,由克利斯登·奈加特为首的斯堪的纳维亚学者开发,他们开发了第一个面向对象语言Simula[1]。它的显著特征,是介入了内部类,并将类和过程统一成所谓的模式。这个项目从2020年10月开始不再活跃[2]

BETA
编程范型面向对象
設計者Bent Bruun Kristensen, Ole Lehrmann Madsen, Birger Møller-Pedersen英语Birger Møller-Pedersen, Kristen Nygaard
发行时间1986年
操作系统跨平台
網站beta.cs.au.dk
主要實作產品
Mjølner System
啟發語言
Simula

特征 编辑

技术概览 编辑

从技术的角度看,BETA提供了一些独特的特征。类和过程被统一成一个概念:模式。还有,类被定义为对象的属性/特性。这意味着没有显式的对象上下文,类就不能实例化。故而有一个结果,就是BETA支持嵌套类。类可以被虚拟定义,就像多数面向对象编程语言中能见到的虚方法。虚拟实体(比如方法和类)永不能覆写,它们转而可以重新定义或特殊化。

BETA支持编程的面向对象视角,并有着针对过程式和函数式编程的综合性设施。它有着强力的抽象机制来支持对象识别、分类和复合。BETA是静态类型的语言,就像Simula、EiffelC++,带有编译时间的多数类型的检查[1]。BETA的目标是在编译时间类型检查和运行时间类型检查之间实现优化的平衡。

模式 编辑

这个语言的主要和独特的特征是模式的概念。在其他编程语言比如C++中,可能有很多类和过程。BETA使用模式来表达二者概念。

例如,一个简单的C++类有如下形式

class point {  int x, y; }; 

在BETA中,同样的类可以表示为模式

point: (# x, y: @integer #) 

这个叫做point的类有二个整数类型的字段xy。符号(##)介入模式。使用冒号来声明模式和变量。在字段定义中整数类型之前的@符号指定它们是整数字段,而非与之相对的引用、数组或其他模式。

另一个比较,C++中的过程有如下形式

int max(int x, int y) {  if(x >= y) {  return x;  }  else {  return y;  } } 

在BETA中,这个函数可以使用模式写为

max: (# x, y, z: @integer enter (x, y) do (if x >= y // True then x -> z else y -> z if) exit z #) 

xyz是局部变量。enter关键字指定给这个模式的输入参数,而exit关键字指定这个函数的结果。在二者之间,do关键字前缀于要做的一序列运算操作。条件块用(ifif)来界定,就是说if关键字成为了开和闭圆括号的一部份。真值通过在if块内的// True来检查,最后,赋值算符->将它左手侧的值赋给它右手侧的变量。

Hello world! 编辑

下面的代码片段打印“Hello world!”:

(# do Hello world!’->PutLine #) 

延伸阅读 编辑

  • Ole Lehrmann Madsen, Birger Møller-Pedersen, Kristen Nygaard. . [2020-05-16]. (原始内容存档于2019-01-15). 
  • Bent Bruun Kristensen, Ole Lehrmann Madsen, Birger Møller-Pedersen. (PDF). ACM History of Programming Languages III, Conference, San Diego. 2007 [2020-05-16]. (原始内容 (PDF)存档于2017-02-11). 

引用 编辑

  1. ^ 1.0 1.1 Source: An overview of BETA (页面存档备份,存于互联网档案馆) Ole Lehrmann Madsen: An overview of BETA
  2. ^ . [2020-05-16]. (原始内容存档于2021-03-04). 

外部链接 编辑

  • 官方网站
  • Generalized BETA

beta语言, beta是一种纯面向对象的编程语言, 由克利斯登, 奈加特为首的斯堪的纳维亚学者开发, 他们开发了第一个面向对象语言simula, 它的显著特征, 是介入了内部类, 并将类和过程统一成所谓的模式, 这个项目从2020年10月开始不再活跃, beta编程范型面向对象設計者bent, bruun, kristensen, lehrmann, madsen, birger, møller, pedersen, 英语, birger, møller, pedersen, kristen, nygaard发行. BETA是一种纯面向对象的编程语言 由克利斯登 奈加特为首的斯堪的纳维亚学者开发 他们开发了第一个面向对象语言Simula 1 它的显著特征 是介入了内部类 并将类和过程统一成所谓的模式 这个项目从2020年10月开始不再活跃 2 BETA编程范型面向对象設計者Bent Bruun Kristensen Ole Lehrmann Madsen Birger Moller Pedersen 英语 Birger Moller Pedersen Kristen Nygaard发行时间1986年操作系统跨平台網站beta wbr cs wbr au wbr dk主要實作產品Mjolner System啟發語言Simula 目录 1 特征 1 1 技术概览 1 2 模式 1 3 Hello world 2 延伸阅读 3 引用 4 外部链接特征 编辑技术概览 编辑 从技术的角度看 BETA提供了一些独特的特征 类和过程被统一成一个概念 模式 还有 类被定义为对象的属性 特性 这意味着没有显式的对象上下文 类就不能实例化 故而有一个结果 就是BETA支持嵌套类 类可以被虚拟定义 就像多数面向对象编程语言中能见到的虚方法 虚拟实体 比如方法和类 永不能覆写 它们转而可以重新定义或特殊化 BETA支持编程的面向对象视角 并有着针对过程式和函数式编程的综合性设施 它有着强力的抽象机制来支持对象识别 分类和复合 BETA是静态类型的语言 就像Simula Eiffel和C 带有编译时间的多数类型的检查 1 BETA的目标是在编译时间类型检查和运行时间类型检查之间实现优化的平衡 模式 编辑 这个语言的主要和独特的特征是模式的概念 在其他编程语言比如C 中 可能有很多类和过程 BETA使用模式来表达二者概念 例如 一个简单的C 类有如下形式 class point int x y 在BETA中 同样的类可以表示为模式 point x y integer 这个叫做point的类有二个整数类型的字段x和y 符号 和 介入模式 使用冒号来声明模式和变量 在字段定义中整数类型之前的 符号指定它们是整数字段 而非与之相对的引用 数组或其他模式 另一个比较 C 中的过程有如下形式 int max int x int y if x gt y return x else return y 在BETA中 这个函数可以使用模式写为 max x y z integer enter x y do if x gt y True then x gt z else y gt z if exit z x y和z是局部变量 enter关键字指定给这个模式的输入参数 而exit关键字指定这个函数的结果 在二者之间 do关键字前缀于要做的一序列运算操作 条件块用 if和if 来界定 就是说if关键字成为了开和闭圆括号的一部份 真值通过在if块内的 True来检查 最后 赋值算符 gt 将它左手侧的值赋给它右手侧的变量 Hello world 编辑 下面的代码片段打印 Hello world do Hello world gt PutLine 延伸阅读 编辑Ole Lehrmann Madsen Birger Moller Pedersen Kristen Nygaard Object Oriented Programming in the BETA Programming Language 2020 05 16 原始内容存档于2019 01 15 Bent Bruun Kristensen Ole Lehrmann Madsen Birger Moller Pedersen The When Why and Why Not of the BETA Programming Language PDF ACM History of Programming Languages III Conference San Diego 2007 2020 05 16 原始内容 PDF 存档于2017 02 11 引用 编辑 1 0 1 1 Source An overview of BETA 页面存档备份 存于互联网档案馆 Ole Lehrmann Madsen An overview of BETA 存档副本 2020 05 16 原始内容存档于2021 03 04 外部链接 编辑官方网站 gbeta Generalized BETA 取自 https zh wikipedia org w index php title BETA语言 amp oldid 78541621, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。