如何在数组中指定第8个命名空间?

时间:2016-05-21 05:51:55

标签: forth 8th

8th使用名称空间而不是词汇表。每个命名空间都有自己的整数表示。

ok> ns:a . cr ns:n . cr
4
2

因此,2表示数字命名空间,4表示数组。

我想构建一个包含命名空间的数组,然后我可以将它放在TOS(堆栈顶部)。

但是,如果我只写这个

ok> [ ns:a , ns:n ]
Exception: invalid JSON array: at line 1 char 3 in ....: cr (G:;;; +000004c2)
Exception: can't find: :a: at line 1 char 6 in (null): cr (G:??? +00000029)
Exception: can't find: ,: at line 1 char 8 in (null): cr (G:??? +00000029)
Exception: can't find: ]: at line 1 char 15 in (null): n (G:??? +00000029)

2 个答案:

答案 0 :(得分:5)

我是第8位的开发人员。 '的解决方案ns:并不是你想要的,因为它会将单词放在数组中,而不是单词会返回的值。

您可以使用反引号来完成您正在寻找的内容: [`ns:a`]

反引号将文字提供给下一个反引号 eval ,并将值(无论它是什么)放入您正在创建的JSON中(它不仅限于JSON) ,它是一般建筑。)

答案 1 :(得分:2)

您可以将函数地址存储在数组

{% if projects.id != step.id %}
    {% for item in projects %}
        <div class="smallblog" style="background-image: url({{ item.img.url }});">
            <h3>{{ item.title }}</h3>
            <p>{{ item.text|safe }}</p>
            <a href="/projects/{{ item.slug }}">Подробнее</a>
        </div>
    {% endfor %}
{% elif projects.id == step.id %}
    {% for obj in step %}
        <div  class="bigblog" style="background-image: url({{ obj.img.url }});">
            <h3>{{ obj.title }}</h3>
            <p>{{ obj.text|safe }}</p>
            <a href="/projects/{{ obj.slug }}">Подробнее</a>
        </div>
    {% endfor %}
{% endif %}

并通过获取数组值并执行它来访问值

[ ' ns:n , ' ns:a ]

您也可以使用匿名函数

0 a:@ w:exec . cr
2
ok>