Rebol 编程/内部
外观
< Rebol 编程
系统对象是一个非常大的对象,包含 Rebol 中的大部分中间层代码,即 VID、网络协议和有关您正在运行的 Rebol 产品的系统信息。
原生函数是硬编码到 Rebol 内核中的函数。它们可以被认为是低级函数,旨在提高速度。存在大量的原生函数。
您可以在控制台中像这样显示一个原生函数
>> source insert insert: native [ {Inserts a value into a series and returns the series after the insert.} series [series! port! bitset!] "Series at point to insert" value [any-type!] "The value to insert" /part "Limits to a given length or position." range [number! series! port! pair!] /only "Inserts a series as a series." /dup "Duplicates the insert a specified number of times." count [number! pair!] ]
由于函数已编译到 Rebol 解释器内核中,因此无法查看源代码。
中间层函数是在原生函数或其他中间层函数之上构建的函数。这意味着您可以更改它们或在现有函数之上构建更多函数。Rebol 在其所有产品中都内置了许多中间层函数。
它们可以被认为是更高级别的函数,旨在为编写 Rebol 程序提供易用性。Rebol 中的互联网协议,例如 HTTP 或 POP3,都是作为中间层函数构建的。
在设计自己的程序时,您可以构建自己的函数,这些函数与现有的中间层函数融为一体,例如,如果您希望使用新的互联网协议扩展 Rebol。
中间层函数还很特别,因为您可以在控制台中像这样查看它们的源代码
>> source append append: func [ {Appends a value to the tail of a series and returns the series head.} series [series! port!] value /only "Appends a block value as a block" ] [ head either only [ insert/only tail series :value ] [ insert tail series :value ] ]