Differences from REBOL - Geomol/World GitHub Wiki

##append

Returns the current position of the series. In REBOL, the head is returned.

##bind

In World, blocks and functions are bound to contexts. In REBOL, words are bound.

##comment

In World, comment and its argument is treated, as if they were not there in the source. So it's possible to have comments at the end of functions and still have the function return a value.

##context!

Objects are called contexts in World.

##copy

Copying is deep by default in World. Use copy/shallow to get the default behaviour in REBOL.

##decimal!

Decimals are called reals in World.

##empty?

Checks the whole series from head, if it's empty.

##insert

Returns the current position of the series. In REBOL, the position after the insert is returned.

##make

Always take two arguments.

##object!

Objects are called contexts in World.

##query

Returns a context, like query does in R3. Query works differently in R2.

##real!

Decimals are called reals in World.

##set

Does not have the /any refinement, as any value can be set by default, also of type unset! And set sets a word at the parent context in World, where it's the local context in REBOL. Use set/local to do this in World.

##shift

Default is shifting left for increased values, while in REBOL default is shifting right for decreased values.

##switch

In World, datatypes are equal to words with the default datatype spelling.

w> equal? integer! 'integer!
== true

This makes it possible to have SWITCH statements like:

w> switch type? 1 [integer! [print "it's an integer!"]]
it's an integer!

In Rebol, you would need to either REDUCE the block or use TYPE?/WORD.

KWATZ!

World can load anything, enabling block parsing of any dataset.