Информация об изменениях

Сообщение Re[19]: понимание ООП Алана Кея от 30.03.2023 16:54

Изменено 30.03.2023 17:02 korvin_

Re[19]: понимание ООП Алана Кея
Здравствуйте, vdimas, Вы писали:

V>fist class citizen — это мем.

:wut:

V>Хотя бы расположение бит и их итерпретация.


Так и что в этом неизвестного?

V>Например, far указатель унутре составной, часть бить отвечает за сегмент, часть за смещение сегмента.

V>Простая конкатенация бит адреса не создаёт реальный адрес, поэтому сравнивать произвольные far адреса нельзя.
V>Можно сранивать адреса только из одного сегмента.
V>Или более строго — из одного выделенного по malloc блока.

Вот видишь, тебе это известно, тогда что неизветсно?

V>Ты привёл из вики, т.е. совершил напрасный труд. ))


V>И почему ты споришь со мной?

V>Там коллега сказал, что Expression<T> — это первоклассная сущность.
V>Ну вот и спроси у него, чем его Expression<T> первокласснее моих неких MyExpression<T>?

Ничем, это булево свойство.

V>Косвенность не волнует только в иммутабельных системах типов, а иначе волнует, конечно.


Не для определения «first-class citizen»

V>Это какая-то нестандартная Схема? ))


Стандартная R6RS.

V>Любые примитивы из стандарта, навроде let, могут быть реализованы как встроенные.


И что?

V>Показанная тобой реализация предназначена для динамического исполнения машинкой, ес-но.


что? Какое ещё динамическое исполнение, если фаза expand происходит до компиляци?

V>Поэтому, опять мимо.


Мимо у тебя глаза смотря, судя по всему. Возьми уже macroexpand, да сам посмотри, как и когда оно работает.
Re[19]: понимание ООП Алана Кея
Здравствуйте, vdimas, Вы писали:

V>fist class citizen — это мем.

:wut:

V>Хотя бы расположение бит и их итерпретация.


Так и что в этом неизвестного?

V>Например, far указатель унутре составной, часть бить отвечает за сегмент, часть за смещение сегмента.

V>Простая конкатенация бит адреса не создаёт реальный адрес, поэтому сравнивать произвольные far адреса нельзя.
V>Можно сранивать адреса только из одного сегмента.
V>Или более строго — из одного выделенного по malloc блока.

Вот видишь, тебе это известно, тогда что неизветсно?

V>Ты привёл из вики, т.е. совершил напрасный труд. ))


V>И почему ты споришь со мной?

V>Там коллега сказал, что Expression<T> — это первоклассная сущность.
V>Ну вот и спроси у него, чем его Expression<T> первокласснее моих неких MyExpression<T>?

Ничем, это булево свойство.

V>Косвенность не волнует только в иммутабельных системах типов, а иначе волнует, конечно.


Не для определения «first-class citizen»

V>Это какая-то нестандартная Схема? ))


Стандартная R6RS.

V>Любые примитивы из стандарта, навроде let, могут быть реализованы как встроенные.


И что?

V>Показанная тобой реализация предназначена для динамического исполнения машинкой, ес-но.


что? Какое ещё динамическое исполнение, если фаза expand происходит до компиляци?

V>Поэтому, опять мимо.


Мимо у тебя глаза смотря, судя по всему. Возьми уже macroexpand, да сам посмотри, как и когда оно работает.

Или хотя бы стандарт почитай:

Macro uses (see section 9.2) are expanded into core formsat the start of evaluation (before compilation or interpretation) by a syntax expander.

http://www.r6rs.org/final/html/r6rs/r6rs-Z-H-13.html#node_chap_10