Size: a a a

2020 April 01

FS

Flower Surgeon in pro.cxx
Макс Воробьев
в каком языке миксин гуглить? в D есть два варианта и оба не совсем подходят
лисп возможно
источник

D

Danya in pro.cxx
Макс Воробьев
в каком языке миксин гуглить? в D есть два варианта и оба не совсем подходят
Dart
источник

МВ

Макс Воробьев in pro.cxx
по дарту - не похоже. в отличии от миксина в дарте UFCS позволяет подставить первый параметр ф-и так, как будто вызывается метод этого параметра
источник

МВ

Макс Воробьев in pro.cxx
import std.stdio: writeln;
"Hello".writeln(); // аналогично writeln("Hello");
источник

IS

Iskander Saitbatalov in pro.cxx
Макс Воробьев
import std.stdio: writeln;
"Hello".writeln(); // аналогично writeln("Hello");
А это не создает коллизий? Или там какое-то разрешение идет?
источник

D

Danya in pro.cxx
Какие противоречия могут возникнуть для того, чтобы ввести Unified Function Call Syntax?
В принципе наверное может поломаться старый код, если есть метод и свободная функция с одинаковой сигнатурой (кроме первого элемента)
источник

O

Ofee in pro.cxx
источник

O

Ofee in pro.cxx
Danya
Какие противоречия могут возникнуть для того, чтобы ввести Unified Function Call Syntax?
В принципе наверное может поломаться старый код, если есть метод и свободная функция с одинаковой сигнатурой (кроме первого элемента)
Проблемы с обратной совместимостью и ADL
источник

D

Danya in pro.cxx
Есть какие-то шансы, что это выживет?
источник

МВ

Макс Воробьев in pro.cxx
Iskander Saitbatalov
А это не создает коллизий? Или там какое-то разрешение идет?
идет разрешение
источник

AB

Artöm Bakri Al-Sarmini in pro.cxx
Danya
Есть какие-то шансы, что это выживет?
Велики шансы, что это будет обсуждаться десяток-два лет
источник

O

Ofee in pro.cxx
Danya
Есть какие-то шансы, что это выживет?
Не понятно. Вообще, мне казалось, что я находил более новую ревизию документа с кучей примеров и описанными проблемами, но сейчас уже куча разных авторов предложила свои идеи и различные новые (и не очень) грабли
P.S. это, всё же, более старый документ, тут больше подробностей
источник

FS

Flower Surgeon in pro.cxx
Не взлетит.
источник

O

Ofee in pro.cxx
Flower Surgeon
Не взлетит.
Я лишь дал ссылку на плюсовый пропозал, чтобы не обсуждать тему в контексте других языков
источник

FS

Flower Surgeon in pro.cxx
Ofee
Я лишь дал ссылку на плюсовый пропозал, чтобы не обсуждать тему в контексте других языков
Я подозреваю, что миксины надо как-то иначе реализовывать в C++.
источник

O

Ofee in pro.cxx
Flower Surgeon
Я подозреваю, что миксины надо как-то иначе реализовывать в C++.
Возможно, право вызывать функции с помощью такого синтаксиса должно явно разрешаться программистом для своего типа, например, через какой-нибудь трейт. А может, саму функцию помечать специальным образом. Правда, я даже не подозреваю, не сломается ли тут что-нибудь ещё
источник

FS

Flower Surgeon in pro.cxx
какие-нибудь сишные коллбеки в тыкву превратятся, всяко
источник

FS

Flower Surgeon in pro.cxx
сам пропозал точно переписать придётся: в текущем виде он уже никуда не годится
источник

F

Fox in pro.cxx
Ofee
Возможно, право вызывать функции с помощью такого синтаксиса должно явно разрешаться программистом для своего типа, например, через какой-нибудь трейт. А может, саму функцию помечать специальным образом. Правда, я даже не подозреваю, не сломается ли тут что-нибудь ещё
Что-то типа deduction guide добавить для этого
источник

O

Ofee in pro.cxx
Fox
Что-то типа deduction guide добавить для этого
Ну, если мы говорим о том, чтобы делать это автоматически, пропозалы примерно это и предлагают и это ломает совместимость
Если вручную писать, то да, это что-то близкое к тому, что я написал, но я не имею ни малейшего представления, как это должно выглядеть — я даже не знаю, должно ли поведение относиться к функции или к типу, с которым она взаимодействует
источник