[00:30:25] <ada_ru> (I_vlxy_I) Еее! Дожевало москву!
[info] Preprocessing : 13407.8 seconds
[00:44:35] <ada_ru> (I_vlxy_I) 4 часа и я твоя!
[04:02:31] <ada_ru> (I_vlxy_I) Шуточки с башорга:
>Можно вызвать демона Ада.
Разве на Аде можно написать нормального демона?
[04:02:37] <ada_ru> (I_vlxy_I) Помнят про Алу!
[12:00:02] <ada_ru> (nitrocerber) Там проскакивают иногда, да. Но в основном некротические
[13:16:53] <ada_ru> (I_vlxy_I) В телеге появилась возможность еще мощнее дискриминировать юзеров джаббера и ирки
[13:17:03] <ada_ru> (I_vlxy_I) Теперь в телеге можно создавать опросы без всяких ботов.
[13:49:35] <ada_ru> (nitrocerber) Интересно, синхронизационный бот от этого умрёт?)
[13:50:01] <ada_ru> (I_vlxy_I) он мессаги то редактировать не умеет... хотя, кажется, xmpp это позволяет. иногда
[13:50:29] <ada_ru> (I_vlxy_I) пережить то пул он должен 😊
[13:50:31] <ada_ru> (I_vlxy_I) по идее
[13:50:42] <ada_ru> (Максим) Ы, веб интерфейс это не поддержует
[13:51:26] <ada_ru> (Максим) > The message is not supported on your version of Telegram Web. Update the app to view: web.telegram.org.
[13:51:56] <ada_ru> (I_vlxy_I) ну, у нас вебня вообще не работает, ибо заблокированна. поэтому и проблемы как бы нет
[14:20:01] <ada_ru> (nitrocerber) О, и правда, это по ходу единственное, что им удалось заблочить)
[14:20:41] <ada_ru> (Максим) Скоро купят оборудование для анализа пакетов и капец вам!
[14:44:48] <ada_ru> (nitrocerber) Меньше про кресты с тупоскриптом читать стану. Ток на пользу пойдёт
[14:52:21] <ada_ru> (I_vlxy_I) отвечает (nitrocerber) на <Меньше про кресты с …>
поставишь на тупскрипте крест? 😊
[14:52:26] <ada_ru> (I_vlxy_I) тупокресты...
[14:53:35] <ada_ru> (nitrocerber) Вот он, язык будущего. Кровавый антихрист программирования
[14:54:09] <ada_ru> (I_vlxy_I) Христы побеждают всякое адское отродье!
[14:54:47] <ada_ru> (nitrocerber) Ничо, скоро мы нанесём ответный удар..)
[14:58:21] <ada_ru> (I_vlxy_I) кстати, посмотрел список новшеств в Ада-2020. Нормально там. Работа идёт.
Может на хабр забацать что-нибудь вот в таком духе? https://habr.com/company/yandex/blog/430406/
[14:59:06] <ada_ru> (I_vlxy_I) вообще, встречи РГ9 проходят очно? Чо, когда это бывает? Отчетики бывают на эту тему?
[15:17:02] <ada_ru> (I_vlxy_I) http://www.ada-auth.org/ai-files/minutes/min-1810.html
[15:17:43] <ada_ru> (I_vlxy_I) http://www.ada-auth.org/arg-minutes.html
[15:17:45] <ada_ru> (I_vlxy_I) Во
[15:19:09] <ada_ru> (I_vlxy_I) как-то прям не много народу там.
[15:21:58] <ada_ru> (I_vlxy_I) Организация плюсатого комитета:
https://isocpp.org/files/img/wg21-structure.png
[15:22:17] <ada_ru> (I_vlxy_I) точнее рабочей группы
[15:24:01] <ada_ru> (Максим) я на хабр не умею :(
[15:24:33] <ada_ru> (I_vlxy_I) я умею
[15:25:12] <ada_ru> (Максим) я могу попробовать обновить http://www.ada-ru.org/ada-202x
[15:28:22] <ada_ru> (I_vlxy_I) кстати, или у меня руки кривые, или действительно с главной стайта ada-ru.org не так то просто добраться до этой странички?
[15:29:22] <ada_ru> (Максим) да, действительно. хз как сжелать
[15:30:13] <ada_ru> (I_vlxy_I) я просто специально её искал и не нашел.
[15:30:30] <ada_ru> (Максим) 😕
[15:31:16] <ada_ru> (Максим) я её запихнул в "Документация/статьи"
[15:32:49] <ada_ru> (I_vlxy_I) картинка https://www.ada-ru.org/files/bot/x1.jpg
[15:32:51] <ada_ru> (I_vlxy_I) Где она там?
[15:33:20] <ada_ru> (I_vlxy_I) картинка https://www.ada-ru.org/files/bot/x2.jpg
[15:33:49] <ada_ru> (Максим) нету! 😕
[15:35:31] <ada_ru> (I_vlxy_I) я вообще ожидал найти ссыль на эту статейку на главной, среди новостей 😊
[15:36:02] <ada_ru> (I_vlxy_I) или даже где-то рядом с 10тью причинами выучить Аду
[15:39:21] <ada_ru> (I_vlxy_I) "Tucker says that returning anonymous functions would be a substantial implementation burden. It seems like too much at this point.
Gary says that he doesn't see a compelling need to add this feature. Tucker says that every language that he knows of has added this recently. He adds that not all have added them to allow return them.
Ed says that this is just an invitation to say that Ada is just another incomplete language. Tucker disagrees."
[15:39:57] <ada_ru> (I_vlxy_I) Холиворчик в комитете!
[15:40:16] <ada_ru> (I_vlxy_I) Давайте добавим в Аду анонимные функции просто потому, что.. ну, все так делают!
[15:40:26] <ada_ru> (I_vlxy_I) Во всех языках!
[16:03:05] <ada_ru> (Максим) Хотят сделать Big numbers, не хотят делать их теговыми. Экономят на указателе на таблицу виртуальных функций 😂
[16:03:53] <ada_ru> (I_vlxy_I) Дык, правильно делают.
[16:04:22] <ada_ru> (I_vlxy_I) 5 старушек уже рубль! в плюсах тоже никто не стал бы из такого делать структуру с виртуальными функциями.
[16:04:42] <ada_ru> (I_vlxy_I) ибо тормозить же будет. и будет жрать память.
[16:04:55] <ada_ru> (Максим) Но в аде точечная нотация пашет только с теговыми типами.
[16:05:41] <ada_ru> (I_vlxy_I) семантика важнее синтаксиса. ради просто тупо удобства точечной нотации добавлять тормоза? очень странная идея.
[16:05:48] <ada_ru> (I_vlxy_I) уж лучше тогда точечную нотацию расширить на уровне языка.
[16:05:58] <ada_ru> (I_vlxy_I) алсо, нафига числам точечная нотация то?
[16:06:54] <ada_ru> (Максим) ну не знаю, всё равно же будет указатель? ведь размер заранее не известен...
[16:08:33] <ada_ru> (I_vlxy_I) я хз как это будут реализовывать, но в любом случае вызов виртуальных функцих и +8 байт на каждую чиселку это дофига тормозно.
[16:09:54] <ada_ru> (I_vlxy_I) скорее всего там сделают какую-нибудь small object optimization. То есть пока чиселка достаточно мелкая, скажем влазит в 64 бита, то оно хранится прямо там, по месту, без указателей. А как перестает помещаться, вот тогда эти 64бита превращаются в указатель который указывает на актуальное хранилище с чиселкой.
[16:12:05] <ada_ru> (Максим) Даже не знаю, может ли понадобиться много big numbers. Ну вот в компиляторе их на каждое статическое выражение, допустим. Мне кажется это не много.
[16:13:16] <ada_ru> (I_vlxy_I) кому-нибудь точно захочется массив. кто-то будет вообще по дефолту ими пользоваться.
еще раз - синтаксическая красота в ущерб семантики и производительности, это очень странно.
плюс от чисел мне хочется арифметических операций, зачем тут точечная нотация?
[16:13:35] <ada_ru> (I_vlxy_I) кстати, над введением чего-то такого и в плюсах работают
[16:14:35] <ada_ru> (Максим) ну там X.To_String на пример
[16:15:44] <ada_ru> (I_vlxy_I) ну, с моей т.з. To_String(X) ничем не хуже
[16:16:06] <ada_ru> (I_vlxy_I) более того, мир потихоньку уходит от точечной нотации 😊 ООП больше не модно.
[16:16:54] <ada_ru> (Максим) ну вот, а я только привык 😄
[16:17:19] <ada_ru> (I_vlxy_I) поэтому в плюсах раньше можно было итератор на начало скажем, вектора, получить только как myvector.begin() , а теперь (с с++11) можно и как begin(myvector)
[16:17:49] <ada_ru> (I_vlxy_I) ну и это развязывает руки в том плане, что это может быть не только вектор, но и какой-нибудь сишный массив к которому точечку не прилепишь
[16:18:06] <ada_ru> (I_vlxy_I) а обернуть (единообразно) в итераторы всё равно теперь можно
[16:20:54] <ada_ru> (I_vlxy_I) Забавные и разносторонние подгруппы в WG21 (рабочая группа по стандартизации с++) имеются. Например:
SG14, Game Development & Low Latency: Michael Wong (Codeplay). Topics of interest to game developers and (other) low-latency programming requirements.
[16:24:13] <ada_ru> (I_vlxy_I) Кажется число человеков в WG21 становится все больше: https://isocpp.org/files/img/wg21-1990-2017.png
[16:26:35] <ada_ru> (I_vlxy_I) в плюсы хотят добавить и фиксированную точку и big numbers и рациональные дроби.
[16:26:50] <ada_ru> (I_vlxy_I) но не в с++20, а потом.
[16:27:03] <ada_ru> (I_vlxy_I) на уровне либы конечно. не вшитые в язык примитивы.
[16:27:26] <ada_ru> (Максим) круто! А в Аде похоже появятся квадратные скобки для массивов:
X : My_Set := [1, 2, 3];
[16:27:48] <ada_ru> (I_vlxy_I) А это точно массив, а не множество какое?
[16:28:20] <ada_ru> (Максим) угу
[16:29:48] <ada_ru> (I_vlxy_I) а раньше литералов для массивов не было? вроде ж были, не?
[16:30:20] <ada_ru> (nitrocerber) Аггрегаты были
[16:30:30] <ada_ru> (Максим) конечно есть, агрегаты массивов. Они хотят сделать агрегаты для контейнеров
[16:30:42] <ada_ru> (Максим) http://www.ada-auth.org/cgi-bin/cvsweb.cgi/ai12s/ai12-0212-1.txt?rev=1.17
[16:30:49] <ada_ru> (I_vlxy_I) аааа.. это ж прям как в c++11!
[16:31:04] <ada_ru> (Максим) Плагиат!
[16:31:08] <ada_ru> (I_vlxy_I) Но в плюсах постарались чтобы синтаксис был одинаковый и для сишных массивов и для контейнеров. Единообразие.
[16:31:44] <ada_ru> (I_vlxy_I) то есть сделали чтобы можно было писать std::vector<int> a = {1,2,3,4,5};
[16:32:29] <ada_ru> (Максим) Теперь Ада ближе к JS чем С++ 😄
[16:32:55] <ada_ru> (I_vlxy_I) но поскольку штука сложная в итоге оказалась (то есть вот этот вот вызов конструктора через фигурные скобки), то немного в стандарте накосячили. Потом в С++14 пофиксили, а в С++17 пофиксили окончательно все проблемы.
[16:35:04] <ada_ru> (I_vlxy_I) V : My_Set := [for A of X => A,
for A of X => -A];
Ухты! Это ж практически list comprehension! Из какого-нибудь хаскеля или питоняки.
[16:35:10] <ada_ru> (I_vlxy_I) Плюсы, кажется, так не умеют.
[16:36:00] <ada_ru> (Максим) Я уже предвкушаю, как буду переводить comprehension на русский 😕
[16:36:31] <ada_ru> (I_vlxy_I) да, его перевести адекватно, кажется, так никто и не смог. я сам страдал когда с хаскелем возился 😊
[16:37:10] <ada_ru> (I_vlxy_I) Вика говорит, что "Списковое включение"
[16:37:17] <ada_ru> (I_vlxy_I) что, кажется, полная фигня.
[16:37:39] <ada_ru> (I_vlxy_I) Erfassung der Liste 😃
[16:38:04] <ada_ru> (Максим) да, почти как "запузыренный список" 😄
[16:38:11] <ada_ru> (I_vlxy_I) https://ru.wikipedia.org/wiki/%D0%A1%D0%BF%D0%B8%D1%81%D0%BA%D0%BE%D0%B2%D0%BE%D0%B5_%D0%B2%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D0%B5
[16:44:03] <ada_ru> (I_vlxy_I) в плюсах обычно до последнего воюют чтобы такие фичи суметь сделать на уровне либы. то есть в первую очередь стараются допилить метафичи языка так, чтобы это было реализуемо на уровне стандартной либы.
если не получается, или цена оказывается слишком велика, то тогда снова смотрят, настолько ли нельза без этой фичи жить, что нужно её вкорячивать аж в сам язык. Если да - то пытаются вкорячить, если нет, то нафиг.
[16:44:10] <ada_ru> (I_vlxy_I) И так язык не маленький 😊
[16:46:51] <ada_ru> (I_vlxy_I) кстати, кажется то, что примут для плюсов в качестве модулей, в плане тех деталей реализации, что будут прописаны в стандарте, будет весьма похоже на то, как реализует пакеты gnat — в плане .ali файликов, через которые, как я понимаю, пакеты и контачат между собою в gnat'e.
[16:49:36] <ada_ru> (I_vlxy_I) кажется, в итоге, это может, потенциально, пойти gnat'у на пользу.
[16:52:14] <ada_ru> (nitrocerber) отвечает (I_vlxy_I) на < V : My_Set := [fo…>
Эт чо в аде такой писос будет?
[16:52:26] <ada_ru> (I_vlxy_I) Угу
[16:52:41] <ada_ru> (nitrocerber) Как же хорошо отцу мафии, что асис не стали развивать для 20 ревизии)
[16:52:55] <ada_ru> (nitrocerber) отвечает (I_vlxy_I) на <Угу>
Fuxk this im out
[16:53:12] <ada_ru> (I_vlxy_I) Make Ada great again!
[16:53:17] <ada_ru> (Максим) точно не будет ASIS-а для 202х?
[16:54:26] <ada_ru> (nitrocerber) Ну ток если твой)
[16:55:02] <ada_ru> (I_vlxy_I) там же вместо асиса вроде питоняка теперь?
[16:55:15] <ada_ru> (nitrocerber) Поглядел я на апи той питоняки
[16:55:16] <ada_ru> (nitrocerber) Адский
[16:55:24] <ada_ru> (nitrocerber) От комментариев воздержусь
[16:55:26] <ada_ru> (I_vlxy_I) Адский питон!
[16:56:31] <ada_ru> (nitrocerber) Адон
[16:56:36] <ada_ru> (nitrocerber) Или питада
[16:56:48] <ada_ru> (I_vlxy_I) даже не знаю, что страшнее звучит...
[16:57:06] <ada_ru> (nitrocerber) Мы там ещё какие-то миксы придумывали, смешно и неприлично получалось. Макс, ты не помнишь?)
[16:57:09] <ada_ru> (I_vlxy_I) питада — как то взрывоопасно звучит
[16:57:14] <ada_ru> (nitrocerber) Я ток расшифровку лсп помню))
[16:57:27] <ada_ru> (t91x0) отвечает (nitrocerber) на <Или питада>
Пистон
[16:58:37] <ada_ru> (Максим) discrete_base_subtype_decl вот типа такой он этот libadalang
[16:59:04] <ada_ru> (Максим) понимай его, как хочешь
[16:59:28] <ada_ru> (I_vlxy_I) вроде ж его делали, чтобы было проще понять и пользовать. не то, что этот старый кучерявый асис..
[16:59:58] <ada_ru> (Максим) ASIS хоть на спецификацию языка похож. а тот похож только на свои внутренние потраха.
[17:00:31] <ada_ru> (nitrocerber) Ну если они ко всему добавят доки...
[17:00:58] <ada_ru> (I_vlxy_I) ну, зато libadalang никак не ограничен стандартом. то есть он может гибко и динамично развиваться.
А ASIS как закрепили в стандарте, так и всё.
[17:01:01] <ada_ru> (nitrocerber) Асис документиповался дольше, чем писАлся
[17:01:26] <ada_ru> (nitrocerber) Особенно гибкое и динамичное развитие нравится QA...))
[17:01:42] <ada_ru> (nitrocerber) Когда вчера билдилось всё, а сегодня поменяли апи
[17:01:44] <ada_ru> (I_vlxy_I) ну, дык! без работы не останутся!
[17:02:02] <ada_ru> (I_vlxy_I) scrum! аджайл!
[17:02:04] <ada_ru> (Максим) отвечает (nitrocerber) на <Ну если они ко всему…>
То получится - "а вот это такая хрень, которую мы не смогли выразить в других терминах"
[17:02:06] <ada_ru> (I_vlxy_I) катии!
[17:02:35] <ada_ru> (nitrocerber) отвечает (Максим) на <То получится - "а во…>
Ну да, от wall of text это не очень отличается
[17:04:15] <ada_ru> (I_vlxy_I) Короче, в Ада2020 куча новых стильных модных фичей! Само оно для хабра!
[17:05:14] <ada_ru> (I_vlxy_I) правда в обсуждениях фичей я не увидел никаких следов упоминания следованию принципам надежности и явности, что в языке изначально заложены были.
Но я не всё читал.
[17:06:34] <ada_ru> (Максим) я только начал.
[17:07:36] <ada_ru> (I_vlxy_I) Я ооочень по диагонали пробежался.
[17:41:23] <ada_ru> (I_vlxy_I) А кто-нибудь видел Адскую реализацию R-tree?
[18:36:06] <ada_ru> (Максим) Eugene В Аде 202х будут аспекты для описания сайд-эфектов подпрограмм, как в SPARK: http://www.ada-auth.org/cgi-bin/cvsweb.cgi/ai12s/ai12-0079-1.txt?rev=1.24
[18:37:48] <ada_ru> (I_vlxy_I) А в плюсах пока (c++20, c++23) нет.. Но над этим работают.
[19:08:49] <ada_ru> (Максим) А потом они напихали эти аспекты в контейнеры
[19:10:05] <ada_ru> (I_vlxy_I) ну, это ж лучше комментов. всегда. ибо комменты совсем не факт что соответствуют коту
[19:10:18] <ada_ru> (I_vlxy_I) а вот то, что компайлер может проверить - гарантированно не устареет
[19:10:40] <ada_ru> (Максим) да коментов и нету там (в спеках стандарта) почти
[19:12:31] <ada_ru> (I_vlxy_I) "Проблема в том, что алгоритм Дейкстры не использует никакой информации о свойствах графа и искомого маршрута и при его работе (распространении т.н. «волны») периметр этой «волны» движется от искомой точки во всех направлениях без какой-либо дискриминации."
Проблема в отсутствии дискриминации! Чертова толерантная Европа!
[19:13:39] <ada_ru> (Максим) нормальное выражение! это вас комплекс 😊
[19:14:17] <ada_ru> (I_vlxy_I) TRIGGERED!!1
[19:16:45] <ada_ru> (t91x0) отвечает (I_vlxy_I) на <"Проблема в том, что…>
Обычно это называют "фронт" волны, а не "периметр". Интересно, это просто дословный перевод или же тут есть особый смысл.
[19:17:18] <ada_ru> (I_vlxy_I) это не переводная статья, так то.
[23:10:52] <geniepro> Максим) Я уже предвкушаю, как буду переводить comprehension на русский 😕
даже хаскеллеры уже переводят list comprehension как питонщики -- "генераторы списков", так что не надо мудрить
[23:12:37] <ada_ru> (I_vlxy_I) а питоняки не путают это с генераторами, которые корутины?
[23:12:47] <ada_ru> (I_vlxy_I) опять неоднозначность же!
[23:13:38] <geniepro> I_vlxy_I: не, у них же тоже есть list comprehension, вот его они генератором списков и называют
[23:13:57] <geniepro> а те которые yeld -- это же итераторы
[23:14:01] <ada_ru> (I_vlxy_I) я знаю, что у них есть
[23:14:06] <ada_ru> (I_vlxy_I) но у них есть и генераторы просто
[23:14:29] <ada_ru> (I_vlxy_I) которые в том числе юзаются для заполнения списков и для бегания по цыклам 🙂
[23:14:42] <ada_ru> (I_vlxy_I) итератерами они свои генераторы не называют
[23:14:55] <ada_ru> (I_vlxy_I) а поскольку в Аде тоже генераторы хотя вкорячить...
[23:30:15] <ada_ru> (I_vlxy_I) *хотят
[23:39:25] <ada_ru> (Максим) Чувак, который хотел генераторы воткнуть свалил из ARG, так что может обойдётся
[23:40:13] <ada_ru> (Eugene) скажите им там, пусть классы типов воткнут уже скорее
[23:40:23] <ada_ru> (Максим) Я обновил статейку по ada-202x и отписал в https://www.ada-ru.org/forum/p4257374765_1.html
[23:40:39] <ada_ru> (I_vlxy_I) но корутины нужны! не для генераторов конечно, а для легковесной конкарренси
[23:41:08] <ada_ru> (Eugene) отвечает (I_vlxy_I) на <но корутины нужны! н…>
чем тебя таски с рандеву не устраивают? о_О
[23:41:18] <ada_ru> (Максим) Eugene Классы типов? Это про что? T'Class?
[23:41:20] <ada_ru> (I_vlxy_I) тяжелые слишком
[23:41:43] <ada_ru> (Eugene) отвечает (Максим) на <Eugene Классы типов?…>
это типа трейтов из Rust,если я правильно понял ихние трейты
[23:41:44] <ada_ru> (I_vlxy_I) нужны либо stackfull либо ваще stackless корутины
[23:43:01] <ada_ru> (username_is_not_avalaible) отвечает (I_vlxy_I) на <я хз как это будут р…>
А что, в Аде методы могут быть только виртуальными?
[23:43:33] <ada_ru> (username_is_not_avalaible) отвечает (I_vlxy_I) на <ну, с моей т.з. To_S…>
Ну вообще-то хуже, потому что засоряет глобальный неймспейс
[23:43:45] <ada_ru> (I_vlxy_I) отвечает (username_is_not_avalaible) на <А что, в Аде методы …>
а чем невиртуальный метод не функция?
[23:43:55] <ada_ru> (I_vlxy_I) отвечает (username_is_not_avalaible) на <Ну вообще-то хуже, п…>
не засоряет. ведь всё по пакетам.
[23:44:11] <ada_ru> (I_vlxy_I) отвечает (I_vlxy_I) на <а чем невиртуальный …>
то есть обычная процедура.
[23:47:05] <ada_ru> (username_is_not_avalaible) отвечает (Максим) на <Eugene Классы типов?…>
Классы типов -- это классы типов: https://en.wikipedia.org/wiki/Type_class
[23:47:41] <ada_ru> (username_is_not_avalaible) отвечает (I_vlxy_I) на <а чем невиртуальный …>
Тем, что он диспетчеризуется
[23:50:14] <ada_ru> (I_vlxy_I) отвечает (username_is_not_avalaible) на <Тем, что он диспетче…>
эмм... вкуда он диспетчиризуется то?
[23:50:36] <ada_ru> (I_vlxy_I) foo.bar() ничем не отличается от bar(&foo)
[23:55:38] <ada_ru> (FROL256) bar( FooType'Class(foo) ); ? :)
[23:56:40] <ada_ru> (Максим) отвечает (username_is_not_avalaible) на <Классы типов -- это …>
чем-то напоминает интерфейсы. нет?
[23:56:45] <ada_ru> (I_vlxy_I) Едрить, я опять забыл что такое class wide этот в Аде.
[23:57:07] <ada_ru> (I_vlxy_I) отвечает (Максим) на <чем-то напоминает ин…>
да, но не оно. из императивного мира оно ближе всего наверно к интерфейсам Го
[23:57:19] <ada_ru> (I_vlxy_I) но всё равно не оно 🙂
[23:57:32] <ada_ru> (I_vlxy_I) или к специализациям шаблонных функций в С++
[23:57:49] <ada_ru> (I_vlxy_I) особенно если еще и с концептами это дело скрестить
[23:59:08] <ada_ru> (Eugene) отвечает (Максим) на <чем-то напоминает ин…>
интерфейсы — жалкое подобие классов типов
пока ближе всего к ним из того что я видел — трейты Раста