问题标签 [gforth]

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 投票
1 回答
197 浏览

io - 如何将输入保存到文件中?

我使用在 linux 机器上运行的 gforth。

对于我的一个迷你应用程序,我想注册来自几个不同用户输入的格式化文本输出。

这是我使用的 INPUT$:

我认为这是正确的。我是这样测试的:

我的文件定义:

最终目标是将非常小的文件构建为:

其中每个数据都是用户输入 ( asked 3times to insert text & a second wave of 3 inputs)

我没有找到有关如何使用文本输入来构建文件的文档。

如何调用我的堆栈数据以将它们复制到文本文件格式?(使用 type 只会将文本回显到我的终端

0 投票
1 回答
200 浏览

forth - 在 Gforth 中创建新字典条目 + 其他操作的语法糖

我是 Forth 新手,正在尝试开发一些(伪有用的)玩具来学习语言。我想精简以下操作:

通过以下(更紧凑的)指令

或者,换句话说:

  • "->" 解析以下两个名字
  • 为第一个名称创建一个字典条目“车辆”,用于类似 2 变量的结构,如果它不存在,将为其分配一个字符串
  • 对于第二个名称,创建另一个条目“cars<”(注意 <),如果它不存在,也是一个 2 变量
  • 然后将字符串“cars”添加(而不是替换)到变量车辆
  • 并将字符串“vehicles”添加到变量 cars<

我做了一个黑客攻击,使用字符串操作和评估来获得这种行为......

我认为存在另一种更直接、更优雅的方式,但这是我目前能做的最好的方式。有什么建议么?

0 投票
1 回答
307 浏览

networking - 如何从 Gforth 的网站读取原始代码?

我想要一个词

其中“add n”是站点名称缓冲区,“buff max”是应该读取 ASCII 文本的缓冲区,“n”是读取的字节数,flag如果操作成功则为真。

这在 Linux、Android 或 Windows 的 Gforth 中是否可行?

0 投票
1 回答
454 浏览

hex - 使用 Forth 解码以十六进制编码的消息

我试图在 Forth 中转换以十六进制编码的消息。下面三个字就出来了。它可以工作,但看起来很丑陋,而且不必要地复杂。

此外,这不是一个真正的解决方案,因为我希望将结果存储在另一个字符串中以进行进一步操作(而不是像现在这样在屏幕上键入),但我不知道如何添加一个数字(代表一个字符) 到一个地址...

那么,即使是很长的消息,您认为必须如何做到这一点?什么是最好的方法?

0 投票
4 回答
1579 浏览

forth - GNU FORTH 有编辑器吗?

开始 FORTH的第 3 章说,

现在您已经创建了一个“当前”块,您可以通过简单地输入单词来列出它L。与 不同LISTL不希望按块号进行;相反,它列出了当前块。

当我跑步时180 LIST,我得到

但是当我运行时L,我得到一个错误

我究竟做错了什么?

0 投票
1 回答
450 浏览

io - FORTH 包括与负载?

INCLUDE文件 IO 很明显。但我很困惑它是如何与LOAD. INCLUDE没有 a怎么办LOAD?从书中,

  • INCLUDE xxx ( -- )

    加载文本文件 xxx(编译或执行)。

  • LOAD ( n -- )

    加载磁盘块(编译或执行)。

0 投票
2 回答
642 浏览

io - FORTH 写入“第四个磁盘”

你有一个单词在第四个被调用USE,它将创建一个文件。

  • USE xxx ( -- )

    将 OS 文本文件 xxx 指定为“Forth 磁盘”。

但是,尚不清楚如何从交互式会话中写入该FORTH 磁盘。有诸如FLUSHand之类的动词,UPDATE但它们都没有看到做任何事情。我正在使用 gforth。我正在会话中创建单词并使用它们。我不明白 FORTH 磁盘在这种情况下是如何工作的。听起来像 R's save.image(),除了我无法保存任何东西。您能否提供一系列命令,导致将某些内容写入 的参数USE

0 投票
3 回答
620 浏览

if-statement - 使用 FORTH 的 IF 语句会产生“解释只编译的单词”

我正在阅读开始:4。决定,决定...... 我可以跑42 42 = .

可以预见的-1是,我得到了两个人的赞美true但是,如果我将 a 压入42堆栈,然后运行

我希望foobar被输出,但事实并非如此。相反,我得到

这里发生了什么?

0 投票
2 回答
168 浏览

bit-shift - FORTH 为什么负的 LSHIFT 会这样表现?

为了娱乐,我做了

我可以在这里看到本机类型与有意义的类型是互补的,因为 (true is -1)。然而这让我大吃一惊。

这里发生了什么?

0 投票
1 回答
102 浏览

loops - 在 Gforth 中执行无限循环时遇到问题

表示如下输入的正确样式是什么,例如 Gforth 中的输入?

以我目前对网上资源的理解,应该是:

但是,当我尝试用 Gforth 解释这一点时,我得到一个错误: