elixir.webp43 Кб, 576x308
Elixir 2 elixir 2954172 В конец треда | Веб
Здравствуй, дорогой анон.

Предыдущий: >>2082722 (OP)

Сегодня хочу рассказать тебе о прекрасном функциональном языке для написания неубиваемых распределённых систем, а более конкретно вебни на бэке, больших soft-realtime систем и IoT говен. Называется он Elixir, а работает он на виртуальной машине real human BEAM, на которой ещё работает язык Erlang.

Немного истории

Эликсир это современный язык, построенный поверх языка Erlang с блекджеком и лисповыми макросами. У этих языков полный интероп в обе стороны, но при этом эликсир лишает вас этого удовольствия написания Сам язык Erlang появился в компании Ericsson как язык для написания максимально отказоустойчивых телекоммуникационных систем. Именно из желания создать среду для написания максимально отказоустойчивых систем появились все основные фичи.

Основные фичи

⚹ Ахуенно приспособлен к разработке параллельных и конкуррентных программ. Эликсир способен запускать мильоны процессов-акторов, работающих асинхронно, с различными приоритетами и всем таким. Эти процессы не делят память и общаются через пересылку сообщений.

⚹ Ахуенно приспособлен к разработке распределённых систем. Все основные проблемы написания распределённых систем вроде сихнронизации монотонных часов, общения между машинами, поиска машин, heartbeat-ы, группы процессов, gossip-ы уже включены в язык.
Любая достаточно сложная распределённая программа содержит заново написанную, неспецифицированную, глючную и медленную реализацию половины языка Erlang. (с)

⚹ Ахуенно приспособлен к разработке отказоустойчивых систем. Что делают кубы, когда падает сервис? Они перезапускают его. Эрланг делает то же самое, только не с сервисами, а с процессами, что значит что неожиданное исключение в одной части функционала никак вообще никак не заденет другой функционал. Гоферы пытаются достичь того же с помощью микросервисов, а в Elixir такой функционал из коробки.

⚹ Ахуенный тулинг. В отличие от эрланга с его хэдерами, makefile-ами и прочими пыльными приколами, эликсир за секунды позволяет создать проект, скомпилировать его, сконфигурировать его, собрать артефакт, скачать зависимости и всё такое в стандартах всех современных языков. Серьёзно, местный билдтул (mix) гораздо лучше чем забугорские cargo, npm, go и gem.

Нахуя

Ты хочешь нормально спать по ночам? Ты хочешь отказаться от ночных дежурств? Ты хочешь сэкономить на этих богомерзких девопсах и прочих сисянах? Ты устал дебажить очередной дата-рейс ебучих горутин?

Я хочу спать по ночам. Как вкатиться?

Чтобы успешно найти работу на эликсире, нужно уже иметь некоторый опыт разработки за деньги и понимание того какое же говно это ваше ойти. Желательно от одного года в вебе. Самый быстрый способ обучения это в то же время и самый эффективный способ, поэтому синтаксис и стандартная либа постигается вот тут
https://elixirschool.com/ru

Более подробное описание внутренностей, хороших практик и хитростей стандартной либы описывается вот тут. Тут будет эрланг, но это не должно быть проблемой
https://learnyousomeerlang.com/

Конкретно вебня на эликсире
платно: https://www.amazon.com/Programming-Phoenix-1-4-Productive-Reliable/dp/1680502263
бесплатно: https://hexdocs.pm/phoenix

Тому, кто ценит своё время, я советую начать писать какой-нибудь проектик параллельно с чтением книжек. Чтобы стать джуном на эликсире опытному бэкендеру нужно не больше месяца.

Рыночек

Средняя температура по больнице зарплата у эликсирщика традиционно больше чем у любого друогого языка как минимум в два раза, поэтому поменять голанг или питон на эликсир будет выгодно. Вакансии на рынке РФ существуют, искать можно на hhрю или в чатиках в телеге t.me/proelixir. Забугорных вакансий значительно больше и они охотно нанимают разработчиков с опытом. Самое важное качество при найме это не знание самого языка, а софт-скиллы и общее понимание веб-разработки как таковой, так что придётся социализироваться.

Вопросы?
2 2954231
>>2954172 (OP)

> придётся социализироваться.


It's over.

>Вопросы?


В чем писать код?
3 2954637
>>2954231

> В чем писать код?



В чём хочешь. Есть плагины для VSCode, для IDEA. Любая IDE, которая интегрируется с LSP подойдёт. Если ты ноулайфер, то на Elixir можно писать в Emacs, Vim, Neovim, Helix или Kakoune (я пользуюсь последним).

Собственно LSP: https://github.com/elixir-lsp/elixir-ls
4 2954692
>>2954172 (OP)

>Все основные проблемы написания распределённых систем вроде сихнронизации монотонных часов, общения между машинами, поиска машин, heartbeat-ы, группы процессов, gossip-ы уже включены в язык.


>Любая достаточно сложная распределённая программа содержит заново написанную, неспецифицированную, глючную и медленную реализацию половины языка Erlang. (с)


Какие системы консенсуса встроены в Эликсир?
5 2956192
>>2954692

> Какие системы консенсуса встроены в Эликсир?



Где ты прочитал что системы консенсуса встроены в Elixir?
6 2956224
>>2956192

>Где ты прочитал что системы консенсуса встроены в Elixir?


Дегроид, прямо в шапке написано:

>Любая достаточно сложная распределённая программа содержит заново написанную, неспецифицированную, глючную и медленную реализацию половины языка Erlang. (с)


Вот я и спрашиваю, где паксос?
7 2956241
>>2956224

> Дегроид, прямо в шапке написано:



Ты реально тупой походу. Если каждая распределённая система содержит в себе часть Erlang, это не значит что Erlang содержит в себе каждый распределённый алгоритм. Понимаешь, если лично ты это элемент множества долбоёбов, то это не значит что все долбоёбы это ты. Чувствуешь разницу?

А так, консенсусов на Erlang/Elixir дохуя в опенсурсе, просто в язык они не встроены
image.png481 Кб, 1366x768
8 2958190
Саша, залогинься.
9 2958493
>>2956241
Ок, пиздабол, какую часть Элексира содержит Bigtable?
10 2959431
>>2958190

О, я последнее время часто мемы с ним вижу. Что за чел? Где посмотреть?
11 2959436
>>2958493

Понятия не имею, я сорцов не видел. А ты видел?
12 2959586
>>2959436

>А ты видел?


Да. И нихуя там из Эрланга нет. Разве что синхронизация времени, но это было изобретено задолго до Эрланга.
13 2959600
>>2959431
tsoding на твиче/ютубе
14 2959748
>>2959586

Ебать ты тупой.

Во-первых, если уж начал пиздеть про bigtable, то ты уж должен знать, что там синхронизация времени не часами лампорта, а буквально атомными часами, по штуке в каждом дц. https://www.wired.co.uk/article/google-gps-powered-database в этой статье даже ебучий автор Riak (который на Erlang написан) пишет что способы синхронизации времени совершенно разные.

Во-вторых, цитата означает не то что каждая распределённая система написана на Erlang, а значит что в каждой из распределённых систем присутствуют элементы, которые реализованы в Erlang, только в Erlang они обкатаны огромным колчиеством пользователей и написаны на чистом кроссплатформенном C, а в твоей хуйне они написаны на коленке и обкатаны только тобой на своём лэптопе.

Так что ебать ты тупой шизофреник: сначала нихуя неправильно понял, потом ещё доебался к хуйне, которую сам и придумал, и ещё и в этом доёбе очень жидко обосрался. Просто ебать разраб bigtable из гугла собственной персоной ворвался в тред прямиком из своего кабинета с мягкими стенами.
1703515154951.jpg128 Кб, 853x1280
15 2977229
16 2977858
>>2954172 (OP)
OP и аноны всем привет! Случайно наткнулся на тред, хотел задать вопрос. Сам думал серьезно C# учить, но почему то наткнулся на тред и стало интересно. Хочется с большими мощными системами работать. Что посоветуете выбрать с учётом перспектив C# или Elixir?
Сам физик+IT, баловался с JS, Python.
17 2977894
>>2977858

Бери Elixir, он перспективнее, потому что на Elixir есть ML и экосистема как у Python в этом плане. Да и по жизни Elixir полезнее чем шарп, потому что когда ты будет один что-то делать, на Elixir будет всё получаться сильно проще чем на C#
18 2977900
>>2977894
От голода бы только не сдохнуть
19 2977901
>>2977900

Почему от голода сдохнешь?
20 2977904
>>2977901
Обычно людям нужна работа что бы деньги фармить
21 2977906
>>2977900
>>2977229

Я вот эти мемы кстати так и не понял. Открываю статистику, а там одни из самых высокооплачиваемых языков это Erlang и Elixir

https://survey.stackoverflow.co/2023/#technology-top-paying-technologies
22 2977907
>>2977904

Ааа, понял тебя анон. Ты дальше hh.ru загончика на вакансии не смотришь, да?
23 2977908
>>2977907
>>2977906
Да флаг вам в руки. Трезво только иногда пытайтесь думать
24 2977913
>>2977908

Не, ну для такого дегенерата как ты, работы и правда не найдётся, даже не пытайся. Только я тебя расстрою, тут ни один язык не поможет, даже в вонючем JS на тебя будут пальцем показывать и громко смеяться, кога ты будешь слюни пускать
25 2977958
>>2977894
Спасибо за ответ Анон!
26 3005702
Поднятие
27 3026107
Запилил распределённый cirtuit breaker на Elixir. Работает как часы. Задавайте вопросы
28 3026142
>>3026107
Зачем распределенный? Сколько твой держит рпс по сравнению с другими?
29 3026242
писал на эрланге оче давно, полгода назад почитал пару книг про эликсир, покодил немного на нём.

Акторы/OTP действительно снимают головную боль когда пишешь распределенный софт.

Но всё же решил не вкатываться в него по этм причинам:

Основной скоуп работы - вебмакакинг. Феникс для эликсира это рельсы для руби. В целом 90% потенциальной работы это крудошлёпинг пускай с акторами и ФП, от которого меня уже воротит

Эликсир это именно инструмент для создания распределённых систем, писать на нём что-то кроме них смысла не имеет на мой взгляд.

Медленный пиздос
30 3029667
>>3026142

Быстрее чем если пихать в Redis. Распределённый, потому что у нас кластер, который шлёт запросы в сторонний сервис шлёт из разных инстансов, и этот сервис не хотелось бы досить
31 3029676
>>3026242

> В целом 90% потенциальной работы это крудошлёпинг



Зависит от проекта. Круды это же интерфейсы, а всё интересное внутри. Например написать какую-нибудь биржу с авторизацией и всем таким, не отличается от какого-нибудь MQTT брокера практически никак, хотя первое это на 99% круд и один вебсокет, а второе это прям работа с низкоуровневым сетевым стеком
32 3029801
>>3029676
ну удачи тебе найти работу по написанию такого интересного проекта (серьезно), но скорее всего вся работу будет шлёпать формочки и дрочить лайввью.
33 3029916
>>3029801
Я уже over 5 лет хуярю чистый бэкенд на elixir, формочки есть только в паре небольних внутренних приложениях, брат жив
34 3030155
>>3029916
web бекенд? или что-то реально интересное?
35 3030186
>>3030155
Часть - web, но это бэк без типичного фронтэнда вообще, соответственно без валидации формочек (асинхронщина всяческая), часть - типичное для стека перекладывание сообщений из одного места в другое. Не то чтобы прям что-то интересное, но и не формочки, а высоконагруженное/распараллеленное/асинхронное
36 3030194
>>3030155

>что-то реально интересное


А эт тя ебать не должно
37 3030247
>>3030194
кыш с двощей
38 3030463
>>2977907
Секретные вакансии для своих, работодатели скрывают, главное верить -это всё?
39 3030541
>>2977907
Да да, где в секретных чатах тысячи вакансий которые ждут не дождутся всех.
40 3036241
>>3030463

1. LinkedIn
4. elixirjobs.net
8. tg: @proelixir
8. Бывшие коллеги и знакомые в elixir-тусовке

На моём опыте, всегда удаётся найти норм работу на первых трёх, но через знакомых удаётся найти самые классные. Так что общайтесь, пилите опенсурсик друг с другом, ходите на конфочки, сидите на эликсирфорумах
41 3036478
>>2954172 (OP)

А черти, что лого придумали, они с юморком.
Надо на территории РФ запретить этот язык.
image.png1,5 Мб, 1920x1060
42 3040288
43 3066680
Курс по Эликсиру на русском языке для тех кто уже знает базу.
https://github.com/yzh44yzh/elixir_course/tree/master
44 3068190
Работу на эликсире я так понимаю не найти, правильно?
мимо 8 месяцев в ведроид разработке
45 3068217
>>3068190
Ну хз, я вот уже полгода облизываюсь на эликсир вакухи все 5 штук где требуют 1-2 года опыта и на них всего 10-20 откликов

мимо не-эликсирщик
46 3068514
>>3068190

Ищи тут >>3036241
47 3069162
>>3068190
Не, нормально ищется, специалистов хороших мало, можно и джуном на 200-250 залететь.
48 3069176
>>3069162
Это надо быть достаточно ушлым, я за 5+ лет до 250к не добрался
49 3069289
>>3069176
Ну не только уж, кругозор ещё помогает на собесах, адекватное общение, мотивация и умение рассказать про выбор языка, причины.
50 3069322
>>3069162

>специалистов хороших мало


>джуном


What?
51 3071361
>>3069322
Фирмы готовы вкладываться в адекватных джунов. Потому что опытные специалисты мало.
52 3071566
>>2977906
Ага, а самый высокооплачиваемый Zig, которому еще до релиза как до Луны (последняя версия 0.11). Вам не кажется что что-то не так с этой статистикой?
53 3071569
>>2977906
>>3071566
А так же копролит Perl почему-то более высокооплачиваемый чем все мейнстримные языки? Так может айда Perl учить?
54 3071578
>>3068190
20 вакансий на ХХ, 3 на линкедине. Ни в чем себе не отказывай.
55 3074761
>>2954172 (OP)
3 года на фронтенде, не осилил шапку, нихуя не понимаю про ваши распределённые системы. Моё ебало представили?
56 3074811
>>3071569

>Так может айда Perl учить?


Perl в телекоме используют всякие админы Cisco.

Но лучше не учить. Perl это лидер по забываемости. В прошлом веке я хуячил на ём программы. Нынче абсолютно забыл синтаксис. И это нисколько не смущает - ничего не потерял.
57 3076966
Чет я посмотрел примеры кода и не вдупляю ничего вообще.
Функциональные языки имеют нифига не интуитивный код. Оно того стоит вообще?
ФП программирование для умных? Насколько сложно после условной джавы или C# пересесть на фп язык, у кого-нибудь был опыт?
58 3081500
Пососут ли другие фп языки у новой годноты?
https://gleam.run/
59 3081995
>>3081500
Выглядит интересно, будет время пощупаю, странно что о нем ничего не слышал и не видел
60 3082394
>>3081500
Нахуй он нужен, я так и не понял
image.png62 Кб, 1126x330
61 3082404
>>3081500
Заглянул на главную страницу.
Увидел ЭТО.
На хуй и в пизду.

Очередное соевое поделие, даже master переименован в main.
62 3082489
>>3082404
База
image.png32 Кб, 430x669
63 3083727
>>2954172 (OP)

>о прекрасном функциональном языке


помню еще в вузе плевался от прекрасного языка ПРОЛОГ, вижу тут решили продолжить традицию случайных результов выдаваемых операторами, но тыкать продолжу, оп смог прорекламировать язык
64 3084064
>>3076966
Тебя наверное смутил оператор "|>".
Просто нужно понять как он работает.
На самом деле несложная штука.
65 3084065
>>3083727
Ну на самом деле поведение с [0 | a] и [a | 0] логично.
Ты как бы указываешь head и tail списка, т.е. голову и хвост.
Хвостом списка может быть только список. Логично же.
66 3084671
>>3081500
https://youtu.be/clsTrQUt-4M?t=1119
Пиздит? Как gleam/erlang/elixir может быть быстрее go?
67 3087544
>>3084671
Возможно в каком-то тесте такое у него получится, но как только добавить немного логики, то тут сразу отсосёт у гошки.
Вообще видео глянул он дохуя нахваливал как у него красиво получилось, но на практике кроме него никто толком ничего там не пилит и по-нормальному язык никто не гонял. Он еще жаловался что спонсоры ему платят в 2 раза меньше средней ЗП и дайте деняг чтобы у него был энтузиазм и он смог нанять ещё кого-то лол.
Если никакая крупная контора не подкинет дровишек, то оно загнется нахуй
68 3091701
>>3081500
Бляя, фп языки одни дегенераты создают похоже. У одного блять do end вместо скобок и динамикодрисня, у другого для именованных параметров надо 2 раза название писать fn(name1 name2: String) -> String.
"->" вместо ":" для функций, ну он еблан чтоль? Сделай ты по дефолту возможность при вызове указывать имя параметра, или не указывать. Как этому больному ебанату вообще в голову пришло 2 названия для одного параметра писать?
экстеншонов не будет.
Похоже функциональные языки такое же говно, как и ООП языки.
Нормальный язык должен брать лучшее из обоих миров, потому что ООП - море говна, а ФП - лес хуёв.
69 3092829
>>3083727

> пикрил



Ебать, ты как красный на синем читаешь. Патроит дохуя?
70 3092837
>>3091701

> ООП - море говна, а ФП - лес хуёв.


Только наоборот.
71 3092842
>>3092829
Походу Midnight Commander.
Подсветка синтаксиса говно говно.
Но может быть и FAR Manager.
72 3093151
>>3092842
Это же дефолтная паверщель
image.png76 Кб, 408x188
73 3094822
74 3095905
>>3091701
бротиш, дрочи свою сишечку как ебучие деды в 70е. Нормальные упругие кодеры уже давно в вебе, в js'e ну или вот в рубях/эликсире
75 3109366
>>3094822
Что это?
76 3127260
Функтаны, есть профиты ознакамливаться с Эрлангом/Эликсиром в 2к24?
77 3127301
>>3127260
А с глэмом?
78 3127992
>>3127260
Есть.

>>3127301
Если про elixir шутят, что нет работы (мало вакансий по сравнению с другими языками), то тут ее реально нет
79 3129747
>>3127992
Тогда следующий вопрос, какие книги посоветуешь, и что, на твой взгляд, можно такого запилить чтобы впечатлить нанимателя не прибегая к нетворкингу?
juric.jpg39 Кб, 360x451
80 3130077
>>3129747

На второй вопрос сходу не отвечу, заебан, туго с фантазией
81 3132187
Bump
Bump
15865637961210.jpg737 Кб, 2285x632
82 3132208
>>2954172 (OP)
А есть элексир, но чтобы был такой же быстрый как си?

В чем вообще проблема слоупочности элексира?
83 3132231
>>3132208
Чел, что эликсир что ерланг на бим виртуалке крутятся
84 3132247
>>3132231
А шо если сделать эликсир без виртуалки? Это возможно вообще?
85 3132324
>>3132247

>Это возможно вообще?


Да, Говноланг называется.
86 3132337
>>3132324
Не, это не то, говналг, он совсем плох. Какие-то сборщики мусора, будто в программировании может быть мусор, что за бред безумных манагеров.
87 3132578
>>3132208
А че ты собрался такое разрабатывать, что не хватит скорости? Бог дал изи горизонтальное масштабирование
image.png161 Кб, 596x628
88 3132701
>>3132337

>Какие-то сборщики мусора


https://www.erlang.org/doc/apps/erts/garbagecollection
89 3132709
>>3127260
Нет, выбирай язык, в котором есть и фп и ооп
90 3132840
>>3132709
Покамест кожу на эрланге, очень нравится. А ты что советуешь? Скала, Кложюрь, Ф-сярп??
91 3133029
>>3132578
Придумать что разрабывать всегда можно, был бы язык хороишй для этого.

>>3132701
Не ну ерланге это нормально, всё же тут другие плюсы. А тут вроде как компилируемая залупа, но почему-то говна с гц нахуячили.
92 3133431
>>3133029

>Не ну ерланге это нормально


Вы не понимаете, это другое
93 3133495
>>3132208
Да, все что на ДЖВМ из-за лучшего JIT такое же быстрое как Си после разогрева
Java или Clojure, если тебе прямо хочется функциональщину
94 3133588
>>3133431
Ну это правда другое. Это же отказоустойчивость, постоянное копирование данных. А у голанга что? Да ничего. И зависимости как в ноде.

>>3133495

>ДЖВМ


Сказал сравнимом с си, а не с калом. Жвм никогда не добьётся уровня компиляции си, в которой асм код близок к написанному вручную.
95 3133611
>>3133588

>Жвм никогда не добьётся уровня компиляции си


байтодебил порвался и горит
96 3133722
>>3133611
Просто работаю с высокой нагрузкой. Если тебе норм там строчки разбирать или ещё чего такое, то разбирай, я же не говорю что это для дегродов-мартышек.
97 3133777
>>3133588

>Жвм никогда не добьётся уровня компиляции си, в которой асм код близок к написанному вручную.


Это потому что она добивается большего. Может твой Си например циклы разворачивать в зависимости от использования? Может твой Эликсир девиртуализировать вызовы методов?
А ДЖВМ может и просто кэширует трансляцию часто вызываемых функций, то есть ты по сути работает с обычным С бинарником после разогрева.
98 3133827
>>3133029

>А тут вроде как компилируемая залупа, но почему-то говна с гц нахуячили.


Ты ролфишь или правда такой ограниченный? Во всех функциональных языках есть GC, и да они компилируются в нативный код.
99 3133876
>>3133777

> Может твой Си например циклы разворачивать в зависимости от использования?


Да, конечно. Там столько оптимизаций шо просто пиздец.

> Может твой Эликсир девиртуализировать вызовы методов?


Так в ерланге нет виртуальных фукнций, не?

> то есть ты по сути работает с обычным С бинарником после разогрева.


Да, это действительно так, может быть сравнимо, особенно если писать не как дэбил. Но ебля с JNI совсем не привлекает, сделали бы они это как-то попроще было бы заебись, шобы я мог менять методы JVM или вроде того.

>>3133827
Это бессмысленный язык, банимаешь ли. Ну нахуебенили они гц и функциональногов и что? Стал говналг ерблангом? Не стал. А какой у него плюс перед сри/сри++? Зачем? Чтобы. Что?
Он имеет смысл если тебе просто нравится и хочется на го писать, не более, технических плюсов нихуя нет.
100 3134020
>>3133876

>Да, конечно. Там столько оптимизаций шо просто пиздец.


У тебя же компиленый бинарь, ты его не можешь менять после компиляции.

>Так в ерланге нет виртуальных фукнций, не?


Есть наследование, же (behaviour)? Как он разбирается какую функцию вызвать?
https://www.erlang.org/doc/efficiency_guide/functions#function-calls

>apply/3 must look up the code for the function to execute in a hash table. It is therefore always slower than a direct call or a fun call.



>Да, это действительно так, может быть сравнимо, особенно если писать не как дэбил. Но ебля с JNI совсем не привлекает, сделали бы они это как-то попроще было бы заебись, шобы я мог менять методы JVM или вроде того.


Так JNI тут непричем. Это всё JIT делает, JNI нужен только когда ты внешние С библиотеки вызываешь. В большинстве случае это не нужно.
101 3134112
>>3134020

>У тебя же компиленый бинарь, ты его не можешь менять после компиляции.


Могу переписывать его прямо во время исполнения, о чем ты вообще?

>>apply/3 must look up the code for the function to execute in a hash table. It is therefore always slower than a direct call or a fun call.


Какая чопорная организация кода. Но работает, видимо.

> Так JNI тут непричем.


Не, через jni я собираюсь запускать свой асм, например. Или свои высокопроизводительные хуйни.

>В большинстве случае это не нужно.


Мне нужно.
calcerl.png685 Кб, 1318x3204
102 3135113
Функтаны, рейтаните
103 3138854
>>3134020

> Есть наследование, же (behaviour)? Как он разбирается какую функцию вызвать?



У эликсирчика для этого есть протоколы и консолидация. Там это буквально на один jump table dispatch медленнее получается. В жабе есть мономорфизация JIT-ом, но какой в этом толк, если у тебя язык настолько многословный и настолько топорный, что быстрее будет ручками всё мономорфизировать на Rust

Типа, вот JIT полезен в JavaScript, там все эти фичи удобны и много проблем решают, особенно учитывая что там динтипизация и весь этот диспатч типов очень удобно оптимизировать в рантайме. В Java в этом толку мало, типа только если повыёбываться перед кем-то. Условно, развернуть цикл это звучит круто, но на деле там надо раз 10 инлайнуть функции, чтобы это хоть что-то ускорило, а учитывая тот Clean Code и кучи абстракций, которыми на жабе срут без остановки, у тебя ни один рантайм не проссыт где вообще и что инлайнить.

Если посмотреть как работают оптимизации в жабовом JIT на уровне Sea of Nodes IR, то можно увидеть, что они инлайнить и не пытаются, а рассчитывают на то что у тебя во время компиляции рантайм додумается что вообще нужно инлайнуть.

>>3134112

> Могу переписывать его прямо во время исполнения, о чем ты вообще?



Тебе про JIT рассказывают, долбоёб
104 3139104
>>3138854

>если у тебя язык настолько многословный и настолько топорный, что быстрее будет ручками всё мономорфизировать на Rust


странно это сравнивать с растом ::unwrap()::unwrap()::unwrap()

Да и толк в том, что бомбить от боров-чекера разраб не будет и время сэкономит
105 3139106
>>3138854

>Там это буквально на один jump table dispatch медленнее получается.


Ну так так всегда, это не выигрыш никакой, это просто так работает везде. Просто джава как раз может это устранять, о чем я и пишу
106 3139364
>>3138854

>Тебе про JIT рассказывают, долбоёб


Даунёнок, причем тут жит если в си можно как угодно менять во время исполнения код программы?
107 3140175
>>3139364
ну тогда приведи пример каким образом
108 3140407
>>3140175
Просто страницу памяти с кодом делаешь в режим Read/Write и всё. Плюс синхронизация и обновление кэша команд, если это вообще требуется. Можешь вообще менять указатель возврата или что угодно ещё, блядь, да что угодно можно делать, это ж ебаная си.
109 3140919
>>3140407
Как ты поймешь на какую страницу памяти ОС поместила код? Это же детали, скрытые внутри ОС
110 3140962
>>3140919
Нет, не скрытые.
111 3142816
>>3135113

Рейти на питоне

print(eval(input()))
112 3143364
>>3142816
Говна наверни
113 3146040
>>3143364

За что?
Обновить тред
« /pr/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски

Скачать тред только с превьюс превью и прикрепленными файлами

Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах.Подробнее