Почему слово red является булевой переменной?

red>> red
== true
red>> type? red
== logic!

Просто интересно узнать почему red логическая переменная?

(возможно, не связанный) Примечание: rebol в REBOL 2.7 консоль имеет тип object!,

2 ответа

Решение

Это определено в "Red base environment definitions" подать как

Red: true ;-- ultimate Truth ;-) (pre-defines Red word)

https://github.com/red/red/blob/9c355efa76ac1b5c17a8cbf359c5d7ab05a6a013/environment/scalars.red#L13

Этот файл содержит другие начальные определения среды, такие как:

escape:      #"^["
slash:       #"/"
sp: space:   #" "
...

Как отмечает @kealist в комментарии ниже, это служит полезной цели:

Это останавливает Red [] Заголовок в скриптах от возникновения ошибки.

В Реболе rebol слово связано с system объект, поэтому я ожидаю, что красный будет следовать аналогичному подходу.

Это больше не тот случай:

red>> red
== 255.0.0

red>> Red
== 255.0.0
Другие вопросы по тегам