问题标签 [red]

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

case-sensitive - 如何写严格大于?(-lesser?, -greater-or-equal?, -lesser-or-equal?)

Rebol 和 Red 将普通equal?函数(简称为 中缀=)视为一种“自然平等”。1 = 1.0因此,即使一个是整数而另一个是浮点数,它也愿意进行比较......并且默认情况下不区分大小写地比较字符串和字符。

strict-equal?函数区分大小写,要求事物具有相同的数据类型,并绑定为==中缀。(还有一个strict-not-equal?函数 as !==。)

但是,其他比较运算符似乎没有严格的变体。如何使用框中的原语实现 astrict-greater?或 astrict-lesser-or-equal?等?

例如,行为将是:

0 投票
3 回答
186 浏览

parsing - Rebol/Red 中关于自修改解析规则的规则是什么?

我正在研究自我修改规则,并想知道语义到底是什么以及它们将如何工作。这是一个相当广泛的问题,但我将使用一个特定的“我将如何做到这一点”将其变成一个更集中的问题。 (^(64) 是小写“d”的十六进制 ascii,所以找不到)

如果我运行它,我会得到(在 Rebol 和 Red 中):

该规则似乎已经更新,并且以相当“看似安全的方式”进行了更新(如果有任何安全之类的东西)。还有更多邪恶的版本:

在 Rebol 和 Red 中,得到:

我有点困惑它是如何不崩溃的。但是假设它以某种方式被防弹,有没有办法让第一个例子工作?

0 投票
2 回答
117 浏览

rebol2 - 为什么红色这个词是一个布尔变量?

只是想知道为什么是red布尔变量?

(也许不相关)旁注:rebol在 REBOL 2.7 中,控制台是object!.

0 投票
3 回答
91 浏览

rebol - Understanding the relationship between print and symbols held in blocks

Scenario 1:

Scenario 2:

I expected scenarios 1 and 2 to have the same behaviour(either error out on evaluation or be treated as a symbol).

I am trying to understand if the following scenario is specific to print or a Red/Rebol concept that I should understand.

I understand that all words in a block are treated as symbols and a function is required to evaluate them(if necessary). So scenario 1 makes sense. But if we extract a word from a block(using first), it remains a symbol?

0 投票
1 回答
148 浏览

rebol - 使用绑定在 Red 中执行网络 I/O

我读到有一些绑定可以用 Red 编程语言执行 GET 和 POST。有人可以给我看一个简单的例子,比如“wget http://www.google.com ”吗?

0 投票
1 回答
129 浏览

rebol - 字面词的类型

我正在阅读Bindology并尝试了这个:

我也期待type? 'x着回来lit-word!。欣赏任何见解。

0 投票
1 回答
89 浏览

elf - 了解与 GCC 相比的 Red/System 编译优化

在阅读Red 站点时,我遇到了一个声明,指出编译一个 hello world Red/System 程序会创建..

“...一个 162 字节的 ELF 二进制文件,而类似的 C 代码将使用 Gcc 生成一个 5-6KB 的二进制文件”

太棒了。有人可以解释/指出使这种优化成为可能的技术吗?

0 投票
1 回答
172 浏览

red - 在 Red 例程中通过引用传递

所以我目前正在将一个下降大小的程序从 Rebol 3 迁移到 Red。所述程序依赖于与 C 库 (clang) 的大型绑定。我已经重写了 Red/System 中的绑定部分,并通过包装例程将该代码与 Red 连接。我一直在使用的当前约定是将需要作为参数并由 C 代码返回的指针和 void 指针转换为红色/系统整数并将它们装箱为红色整数。这是相当容易和方便的。

因为我只能访问原始整数!数据而不是实际的结构,我会怀疑我不能再使用上述方法通过参数将指针传回(因为在传递之前正在复制装箱数据)。

那么,是否有推荐的方法来通过参数将指针传回,也就是我们如何通过例程的引用传递?

0 投票
2 回答
347 浏览

string - How to Convert a Red/Rebol String into a Series

I would like to know if there is a way to convert a string into a series. I'm trying to extract data using parse, and I want to break some of that captured data down into smaller fragments so that I can do IF, CASE or SWITCH statement.

Below is a bit of code.

As I understand, "find" works on a series, which may be the reason why those if statements are not giving the result I was expecting. However the variable "tag" is just a string.

Is there a way to convert a string into a series? Or are there any functions that work on strings to find substrings?

0 投票
2 回答
75 浏览

rebol - 添加到解析方言内的地图

我想创建一个map哈希与 url 关联的位置,以检查某个 url 是否在map. 如果它尚未在 中map,请将其(和 url)添加到其中。

但是单词quarto_hashquarto_url没有转换为它们的值。这可能不是解决问题的最简单方法,所以我会等待您的意见。另一个问题:是否map能够快速解决数千个元素的元素插入和搜索问题,还是有其他更合适的类型?

仅供参考,我正在使用Rebol3,但也包含Red标签,因为我也会Red在不久的将来使用。最好的方法是什么?