[00:00:11] <ada_ru> (Oleg) И кстати посмотрел внимательно на AES - так это же просто :-)
[00:02:00] <ada_ru> (I_vlxy_I) Кстати, а вот Ада - правильно ли я понимаю, что имеет смысл смотреть на репозитории адакоры для того, чтобы брать пример как оформлять проекты и код на Аде?
[00:02:15] <ada_ru> (I_vlxy_I) скажем ada language server - ведь образцовый проект?
[00:02:59] <ada_ru> (Oleg) Ну судя по всему более менее образцовый
[00:03:29] <ada_ru> (I_vlxy_I) гут
[00:04:04] <ada_ru> (I_vlxy_I) кстати. а нарыл вот такую статью: https://habr.com/en/post/439698/
кажется я знаю чем я буду развлекаться в выходные 🙂
[00:06:12] <ada_ru> (Oleg) :-)
[00:06:39] <ada_ru> (Oleg) У меня друзья на движке Unreal что-то желают
[00:06:44] <ada_ru> (Oleg) Делают
[00:07:40] <ada_ru> (I_vlxy_I) юзать готовый движог - скучно!
[00:07:58] <ada_ru> (Oleg) Я и не знал что анреал все ещё жив, последний раз запускал игру дет 10 назад или скорее 20 :-)
[00:08:23] <ada_ru> (I_vlxy_I) дык анрыл енжин - это не тот движог что был 20 лет назад 🙂
[00:08:35] <ada_ru> (I_vlxy_I) на этом двигле неплохой процент игр современных делают
[00:08:44] <ada_ru> (I_vlxy_I) в том числе и ААА игр
[00:08:54] <ada_ru> (I_vlxy_I) и он постоянно развивается
[00:09:00] <ada_ru> (Oleg) О кстати
[00:10:13] <ada_ru> (Oleg) Парни, есть робот погрузчик, ездит , палеты таскает, но немного недоделан, те кто финансировал - потеряли интерес
[00:10:32] <ada_ru> (Oleg) Давайте допилим?
[00:11:04] <ada_ru> (I_vlxy_I) а где он физически существует?
[00:11:46] <ada_ru> (Oleg) картинка https://www.ada-ru.org/files/bot/2019-09-19-x1.jpg
[00:11:47] <ada_ru> (Oleg) Питер
[00:11:54] <ada_ru> (Oleg) Задний - он
[00:12:04] <ada_ru> (Oleg) Передний RoboCV
[00:12:27] <ada_ru> (Oleg) Жалко труд
[00:12:52] <ada_ru> (Oleg) Там ROS ну как и у всех
[00:13:08] <ada_ru> (Oleg) Лидары
[00:14:05] <ada_ru> (I_vlxy_I) я не очень понимаю в какой форме и как тут можно принять участие
[00:14:40] <ada_ru> (I_vlxy_I) кому робот принадлежит? как к нему доступ получить? кто за что отвечает?
[00:14:52] <ada_ru> (Oleg) Ну я попробую узнать , я бы сделал общество с долевым участием и все были бы в доле
[00:15:42] <ada_ru> (Oleg) Сейчас робот принадлежит моим знакомым но как ты видишь - стоит в пыльном ангаре
[00:15:58] <ada_ru> (Oleg) Год работы списали
[00:16:08] <ada_ru> (Oleg) А так есть шанс
[00:16:48] <ada_ru> (Oleg) Можно наверное даже в Москву привезти
[00:17:40] <ada_ru> (Oleg) Есть ещё вот такое
[00:17:41] <ada_ru> (I_vlxy_I) да он здоровенный. куда и как его перевозить?
[00:18:34] <ada_ru> (I_vlxy_I) и где хранить?
[00:18:38] <ada_ru> (Oleg) Да я на автобусе привезу :-)
[00:18:50] <ada_ru> (I_vlxy_I) то есть я не представляю как вообще с нулем финансирования завершать проект
[00:19:34] <ada_ru> (Oleg) Ну например за долю в компании новой :-)
[00:19:41] <ada_ru> (I_vlxy_I) не, я не про оплату труда
[00:19:51] <ada_ru> (Oleg) Надо подумать
[00:19:52] <ada_ru> (I_vlxy_I) сам робот и его тестирование требует помещения и прочего
[00:20:17] <ada_ru> (Oleg) Ну я могу арендовать ангар где нибудь под Москвой
[00:20:37] <ada_ru> (I_vlxy_I) отвечает (Oleg) на <Ну я могу арендовать…>
make with ada!
[00:20:39] <ada_ru> (I_vlxy_I) 😄
[00:20:44] <ada_ru> (Oleg) :-)
[00:21:12] <ada_ru> (I_vlxy_I) я могу пошукать по знакомым - может кто заинтересуется еще
[00:21:24] <ada_ru> (I_vlxy_I) а на чем там затык? в чем проблемы технические?
[00:23:18] <ada_ru> (Oleg) Вот ещё
[16:20:21] <ada_ru> (I_vlxy_I) А нельзя в самом gpr скрипты запускать внешние? Избавиться от make и делать только gprbuild ну и gprinstall когда надо?
[16:20:50] <ada_ru> (I_vlxy_I) отвечает (Максим) на <@I_vlxy_I Я не могу …>
А какие значимые отличия в организации проекта?
[16:21:05] <ada_ru> (I_vlxy_I) Вроде и там и там gpr отдельно лежат
[16:23:41] <ada_ru> (AnatoliyChepiga) Я ещё растений не смотрел, но чем он лучше того же си?
[16:25:21] <ada_ru> (I_vlxy_I) отвечает (AnatoliyChepiga) на <Я ещё растений не см…>
Типо безопасный :-)
[16:25:52] <ada_ru> (AnatoliyChepiga) А ада/Спарк не безопасные что-ли?)
[16:27:14] <ada_ru> (I_vlxy_I) отвечает (AnatoliyChepiga) на <А ада/Спарк не безоп…>
По памяти - нет. Спарк потихоньку приближается к расту, но ещё не достиг тут такой же надежности.
[16:27:33] <ada_ru> (I_vlxy_I) Ну и в плане data race Раст тоже хорош.
[16:27:53] <ada_ru> (AnatoliyChepiga) Да как нет-то? Исключение будет выброшено если доступ не туда
[16:28:56] <ada_ru> (I_vlxy_I) отвечает (AnatoliyChepiga) на <Да как нет-то? Исклю…>
А Раст просто не соберётся в этом случае
[16:29:01] <ada_ru> (I_vlxy_I) Чуешь разницу?
[16:29:20] <ada_ru> (I_vlxy_I) Статические гарантии времени компиляции
[16:29:28] <ada_ru> (AnatoliyChepiga) Т.е. программиста заставляют думать головой что-ли?
[16:29:56] <ada_ru> (I_vlxy_I) отвечает (AnatoliyChepiga) на <Т.е. программиста за…>
Не только думать головой, но и доказывать это компилятору.
[16:30:10] <ada_ru> (I_vlxy_I) Иначе не пропустит
[16:30:23] <ada_ru> (AnatoliyChepiga) Это симпатизирует, конечно
[16:30:27] <ada_ru> (I_vlxy_I) То есть use after free в расте не бывает от слова совсем
[16:30:44] <ada_ru> (AnatoliyChepiga) А как насчёт проверки границ типов?
[16:31:24] <ada_ru> (FROL256) И чего же именно в Аде нету такого с памятью что есть в расте? Сборщик мусора не в счёт — его нельзя использовать по ряду причин во встроенных приложениях реального времени
[16:31:36] <ada_ru> (Oleg) отвечает (AnatoliyChepiga) на <Т.е. программиста за…>
Как раз отучают, за него теперь думает компилятор :-)
[16:32:02] <ada_ru> (AnatoliyChepiga) Ну вы меня заинтриговали прямо!
[16:32:20] <ada_ru> (AnatoliyChepiga) А говно всякое вам нём писать можно?
[16:32:26] <ada_ru> (Oleg) Можно
[16:32:40] <ada_ru> (Oleg) На нем только говно и пишут собственно :-)
[16:32:45] <ada_ru> (AnatoliyChepiga) Ну это разочарование
[16:33:09] <ada_ru> (Oleg) Я хотел его попользовать и отказался
[16:33:49] <ada_ru> (AnatoliyChepiga) Хотя... Это может и хорошо. Иначе все бы строем ходили, чего, очевидно, не происходит
[16:33:51] <ada_ru> (Oleg) Тут было про юзер спейс драйвер на расте и си
[16:34:12] <ada_ru> (Oleg) Почитайте, там интересно
[16:34:23] <ada_ru> (Oleg) Но там и на Go есть
[16:34:31] <ada_ru> (AnatoliyChepiga) Я читал. Воодушевляет.
[16:34:42] <ada_ru> (AnatoliyChepiga) Ну всё! Завтра ставлю Раст!
[16:38:03] <ada_ru> (Oleg) Но кто мне покажет продакшен юз этого самого раста ?
[16:38:11] <ada_ru> (I_vlxy_I) отвечает (FROL256) на <И чего же именно в А…>
В расте нет сборщика мусора бай дизайн
[16:47:17] <ada_ru> (AnatoliyChepiga) Это отлично же!
[16:48:07] <ada_ru> (FROL256) ок, тогда что там есть чего нету в Аде?
[16:51:13] <ada_ru> (Максим) отвечает (I_vlxy_I) на <А какие значимые отл…>
В этом плане не сильно отличатся. Ну там testsuite на питоне продублирован. В Travis/Appveyor я пускаю тесты и сборку через Makefile, а внутри конторы оно всё на питоне. В матрешке есть ещё configure на Аде :D
[16:53:43] <ada_ru> (Максим) отвечает (I_vlxy_I) на <А нельзя в самом gpr…>
Так, чтобы что попало, то нельзя. Можно свой язык определить и написать, где к нему транслятор лежит. Тогда gprbuild будет его вызывать для файлов этого языка
[17:10:54] <ada_ru> (I_vlxy_I) отвечает (Максим) на <Так, чтобы что попал…>
Ну, то есть можно сделать запуск хоть шеловых скриптов, хоть питоновских. Надо просто это явно прописать.
[17:12:10] <ada_ru> (I_vlxy_I) отвечает (Максим) на <В этом плане не силь…>
Дык а в чем драматическое отличие то? Можно по пунктам чем als не кошерен?
Матрешка какая-то слишком огромная, а als как раз моего размера.
[17:36:21] <ada_ru> (Максим) ну как тебе сказать. Ну вот выпилили Адские настраиваемые модули (generic) и заминили их на кусок питона, который генерит Адский код по шаблону захардкоженому в питон. Это считается за драматическое отличие?
[17:38:38] <ada_ru> (I_vlxy_I) отвечает (Максим) на <ну как тебе сказать.…>
ЗАЧЕМ?!
[17:39:17] <ada_ru> (I_vlxy_I) Но ладно, что сам код говно, я понял :-)
А по структуре проекта - где как там gpr, как настроено и так далее?
[17:39:47] <ada_ru> (I_vlxy_I) отвечает (I_vlxy_I) на <ЗАЧЕМ?!>
Хотя я понимаю зачем - можно будет потом и питон так генерить.
[17:40:03] <ada_ru> (Максим) Питон он свой, любимы и простой. А generic-и в Аде это сложно, много лишних строк и букв. Наверное логика была такая
[17:40:08] <ada_ru> (I_vlxy_I) Language agnostic solution
[17:40:23] <ada_ru> (I_vlxy_I) PythonCore :-)
[17:40:52] <ada_ru> (Максим) ну gpr я положил в gnat/, как в Матрёшке 😊
[17:40:54] <ada_ru> (I_vlxy_I) powered by smoothie
[17:44:00] <ada_ru> (Максим) Они любят .gpr в корень кидать, но в корне и так всегда хватает какого-то мусора
[17:50:25] <ada_ru> (I_vlxy_I) Хм. Ну, так то я тоже люблю в корень кидать проектный файл.
Но тогда в корне только он и ридмишка
[17:50:35] <ada_ru> (I_vlxy_I) А что ещё в корень класть?
[17:51:35] <ada_ru> (Максим) Проектных файлов часто становится больше, чем один.
[17:52:31] <ada_ru> (Максим) В корне еще всякие .travis.yaml, appveyor.yaml, лицензия, Makefile и тд и тп
[17:55:42] <ada_ru> (I_vlxy_I) отвечает (Максим) на <Проектных файлов час…>
Подпроектный файл будет в директории с подпроектом.
[17:56:37] <ada_ru> (Максим) Тебе захочится иметь общие опции или другие настройки между проектами, появится shared.gpr
[17:57:26] <ada_ru> (I_vlxy_I) отвечает (Максим) на <Тебе захочится иметь…>
Они просто будут в проекте уровнем выше, а дочерние будут их наследовать :-)
[17:58:12] <ada_ru> (Максим) Дело хозяйское, мне тоже не нравился gnat/ по началу, а потом понравилось :)
[17:58:57] <ada_ru> (I_vlxy_I) отвечает (Максим) на <Дело хозяйское, мне …>
Просто такая организация провоцирует исходники разных проектов сваливать в одну директорию source
[17:59:31] <ada_ru> (I_vlxy_I) И оттуда уже выцеплять конкретные исходники в файлах проектов
[17:59:53] <ada_ru> (I_vlxy_I) Без IDE в этой каше фиг разберёшься
[18:04:03] <ada_ru> (Максим) Не, общая директория исходников плохо сочетается с несколькими .gpr. Исходники не могут повторятся в разных проектах ( если один проект юзает другой).
[18:04:33] <ada_ru> (Максим) поэтму приходится исходники разносить по поддиректориям
[18:05:51] <ada_ru> (I_vlxy_I) отвечает (Максим) на <Не, общая директория…>
Иногда не юзает. Вижуалстудийцы-плюсовики так любят упарываться.
Потом фиг разберёшь кто на ком стоял.
[18:06:37] <ada_ru> (I_vlxy_I) Причём бывает что исходники по разным каталогам рассованы, а проекты выборочно берут исходники из разных директорий
[18:07:17] <ada_ru> (Максим) Ну можно посмотреть в исходники gps. Там тоже gpr разбросаны по всему дереву исходников. Как-то лучше от этого не становится, на мой взгляд
[18:13:56] <ada_ru> (I_vlxy_I) отвечает (Максим) на <Ну можно посмотреть …>
Прикольно, что в gps репе есть .vscode каталог :-)
[18:49:51] <ada_ru> (Eugene) отвечает (FROL256) на <ок, тогда что там ес…>
там есть borrow checker для проверки того, что объект не используется после того как станет null, так же там есть алгебраические типы данных ( https://proglib.io/p/chto-est-algebraicheskie-tipy-2019-09-15 ) и трейты (классы типов),
и всё это приправлено ужасающим сиподобным синтаксисом )))
[19:03:35] <ada_ru> (FROL256) А можно мне простой пример, для тупых ))
[19:04:17] <ada_ru> (FROL256) из этой статьи мне непонятно при чём там вообще контроль памяти
[19:26:02] <ada_ru> (Eugene) отвечает (FROL256) на <из этой статьи мне н…>
из статьи про АлгТД? ни при чём, это разные фишки
[20:07:58] <ada_ru> (FROL256) так, а ок
[20:08:15] <ada_ru> (FROL256) но я всё-равно не понял преимущества раста над адой по поводу бещопасности
[20:08:20] <ada_ru> (FROL256) ни по памяти ни как-либо ещё
[20:09:14] <ada_ru> (I_vlxy_I) Это не проблемы раста :-)
[20:15:21] <ada_ru> (Максим) Отключил вчера проводной телефон за ненадобностью. Заодно и ADSL интернет. Вспомнил свою первую выделенку на 128 Kbs. Кончилась ещё одна эра технологий. Чуствую себя динозавром 😕
[20:18:09] <ada_ru> (FROL256) А вдруг война, мобильные и интернет — первое что поломается
[20:18:15] <ada_ru> (FROL256) а провода они под землёй лежат
[20:18:21] <ada_ru> (FROL256) всё будет работать
[20:28:15] <ada_ru> (I_vlxy_I) отвечает (FROL256) на <всё будет работать>
Нет. Софтвер пишут те же люди. Я гарантирую, что работать не будет :-)
[20:30:35] <ada_ru> (FROL256) )
[20:30:41] <ada_ru> (FROL256) ну всё может быть
[21:35:30] <ada_ru> (a) /me перепрятать дискеты
[21:37:50] <ada_ru> (Andry Ogorodnik) Боюсь огорчить, но драйвера дисководов они же писали ;)
[21:40:13] <ada_ru> (I_vlxy_I) Ну, собственно дискеты сами по себе не особо надежный хранитель информации
[21:43:51] <ada_ru> (I_vlxy_I) Особенно в мире мобильников
[23:45:01] <ada_ru> (I_vlxy_I) А кто-нибудь alire пользовался?