Size: a a a

2021 June 13

A ß in pro.elixir
прочитай как устроены бим файлы и пиши сам
источник

LL

Lama Lover in pro.elixir
"Секретные знания" это спецификация beam
Ровно как и любой компилятор содержит бинарные файлы под разные архитектуры написанные ручками
источник

ММ

Максим Мартынов... in pro.elixir
но там же .beam, он выполняется vm, разве там должно быть что-то платформо-специфичное?
источник

ММ

Максим Мартынов... in pro.elixir
бинарники в компиляторах - ок, но здесь же не нативные файлы для разных архитектур и ОС
источник

LL

Lama Lover in pro.elixir
Мне кажется, что в этим beam-файлах лежит код, который не мог бы быть написан на эрланге
источник
2021 June 14

ŹR

Źmićer Rubinštejn in pro.elixir
Это скомпилированные из соседней папки src бимы
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Compilation Info: [{version, 7.6.6}, {options, [debug_info, {d, USE_ESOCK, true}, {i, /home/john/projects/otp/lib/kernel/src}, {i, /home/john/projects/otp/lib/kernel/include}]}, {source, /home/john/projects/otp/erts/preloaded/src/atomics.erl}]



Интересно, кто такой этот john
источник

ML

Maksim Lapshin in pro.elixir
да это обычная история.

Есть компилятор на C, а есть язык, компиляторо которого компилируют.
Он как правило выразительнее и удобнее, чем С, поэтому имеет смысл написать очень простую имплементацию компилятора на С, который соберет минимальный кусок кода на целевом языке и вот оно уже будет собирать всё остальное.
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Вроде как модно собирать компилятор языка на самом языке. Предыдущей версии или что-то типа того
источник

AC

Andrew Cherabaev in pro.elixir
Не модно а "раскрутка компилятора")))
источник

ML

Maksim Lapshin in pro.elixir
дело не в предыдущей версии, а в том, на каком языке писать все хитроумные оптимизации, валидации и прочее
источник

DP

Dmitry Ponyatov in pro.elixir
>> Не модно а "раскрутка компилятора")))
это скорее как
а) доказательство зрелости языка и
б) тестирование — компиляторы обычно достаточно сложны, чтобы использовать все фичи самого себя
источник

ML

Maksim Lapshin in pro.elixir
ты можешь написать простейший код на целевом языке, который не надо валидировать и писать проверку ошибок.

Значит в первом компиляторе на С не нужна вообще проверка ошибок. Минут 80%  кода.

Тебе не нужны ещё какие-то разные штуки, от которых можно отказаться и вообще не нужна оптимизация.

В итоге у тебя остается просто proof of concept, написанный на сях, который компилирует просто минимум
источник

DP

Dmitry Ponyatov in pro.elixir
а для бутстрапа действительно хорошо иметь минимально возможное портабельное ядро (stage.0) написанное на ANSI C, которое можно собрать на любой системе, и потом уже раскручивать основную вурсию
источник

DP

Dmitry Ponyatov in pro.elixir
но обычно просто кросс-компилятор делают на чём удобно — Haskell какой-нибудь, или вообще Python
источник

DR

Dmitry Russ (Aleksan... in pro.elixir
Привет!
источник

DR

Dmitry Russ (Aleksan... in pro.elixir
Кто-то использует ueberauth в production-е или использует кто-то какое-то другое решение для сторонней авторизации?
источник

IK

Ihor Katkov in pro.elixir
Привет. Я использовал в проде на одном из прошлых проектов
источник

DR

Dmitry Russ (Aleksan... in pro.elixir
У тебя авторизация через github здесь работает?

https://ueberauth-example.herokuapp.com/
источник

DR

Dmitry Russ (Aleksan... in pro.elixir
Хочу понять - с моим пользователем что-то не так, или у них гитхаб ауз поломан.
источник