Size: a a a

cxx.Дискуссионная

2020 February 20

TS

Till Schneider in cxx.Дискуссионная
Т-34 85
@h4cktill продолжай
И никаким боком раст не подходит под определение «скриптухи» (ни по достоинствам, ни по недостаткам).
Подходит. Всем.
источник

i

ivan in cxx.Дискуссионная
Когда вернул ссылку из функции, объявленную во внешнем скоупе, и сказал что это лучше плюсов
источник

Т8

Т-34 85 in cxx.Дискуссионная
Till Schneider
И никаким боком раст не подходит под определение «скриптухи» (ни по достоинствам, ни по недостаткам).
Подходит. Всем.
источник

i

ivan in cxx.Дискуссионная
Till Schneider
И никаким боком раст не подходит под определение «скриптухи» (ни по достоинствам, ни по недостаткам).
Подходит. Всем.
Я будто описание DXL прочитал, но там вроде указатели только есть, но мусор КАК-ТО собирается
источник

AB

Artöm Bakri Al-Sarmini in cxx.Дискуссионная
Till Schneider
Но это неважно, потому что даже сейчас эта скриптуха с ГЦ. Семантически там везде ГЦ. Просто адепты этой скриптухи не особо компетентны в вопросе, но я им помогу.


Зачем вообще нужен ГЦ? Ой, основная его задача — перекрёстные ссылки. Без этого достаточно и рефкаунта. Но постойте, но ведь раст-скриптуха не может в перекрёстные ссылки. Ой, а почему же?


Таким образом, данное ограничение в скриптухе просто позволяет выкинуть ГЦ и заменить его на рефкаунт. Но ведь пропаганда говорит адептам, что там нет ГЦ? На самом деле она врёт. Там есть ГЦ на rc, но с некоторыми фокусами.


Фокус заключается в следующем. Зачем вообще нужен счётчик? А счётчик нужен для того, что-бы была возможность существования двух ссылок. Но подождите, но ведь с этой скриптухи две ссылки существовать не могут.


Правильно, в этом и заключается фокус. Если ссылка только одна, то счётчик ненужен. Таким образом его можно заменить на, условно, статический счётчик.


Схема простая как топор. Данная скриптуха говорит своим адептам "страдайте за веру" и они страдают, руками проставляя все алиасы. В рамках данной схему любой школьник может написать примитивный статический анализатор.


Схема там простая как топор. В этой примитивной скриптухи есть только ссылки и агрегаты. Со ссылками проблем особо нет. Есть проблемы с агрегатами.


Но там работает следующая схема. Скриптуха говорит адептам "руками свяжи поле и объект", таким образом задача сводится к предыдущей. Т.е. агрегат со ссылкой на какой-то объект считается его алиасом.


А ну ещё есть функция. Эта скриптуха слишком примитивна и не может анализировать тела функций, поэтому адепты так руками проставляют алиасы. Таким образом ссылка за тело функции не может выйти. Если адепт захочет — он может вернуть её из функции, но тогда он обязан связать её со входом. Далее скриптуха понимает, что выход — алиас входа.


Соответственно, сам анализ простой как топор. Есть верхний объект — он создаётся. Далее все ссылки — ссылки. Там неважно копируются они или не копируются. Есть ли у них сторедж, либо нет. Это просто ссылки.


Соответственно, если в каком-то из блоков существует более двух ссылок — ссылки перестают быть мутабельными. Таким образом к ним попросту невозможно применить drop.


Далее, в том блоке(скоупе), где объявлен алиас/ссылка и если она одна — то по выходу из скоупа скриптуха вставляет там drop. Всё.


Т.е. это такая вариация rc статическая. Далее всё остальное — это unsafe-хаки. Т.е. рантайм.
Чувствуется слог царя
источник

TS

Till Schneider in cxx.Дискуссионная
ivan
Я будто описание DXL прочитал, но там вроде указатели только есть, но мусор КАК-ТО собирается
Кстати, заметим как адепт уже забыл про всю ту чушь, что он нёс про супер-новшества ввиде статически методов в раст-скриптухе. А далее он где-то услышал про фабричные методы, но он опять сел в лужу.


То, что статические методы используются для фабричных методов никак не отменяет тот факт, что они используются для того, о чём писал я. Понятия не имеют зачем адепт несёт подобную чушь. Потому что "в том числе" не значит "только для".
источник

TS

Till Schneider in cxx.Дискуссионная
Artöm Bakri Al-Sarmini
Чувствуется слог царя
источник

i

ivan in cxx.Дискуссионная
Till Schneider
Кстати, заметим как адепт уже забыл про всю ту чушь, что он нёс про супер-новшества ввиде статически методов в раст-скриптухе. А далее он где-то услышал про фабричные методы, но он опять сел в лужу.


То, что статические методы используются для фабричных методов никак не отменяет тот факт, что они используются для того, о чём писал я. Понятия не имеют зачем адепт несёт подобную чушь. Потому что "в том числе" не значит "только для".
Ну это уже критика метатеорий...так что не очень смешно...
источник

TS

Till Schneider in cxx.Дискуссионная
как убьет, так и будем об этом говорить
источник

i

ivan in cxx.Дискуссионная
ГЦ нет. (Давным-давно был, удалили в 2014-м, ещё до выхода первой стабильной версии Rust.)
источник

Т8

Т-34 85 in cxx.Дискуссионная
Till Schneider
как убьет, так и будем об этом говорить
источник

i

ivan in cxx.Дискуссионная
А кто это?
источник

TS

Till Schneider in cxx.Дискуссионная
ivan
А кто это?
я не знаю
источник

Т8

Т-34 85 in cxx.Дискуссионная
Till Schneider
я не знаю
эм, а куда делись сообщения о [ДАННЫЕ УДАЛЕНЫ]?
источник

i

ivan in cxx.Дискуссионная
Деструктор — это то, что привязано к времени жизни объекта. drop никакого отношения к этому не имеет. Это именно finalize из жавы.

Финалайз? В джаве это есть? Я думал там автоматом вилкой чистится
источник

TS

Till Schneider in cxx.Дискуссионная
Т-34 85
эм, а куда делись сообщения о [ДАННЫЕ УДАЛЕНЫ]?
)))
источник

BB

Bohdan Bessonov in cxx.Дискуссионная
Ееее вечерняя порция раст vs с++
источник

i

ivan in cxx.Дискуссионная
А что там с Crystal?
источник

i

ivan in cxx.Дискуссионная
Он развивается?
источник

Т8

Т-34 85 in cxx.Дискуссионная
Bohdan Bessonov
Ееее вечерняя порция раст vs с++
да нет никакого vs, всё  понятно со старта
источник