问题标签 [oberon]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
663 浏览

compiler-construction - 编译 OpenBUGS 64 位

我需要在 64 位机器上编译 OpenBUGS,但它的存储库 ( http://sourceforge.net/projects/openbugs/develop ) 包含一堆 .ocf 文件。我在哪里可以找到适用于 Linux的编译器来完成这项工作?

0 投票
1 回答
4028 浏览

linux - 在 Windows 中访问 QNX 文件系统

我在 CF 卡中有一个 QNX 分区,在 SBC 上运行。如何使用资源管理器界面之类的东西访问 Windows 中的文件系统?

文件系统在 QNX Oberon 中。我也有 QNX Momentics IDE,但这也无济于事。

0 投票
6 回答
2904 浏览

oberon - 我在哪里可以学习 Oberon 以及我可以使用什么 IDE

我对学习 Oberon 非常感兴趣。我听说它具有独特的继承和多态性,并且内置了 GUI(我喜欢 GUI!)。

我将不胜感激一些文档(希望是简化文档)和 IDE/编译器的链接。

谢谢。

0 投票
3 回答
695 浏览

ada - 在 Ada 中继承是如何实现的,它是否内置在 GUI 中?

Ada 是否带有内置 GUI,它是否具有与 Oberon 相同的独特继承方法?

0 投票
2 回答
1313 浏览

grammar - PL/0 中的“奇数”表达式

给定以下 EBNF 语法(在 PL/0 的 wikipedia 上找到),“ODD”关键字前面的表达式是什么?我想将简单的语言实现为一个小项目,但我似乎无法弄清楚这意味着什么。有没有人在此之前或能够解释什么是奇怪的表达式,以便我可以正确地为该语言编写编译器?

0 投票
4 回答
957 浏览

oberon - Status of Oberon readiness for application programming

I am getting interested in the Oberon language and I would like to know: is the language actually used by common programmers or is it still only used by researchers? Is it production-ready? What I have in mind are non-scientific applications requiring GUI support and possibly Internet connectivity (at least client-side POP3 and SMTP functionality). Also, which of the Oberon flavors would you recommend for my needs (Oberon2, Active Oberon, etc)? The simpler, the better, as long as it is well maintained and has some community. If possible, I would like to run my applications in a conventional host environment (Windows or Linux), without the need for a special runtime environment or a special operating system.

Thanks

0 投票
1 回答
734 浏览

oop - Oberon 的面向对象模型与标准 OOP 有何不同?

我一直在阅读 Wirth 关于 Oberon 的书籍——或者至少尝试阅读——当我想弄清楚 Oberon 中的面向对象编程发生了什么时,我遇到了一个心理障碍。

我知道他的方法应该通过避免“标准” OOP 语法来简化面向对象的编程,他将其标记为犯罪,好像它在某种程度上是犯罪,也许我只是太扎根于类、方法等......种类思考,但有人可以将 Oberon 的方法翻译成标准的 OOP 语言,或者至少在概念上解释它。

0 投票
1 回答
144 浏览

oberon - 无法在 xds 中运行 Oberon 程序

我正在尝试在 XDS 编译器中的 Oberon 中运行 Hello World 程序。

我可以编译 hello.ob2 文件,我可以制作 hello.ob2,但是当我按下运行时,它说没有 hello.exe 文件。

我在 XDS 手册中发现我们必须进行链接。目前尚不清楚如何在 GUI 中链接它,但可以通过命令行进行链接:xlink /sys=c /name=hello hello.obj d:\xds\lib\x86\libxds.lib。

好吧,我是用 git bash 做的,但是响应是 Error(0): unable to open sys=c.obj

我在手册中还读到“编译器在 PROJECT 模式下调用时,可能会自动生成响应文件并调用链接”。所以,我假设项目模式意味着创建一个新项目。

所以,我创建了一个新项目。现在,当我运行项目时,它说:“项目中没有模块”。

有人可以告诉我如何运行这个项目吗?

或者您可以向我推荐其他具有简单清晰文档的编译器吗?

0 投票
0 回答
145 浏览

antlr - 尝试解决左递归尝试使用 ANTLR 构建解析器

我目前正在尝试使用 Antlr 和 Ecpise 为 Oberon 语言构建一个解析器。

这是我到目前为止所得到的:

我的问题是,当我检查语法时,我收到以下错误,只是找不到合适的方法来解决这个问题:

我也有声明序列和简单表达式的问题。

当我使用options { … backtrack = true; … }它时至少可以编译,但是当我运行测试文件时显然不再正常工作,但是我找不到自己解决左递归的方法(或者我可能只是太盲目了此刻,因为我已经看这个太久了)。有什么想法可以更改发生错误的行以使其正常工作吗?

编辑 我可以修复三个错误之一。statement现在工作。问题是,assignment两者procedurecall都以designator.

0 投票
1 回答
284 浏览

oberon - Oberon:如何解决 Wirth 的 PIO 重新类型保护中的矛盾

我试图弄清楚 Oberon 是否允许对记录中的字段进行寻址,该字段在所述记录的类型声明中不存在,但仅在其扩展之一中,并且在没有类型保护的情况下这样做。

在 PIO (" Programming in Oberon ") 第 62 页,第一段的最后一句,Wirth 写道 (1):

我们对面向对象编程范式的简要介绍到此结束。我们意识到几乎不需要向 Oberon 添加任何语言功能来支持它。除了已经存在的记录和过程类型的设施之外,只有类型扩展的概念是必要和关键的。它允许构建类型的层次结构并构建非同质的数据结构。由于放弃了严格静态类型的规则,动态类型测试的引入变得必要。类型保护的进一步设施仅仅是一种方便。

在 PIO 第 59 页,第 23.2 节之前最后一段的前三句话,他写道 (2):

简单的指示符 p.radius 是不可接受的,因为 p 是 Figure 类型,它没有场半径。使用类型保护,程序员可以确定在这种情况下 p 也是 Circle 类型,在这种情况下,字段半径确实适用。而 p 是基本类型Figure,p(Circle) 是 Circle 类型。

一方面,我将 #2 解释为,为了能够处理不在指示符类型声明中的字段,类型保护是绝对必要的。如果不是类型保护,寻址这样的字段应该会导致编译时错误。

另一方面,如果类型保护只是如#1 所建议的那样方便,那么它也可以被省略。它的功能只是断言的功能,因此编译器可以允许对不在指示符类型声明中的字段进行寻址。

由于后者不是类型安全的,如果 Wirth 是这样打算的,我会感到惊讶。

因此,我倾向于完全无视#1并实施#2。

在我通过电子邮件打扰 Wirth 之前,如果 Oberon 的从业者(和编译器实现者)可以分享在他们各自的 Oberon 编译器中是如何解释的,我将不胜感激。

提前致谢