问题标签 [rebol3]

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 回答
178 浏览

reflection - 应该如何读写 Rebol 结构化数据文件(不包含代码)?

如果你建立一个块结构,用 MOLD 将其转换为字符串,然后将其写入如下文件:

您可以稍后将其加载回来。但是标题呢?如果一个文件包含代码,它应该以如下标题开头:

如果您只是写出数据并将其读回,您是否希望有一个rebol []标题,并使用您想要添加的任何属性对其进行扩展?您是否应该myformat []使用自己的属性提出自己的标题概念?

此外,鉴于 LOAD 确实绑定,将它用于数据是否有意义或是否有不同的操作?

0 投票
2 回答
194 浏览

rebol - 如何从二进制(图像)中删除所有“黑色像素”?

我正在寻找性能最好的代码,它会从二进制文件中删除所有黑色像素 = #{000000}。代码示例:

Trim 的执行速度非常快,但不能按预期工作,因为它会从二进制文件中删除所有零字节 #{00}。

从二进制文件中删除所有“黑色像素”=三个零字节=#{000000}的最快代码是什么?有什么进一步的建议吗?可能使用 parse 性能更好?

0 投票
4 回答
3437 浏览

asynchronous - 同步读/写端口时避免递归?

Rebol 3 中的所有端口操作都是异步的。我能找到进行同步通信的唯一方法是调用wait.

但是在这种情况下调用 wait 的问题是它会检查所有打开端口的事件(即使它们不在传递给等待的端口块中)。然后他们调用他们的响应事件处理程序,但可以在其中一个事件处理程序中完成读/写。这可能会导致递归调用“等待”。

我该如何解决这个问题?

0 投票
1 回答
212 浏览

parsing - 您如何从二进制文件中解析 4 位块?

如果可能的话,我试图了解如何解析每 4 位的二进制文件。

例如:我有 2 字节的代码需要解析以确定使用哪条指令

#{1NNN}其中前 4 位表示哪条指令,NNN 表示内存位置(即#{1033}跳转到内存地址#{0033}

使用完整字节似乎很容易做到这一点,但使用半字节则不然:

因为#{1}无效binary!

到目前为止,我已经使用了巨大的 switch 语句:#{1033} AND #{F000} = #{1000}为了处理这些,但想知道一个更成熟的 reboler 可能会如何做到这一点。

0 投票
1 回答
229 浏览

database - Rebol 的 PostgreSQL 驱动程序?

我正在考虑使用 Rebol3 和 PostgreSQL 做一些工作,并尝试规划我的方法。看起来我有以下选择:

  1. ODBC 访问。

  2. 自己写驱动

  3. 也许有一个现有的可以工作。

ODBC 访问看起来是最简单的方法,但是本地 PostgreSQL 驱动程序提供了一些我更愿意使用的功能,这些功能在那里不可用。这导致我编写自己的驱动程序或尝试使用 2003 年以来的旧纯 rebol 驱动程序。

许多 rebol 2 代码在 rebol 3 上不起作用,所以我认为 PostgreSQL 驱动程序需要一些努力才能工作,并且需要更多努力才能使用 PostgreSQL 的最新协议。我猜这不会太难吧?

我的目标是创建一些框架,以便快速轻松地将存储过程绑定到前端,从而将我其余工作中的一些更好的特性带到 Rebol 应用程序中。人们认为这里最好的方法是什么?

0 投票
1 回答
124 浏览

xml - 替换 XML 文件中的特定值

XML 文件中有一个片段,如下所示:

我想用另一个数字替换所有数字 90,例如 100。使用replace/all会破坏 190 和 901 等数字。rejoin replace/all parse str "<>," "91" "147"将消除<>,. 我怎样才能做到这一点?

0 投票
1 回答
284 浏览

svg - 使用 GOB 的 Rebol 3 文本渲染问题

我试图在较低级别更好地理解 Rebol 3 图形(即不使用 R3-GUI)。我在绘制 gob 中呈现文本时遇到问题。

这有效:

这不起作用:

关于我做错了什么的任何想法?第二个脚本不应该在功能上等同于第一个吗?

谢谢。

0 投票
2 回答
197 浏览

object - 如何将 IN 与块而不是对象一起使用?

Rebol 中的 IN 函数确定字段是否在对象中:

声称它适用于对象或块。如果我用一个对象尝试它,它可以正常工作:

但是,如果我只是用原始块尝试它,它会返回 NONE:

如果它不支持块,我想我会理解(Rebol2 不支持)。但是在什么情况下它不会返回允许块的 NONE 呢?

冒着将这两个问题合二为一的风险,接受 BLOCK 有什么意义!为word参数?如果你有一组你正在寻找的单词,我认为它会占用一个块,但它似乎只是返回块:

并且冒着提出这三个问题的进一步风险,拿一个PAREN有什么意义!对于字有?

0 投票
2 回答
197 浏览

http - 如何在 Rebol3 中获取 HTTP 响应标头?

Rebol 中的readandwrite命令,当传递一个 URL 时!参数,可以为您提供二进制响应或错误。因此,在执行 GET 或 POST 的“一次性”样式中,无处可获取响应标头。

在这篇关于如何在 Rebol2 中执行此操作的帖子中,它建议您必须打开一个端口!并从端口的本地/标题字段中获取它:

Rebol - HTTP 响应标头

例如,这适用于 Rebol2

但是在 Rebol3 中,当我打开一个端口并尝试这个时,端口的 locals 字段为空。如何在 Rebol3 中实现相同的行为?

0 投票
2 回答
136 浏览

unicode - 比较 Rebol 3 中的角色

我正在尝试比较字符以查看它们是否匹配。我不知道为什么它不起作用。我期待true输出,但我错了。