Size: a a a

Compiler Development

2020 March 11

FO

FORTRAN ONE LOVE in Compiler Development
Антон
Но плюсам на минуточку 30+ лет?
А фортрану 65+...
источник

AK

Andrei Kurosh in Compiler Development
Александр Вольнов
Не хуже, чем в C++. Там правил с исключениями в сто раз больше, а лямбды ещё более громоздкие.
У плюсов есть уважительная причина (обратная совместимость на протяжении десятилетий) и компенсация (широчайшее распространение), у нового языка этих оправданий не будет
источник

АВ

Александр Вольнов in Compiler Development
А если я сделаю аргумент без квадратных скобок?
NumbersSqr := Numbers.@map[:x {x*x}]
По идее, такое изменение не должно усложнить правила.
источник

АВ

Александр Вольнов in Compiler Development
Andrei Kurosh
У плюсов есть уважительная причина (обратная совместимость на протяжении десятилетий) и компенсация (широчайшее распространение), у нового языка этих оправданий не будет
У меня всегда можно поменять язык, не меняя байткод. Перегнать текст в бинарь старым транслятором, а потом перегнать обратно новым транслятором, и таким образом автоматически получить уже сконвертированный на новый язык код.
Так что я в начале буду пытаться придерживаться простоты реализации, а удобства уже потом добавлю. Главное бинарный формат зафиксировать сразу.
источник

AK

Andrei Kurosh in Compiler Development
Александр Вольнов
У меня всегда можно поменять язык, не меняя байткод. Перегнать текст в бинарь старым транслятором, а потом перегнать обратно новым транслятором, и таким образом автоматически получить уже сконвертированный на новый язык код.
Так что я в начале буду пытаться придерживаться простоты реализации, а удобства уже потом добавлю. Главное бинарный формат зафиксировать сразу.
Вперед и удачи )
источник

AR

Andrew Rudenko in Compiler Development
@devoln ну на всякий случай еще вот https://core.telegram.org/mtproto/TL
источник

AZ

Alexandr Zamaraev in Compiler Development
Александр Вольнов
У меня всегда можно поменять язык, не меняя байткод. Перегнать текст в бинарь старым транслятором, а потом перегнать обратно новым транслятором, и таким образом автоматически получить уже сконвертированный на новый язык код.
Так что я в начале буду пытаться придерживаться простоты реализации, а удобства уже потом добавлю. Главное бинарный формат зафиксировать сразу.
Вроде Оберон как раз что-то такое делал. :)
источник

VS

Vasily Shapenko in Compiler Development
Это не очень хороший пример
источник

AR

Andrew Rudenko in Compiler Development
Vasily Shapenko
Это не очень хороший пример
ну это уже пусть автор решает, но вроде related
источник

AP

Antony Polukhin in Compiler Development
источник

M

MaxGraey in Compiler Development
А мог бы еще кто то про вот это в Шланг зарепортить?
источник

AP

Antony Polukhin in Compiler Development
MaxGraey
А мог бы еще кто то про вот это в Шланг зарепортить?
Да, но нужно минимизировать пример... а от макросов у меня глаза кровоточят

Сможете убрать инклюды и оставить минимум кода, для воспроизведения проблемы?
источник

M

MaxGraey in Compiler Development
Antony Polukhin
Да, но нужно минимизировать пример... а от макросов у меня глаза кровоточят

Сможете убрать инклюды и оставить минимум кода, для воспроизведения проблемы?
да, сейчас сделаю
источник

M

MaxGraey in Compiler Development
Antony Polukhin
Да, но нужно минимизировать пример... а от макросов у меня глаза кровоточят

Сможете убрать инклюды и оставить минимум кода, для воспроизведения проблемы?
https://godbolt.org/z/7SC_Cs

Если там будут double и  long long соответствующими диапазонами будут тоже самое. Но думаю одного примера с float будет достаточно)

Спасибо!
источник

M

MaxGraey in Compiler Development
Интерестно, что вот такой вариант отрабатывает похоже правильно, но он не подходит нам, так как используется макрос. И похоже это проблема с CFG?
https://godbolt.org/z/huvU6r
источник

E

EgorBo in Compiler Development
А есть административная статья за абузинг компиляторов?
источник

M

MaxGraey in Compiler Development
EgorBo
А есть административная статья за абузинг компиляторов?
Есть CoC обычно, на него всегда ссылаются)
источник

M

MaxGraey in Compiler Development
Но только есь абьюзинг в issues происходят
источник

MM

Mikhail Maltsev in Compiler Development
А что за константа 2147483904?
источник

MK

Matwey Kornilov in Compiler Development
Mikhail Maltsev
А что за константа 2147483904?
2**31 ?
источник