[11:34:50] <ada_ru> (Максим) Pavel У меня нет ретины, у мяня MacBook Air 13" 1440x900
[11:35:24] <ada_ru> (Pavel) ну вот, говорят с ретиной все плохо, а у меня прошка
[12:35:28] <landgraf> а как нибудь можно TID получить для таски?
[12:35:36] <landgraf> чтобы /proc/<TID>/ns почитать
[12:50:49] <ada_ru> (Максим) может в /proc/[pid]/status
[12:50:59] <ada_ru> (Максим) http://man7.org/linux/man-pages/man5/proc.5.html
[12:51:12] <ada_ru> (Максим) Pid: Thread ID (see gettid(2))
[12:51:54] <ada_ru> (Максим) /proc/self/status
[13:14:13] <ada_ru> (Pavel) А это разве не на pid? Инода одна
[13:14:52] <ada_ru> (Pavel) Gettid это сискол, ман говорит обертки нет
[16:20:38] <ada_ru> (Максим) в линухе thread id = process id, а "настоящий" process id вычисляется по первому/главному потоку чтоле
[16:21:08] <ada_ru> (I_vlxy_I) хм. а там не дерево ли?
[16:22:36] <ada_ru> (Максим) а даже если и дерево
[16:24:04] <ada_ru> (I_vlxy_I) небось можно взять список всех пытред-айди данного процесса, и глянуть у кого там айди самый мелкий
[16:25:47] <ada_ru> (Максим) ну только если по дереву глядеть, 65535 родитель вполне может иметь дочерний поток 1
[16:56:47] <landgraf> yeo, /proc/thread-self :)
[16:56:50] <landgraf> вот что мне надо
[16:57:26] <landgraf> lrwxrwxrwx. 1 root root 0 Jan 10 12:57 /proc/thread-self -> 21368/task/21368
[16:58:14] <landgraf> It makes it easy to get to a specific threads directory in /proc
[16:58:17] <landgraf>  with gettid() not being exported in glibc this is currently a pain.
[16:58:21] <landgraf> то что доктор прописал
[17:49:16] <ada_ru> (Максим) https://www.facebook.com/comp.lang.ada.ru/posts/411493089306903
[17:49:24] <ada_ru> (Максим) холивар!
[17:54:53] <ada_ru> (I_vlxy_I) хм. а каким образом сложные объекты возвращаются на стеке при трансляции в случае a2js?
[18:00:49] <ada_ru> (Максим) просто как JS объект
[18:01:32] <OCTAGRAM> там типа неявная move семантика?
[18:01:37] <ada_ru> (I_vlxy_I) значит в куче 😊
[18:01:53] <OCTAGRAM> глубокое копирование ведь есть?
[18:01:54] <ada_ru> (Максим) в случае js это не проблема, вот для native это приятно, потому, что без кучи
[18:02:39] <ada_ru> (Максим) да, в JS пришлось делать функцию глубокого копирования (_assign) и вызываеть ее при присваивании
[18:03:02] <OCTAGRAM> а для нерасширенного return — соответственно, отключать
[18:03:18] <ada_ru> (I_vlxy_I) просто по ссылке спрашивали зачем в этой задаче Ада, в ответе было, в числе прочих, что потому, что можно вот прямо на стеке возвращать сложные объекты. Но это ведь не правда для данного конкретного случая, то есть это не то преимущество Ады, что тут сыграло.
[18:04:33] <OCTAGRAM> ну да, чтоб на стеке в браузере — это сейчас только адамеджик с емскриптеном могут
[18:05:04] <ada_ru> (I_vlxy_I) там такой себе стек 😊
[18:05:17] <OCTAGRAM> ну да
[18:05:21] <OCTAGRAM> в Ada 95
[18:05:43] <ada_ru> (Максим) это правда, потому, что алгоритм пишется на Аде и тестируется native, а в JS уже потом транслируется
[18:05:46] <ada_ru> (I_vlxy_I) на самом деле, подозреваю что у js с производительностью там все норм (если на ванильном писать правильным образом) - виртуальная машина оптимизирует как надо, если попасть в её эвристики.
[18:05:49] <OCTAGRAM> где нет агрегатов для limited, нет расширенного return, всё довольно тяжело
[18:05:49] <ada_ru> (I_vlxy_I) и выделения на куче не будет.
[18:06:13] <OCTAGRAM> начинаются гадания
[18:06:22] <ada_ru> (I_vlxy_I) когда тестируется, производительность не важно ведь. ведь "продакшн" тут в браузере в виде js-кода.
[18:06:46] <OCTAGRAM> нет, чтоб чётко конкретно в васм собрать, и чтоб никакие гайки не дёргались
[18:06:51] <ada_ru> (Максим) дело не в производительности, а в удобстве
[18:07:10] <ada_ru> (I_vlxy_I) ты про то, что не нужно деаллокацию делать?
[18:07:16] <ada_ru> (I_vlxy_I) и за утечками следить?
[18:07:16] <OCTAGRAM> но я смотрел, в адамэджике тоже есть вторичный стек
[18:07:21] <ada_ru> (Максим) да
[18:07:40] <ada_ru> (I_vlxy_I) ну это же опять не довод в данном случае
[18:07:46] <ada_ru> (I_vlxy_I) в js тоже не надо. даже для объектов в куче
[18:08:29] <OCTAGRAM> ещё как надо, особенно легко статический контекст динамически захватить
[18:09:06] <ada_ru> (Максим) согласен, но я не рассматриваю как язык для программ больше 3-х строк. Может потому, что не умею "правильным образом"
[18:09:07] <OCTAGRAM> многие JS библиотеки можно априори считать текущими, пока не доказано обратное
[18:09:16] <landgraf> You reached this page via a blocked site, so the time you spend here is being deducted from your Max Allowed Time.
[18:09:20] <landgraf> что это?
[18:09:24] <ada_ru> (I_vlxy_I) я просто указываю на слабость аргументов в данном случае. более того, эти аргументы, их наличие, вообще не очевидно при чтении ответов.
[18:10:36] <ada_ru> (Максим) согласен :(
[18:11:26] <yeo> landgraf, тебя заблокировали!
[18:11:36] <landgraf> кто?
[18:11:48] <landgraf> роскомнадзор? )
[18:17:48] <ada_ru> (I_vlxy_I) ну, кстати, "TypeScript - оригинальное решение натянуть на нетипизированый "by design" язык систему типов. " тожен ведь не совсем верно. во-первых js типизированный. у него слабая динамическая типизация. (у питона например строгая динамическая типизация). не типизированный, это, например, как я понимаю, Форт.

Во-вторых не такое уж и оригинальное решение. Например С++ - это натягивание на язык со слабой статической типизацией (Си) строгой статической типизации.

Вообще, процесс довольно широко распространенный.
[18:18:25] <ada_ru> (I_vlxy_I) у такого подхода есть свои плюсы и минусы конечно.
[18:19:37] <ada_ru> (Максим) да, я сначала написал "дебильное", но потом перефразировал 😊
[18:34:10] <OCTAGRAM> RAII там тоже, получается, реализовано? и счётчики ссылок уже можно делать?
[18:37:46] <yeo> Ada.Finalization я еще не делал :(
[18:38:55] <OCTAGRAM> это ж киллер фича
[18:40:37] <yeo> этож такой жуть страшный в плане реализации. надо где-то вести список "живых" объектов и при каждой попытке выйти из процедуры их "чистить"
[18:42:01] <OCTAGRAM> короче, с какой стороны ни глянь, ничего моего работать не будет
[18:42:34] <yeo> а тебе надо в Си транслятор или в wasm?
[18:44:05] <ada_ru> (I_vlxy_I) думаю даже в с++ можно. чтобы можно было на это emscripten натравить
[18:44:16] <ada_ru> (I_vlxy_I) а емскриптен уже может куда хочешь
[18:46:11] <OCTAGRAM> у разных подходов — разные преимущества, но для одного человека тянуть wasm, мне кажется, попроще будет, так как более конкретная платформа, чем Си
[18:47:17] <yeo> Си кажется вообще какой-то клубок undefined behaviour
[18:47:35] <ada_ru> (I_vlxy_I) в случае кодогенерации, это не важно.
[19:17:31] <ada_ru> (a) А вот скажите мне ответ на глупый вопрос. Вот чтоб написать на аде под Винду программу с кнопочками, полями ввода и т.п что можно использовать? Или что правильно использовать? Qt? Gtk?
[19:18:28] <ada_ru> (I_vlxy_I) Зависит от того, какой уровень сложности ты хочешь.
[19:19:15] <ada_ru> (I_vlxy_I) Если по хардкору, то Gtk, если "Can I play, Daddy?" то Qt
[19:19:36] <OCTAGRAM> всё указанное, и плюс GWindows (возможно, в составе OEM Киркорова)
[19:20:16] <ada_ru> (a) Типа калькулятор
[19:20:36] <OCTAGRAM> мне больше всего нравится идея с Cocotron или GNUStep, но под них привязок нет
[19:21:10] <ada_ru> (Максим) Qt биндинга нет нормального
[19:21:29] <OCTAGRAM> Дульман и Годунко вроде же наперегонки делают
[19:21:33] <OCTAGRAM> целых два
[19:21:37] <OCTAGRAM> выбирай любой
[19:21:51] <ada_ru> (Максим) вадим свой похерил
[19:22:29] <OCTAGRAM> ужасно, когда всё, что ты больше всего любишь, разрублено и существует в параллельных мирах: Cocoa отдельно, Ада отдельно, NMDC отдельно
[19:22:42] <ada_ru> (a) Или винАпи чтоб выглядело как нативное? Или как там оно называется
[19:23:11] <OCTAGRAM> GWindows — почти WinAPI
[19:23:21] <OCTAGRAM> обёртка по типу MFC
[19:23:48] <ada_ru> (I_vlxy_I) у тебя очень специфичные вкусы просто 😊
[19:23:50] <OCTAGRAM> но там, насколько я знаю, с Юникодом всё очень плохо
[19:24:49] <ada_ru> (a) Хм. Ок. Примерно понятно.
[19:25:08] <OCTAGRAM> нормальная программа не должна знать, что вообще такое за зверь ANSI кодировка в Windows, а GWindows мало того, что смеет знать, так ещё в raise пихает не в UTF-8, а в ANSI
[19:30:02] <ada_ru> (nitrocerber) Э? Да как так-то
[19:30:56] <ada_ru> (I_vlxy_I) Всем на Gtk, посоны!
[19:31:07] <ada_ru> (a) А вообще примеры софта в окнах есть? Написанного на аде?
[19:31:10] <ada_ru> (I_vlxy_I) Нет иного гуя кроме Gtk и АдаКоре пророк его!
[19:31:30] <ada_ru> (Максим) GPS!
[19:32:16] <landgraf> ETFMS
[19:32:38] <ada_ru> (Максим) Ну Вадим новый биндинг хочет написать, старый был для qt3
[19:32:55] <ada_ru> (nitrocerber) Gtk чудовищен чуть более чем полностью жи
[19:33:06] <ada_ru> (nitrocerber) А, ну тогда ладно
[19:33:13] <ada_ru> (I_vlxy_I) Вообще, для некоторых задачек вообще SDL2 хватит.
[19:33:38] <ada_ru> (a) Пока пишет будут куте7
[19:33:40] <landgraf> был же квейк на аде кажется
[19:33:45] <landgraf> там sdl2 няп
[19:33:53] <ada_ru> (I_vlxy_I) SDL2 + что-то по мотивам imgui
[19:33:59] <ada_ru> (I_vlxy_I) https://github.com/ocornut/imgui
[19:41:03] <OCTAGRAM> GNAVI позиционировался как IDE типа Делфей, но на Аде и для Ады, там GWindows
[19:42:35] <OCTAGRAM> вообще вся эта байда то с макосом, то с линуксом, то с браузером, то теперь ещё с мобильными системами выбила многих игроков из седла
[19:43:01] <ada_ru> (I_vlxy_I) то с виндой
[19:43:27] <OCTAGRAM> когда тупо делал экзешник под виндоуз, во весь рост вставала винданутость, но ты его-таки делал, его качали, он работал
[19:43:56] <ada_ru> (I_vlxy_I) ну, или не работал.
[19:44:16] <ada_ru> (I_vlxy_I) алсо, кажется, только у нас было такое повальное засилие мелкомягких систем
[19:44:17] <OCTAGRAM> всё же площадки типа freesoft и softportal цвели
[19:44:47] <ada_ru> (I_vlxy_I) в штатах было разделение - макос и винда на персоналках дома и в школе, в универах юниксы.
[19:45:11] <OCTAGRAM> в Китае вроде так же, как в России
[19:45:24] <ada_ru> (I_vlxy_I) в китае внедряют свой линух 😊
[19:46:25] <OCTAGRAM> у китаянки, с которой я общался, оказался именно виндоуз, и это там обычно
[19:46:50] <OCTAGRAM> в Китае сложно сделать шаг без WeChat, а он проприетарный, закрытый, и нет версии для Linux
[19:46:59] <OCTAGRAM> вот тебе и внедрение
[20:10:45] <ada_ru> (I_vlxy_I) http://www.eurocontrol.int/sites/default/files/styles/colorbox-max/public/illustration/environment-display-2-13643.gif?itok=jr8RwbPm
[20:10:49] <ada_ru> (I_vlxy_I) Хм. Мотифф?
[21:48:38] <ada_ru> (Pavel) он
[21:49:17] <ada_ru> (I_vlxy_I) ужас и кошмар! уж лучше модерновый современный модный удобный Gtk!
[21:50:14] <ada_ru> (Pavel) не всем смузи наливают, некоторые пилят более полезные штуки чем интерфейс для операторов, который к тому же работает
[21:51:21] <ada_ru> (I_vlxy_I) то есть это не интерфейс для операторов? 😊
[21:52:00] <ada_ru> (Pavel) я не уверен что это публичная информация =) ищи на сайте там у них
[21:52:18] <ada_ru> (I_vlxy_I) опяяять военщина?
[21:52:31] <ada_ru> (I_vlxy_I) да один пес - явно для операторов же интерфейс
[21:52:38] <ada_ru> (Pavel) нет, причем тут военщина?
[21:52:53] <ada_ru> (Pavel) но и не опенсурс
[21:53:02] <ada_ru> (I_vlxy_I) даже если это оператор который авиадиспетчер.
[21:53:55] <ada_ru> (Pavel) это не для диспечеров, успокойся уже
[21:54:13] <ada_ru> (I_vlxy_I) ну значит один фиг для операторов ПК!
[21:54:32] <ada_ru> (Pavel) для хипстеров там есть свой интерфейс, с жабой и поэтессами
[21:54:49] <ada_ru> (I_vlxy_I) ооой.. жаба это ж старое. старый интерфейс
[21:54:53] <ada_ru> (I_vlxy_I) не модные технологии!
[23:12:24] <ada_ru> (a) Редхат с гномом на гтк уютнее чем кде
[23:12:44] <ada_ru> (a) Так что гтк ламповее
[23:13:59] <ada_ru> (a) Хотя я в генту вообще пользовался notion а тот ваще на lua написан
[23:14:36] <ada_ru> (a) Без всяких гтк/qt
[23:15:23] <ada_ru> (a) Так что и gnustep имеет право быть.
[23:16:40] <ada_ru> (a) Octagram а почему именно о нем ты говорил? Он легковесен или что? В чем основной плюс?
[23:16:42] <ada_ru> (Pavel) /me пользует dwm и норм
[23:17:29] <ada_ru> (a) Я недостаточно суров для двм
[23:23:21] <ada_ru> (Pavel) надо будет на аде написать dwm
[23:23:31] <ada_ru> (Pavel) а то я недостаточно суров для Сишечки
[23:24:02] <ada_ru> (Pavel) libX11 уже вроде делал кто-то биндинг
[23:27:04] <ada_ru> (I_vlxy_I) X11 устарел и нинужин
[23:28:29] <ada_ru> (I_vlxy_I) но даже если X11 нужин, то libX11 нинужин и устарел, ведь есть xcb!
[23:28:57] <ada_ru> (I_vlxy_I) а что же, на кошерной Адочке никто не реализовывал X11 протокол? он вроде простой
[23:34:00] <ada_ru> (coopht) /me
[23:34:01] <ada_ru> (coopht) /me
[23:35:03] <ada_ru> (I_vlxy_I) кстати, ubuntu 18.04 снова перейдет с wayland на x11, а потом, в 18.10 перейдут обратно на wayland
[23:38:51] <ada_ru> (Mikhail) типа вейланд не готов для LTS?
[23:38:59] <ada_ru> (I_vlxy_I) ага
[23:40:09] <ada_ru> (I_vlxy_I) после того как в гномотерминале вейландовском у меня mc перестал функционировать после переключения на русский (все функциональные клавиши отказали) и это не лечилось пока не прибьешь все инстансы терминала, я, пожалуй, соглашусь что там не все гладко
[23:41:06] <ada_ru> (I_vlxy_I) алсо для вейленда вообще ну ОЧЕНЬ кастрированые возможности у прог. например нельзя повесить глобальный хук на клавиатуру, чтобы хоткеи работали когда окно твоей проги (если у нее вообще есть окно) не в фокусе.
[23:41:12] <ada_ru> (I_vlxy_I) нельзя скриншот снять
[23:41:29] <ada_ru> (I_vlxy_I) подобные штуки решаются там на уровне DE. что вообще говно
[23:41:39] <ada_ru> (I_vlxy_I) ибо каждое DE решает это по своему. или не решает