Size: a a a

pro.graphon (and gamedev)

2020 February 28

VK

Vitaliy ◀️TriΔng3l▶️ Kuzmin in pro.graphon (and gamedev)
disba1ancer
наркомания, могли бы for как в нормальных языках программирования сделать, а не через эту кучу многословного дерьма и лишних скобочек
for как в нормальных языках противоречит всей идее удобной компиляции благодаря SSA
источник

PK

Pavel Kazakov in pro.graphon (and gamedev)
Vitaliy ◀️TriΔng3l▶️ Kuzmin
for как в нормальных языках противоречит всей идее удобной компиляции благодаря SSA
SSA?
источник

P🛸

Pavel 🛸 in pro.graphon (and gamedev)
Vitaliy ◀️TriΔng3l▶️ Kuzmin
Многие говорят, что пиздец, но имхо заебись
У меня вся лента в твиттере была в горящих сообщениях и я сам бургутил. Но сейчас немного остыл.
источник

P🛸

Pavel 🛸 in pro.graphon (and gamedev)
Я зашел в чат по расту и там бургутил у них :D
источник

VK

Vitaliy ◀️TriΔng3l▶️ Kuzmin in pro.graphon (and gamedev)
Static single assignment, типа как в SPIR-V и LLVM IR, когда в коде зависимости только у того, что делается внизу, от того, что делается вверху
источник

PK

Pavel Kazakov in pro.graphon (and gamedev)
Vitaliy ◀️TriΔng3l▶️ Kuzmin
Static single assignment, типа как в SPIR-V и LLVM IR, когда в коде зависимости только у того, что делается внизу, от того, что делается вверху
забавно, пойду почитаю, спасибо
источник

d

disba1ancer in pro.graphon (and gamedev)
Vitaliy ◀️TriΔng3l▶️ Kuzmin
for как в нормальных языках противоречит всей идее удобной компиляции благодаря SSA
а тебе не кажется что это так с любыми циклами и они вообще мягко говоря не впсываются сюда?
источник

VK

Vitaliy ◀️TriΔng3l▶️ Kuzmin in pro.graphon (and gamedev)
Pavel Kazakov
забавно, пойду почитаю, спасибо
Для такой формы удобно оптимизации в компиляторе делать, когда у тебя нет переменных в таком виде, в котором они в обычных языках, и control flow весь reducible
источник
2020 February 29

PK

Pavel Kazakov in pro.graphon (and gamedev)
ну тут наверное допущение в том, что полные днища не будут писать, и поэтому пусть выжившие страдают со сломанными парадигмами :)
источник

VK

Vitaliy ◀️TriΔng3l▶️ Kuzmin in pro.graphon (and gamedev)
disba1ancer
а тебе не кажется что это так с любыми циклами и они вообще мягко говоря не впсываются сюда?
Почему? У тебя после цикла могут быть зависимости от самого цикла, это вписывается в концепцию
источник

PK

Pavel Kazakov in pro.graphon (and gamedev)
for и прочие же были придуманы, чтобы люди не ковырялись с метками -- код для людей стал ориентирован
источник

d

disba1ancer in pro.graphon (and gamedev)
Vitaliy ◀️TriΔng3l▶️ Kuzmin
Почему? У тебя после цикла могут быть зависимости от самого цикла, это вписывается в концепцию
так после цикла, а не внутри него
источник

VK

Vitaliy ◀️TriΔng3l▶️ Kuzmin in pro.graphon (and gamedev)
disba1ancer
так после цикла, а не внутри него
Внутри цикла правильно, когда continuation типа ++i написано в конце, потому что оно зависит от внутренностей итерации цикла, а в обычном for оно пишется в начале
источник

d

disba1ancer in pro.graphon (and gamedev)
но в любом случае это не главное, они хотят прямую компиляцию в spir-v почему не возьмут его в исходном виде, хотя если у них предусмотрена конвертация spir-v в их язык то это снимает все вопросы
источник

VK

Vitaliy ◀️TriΔng3l▶️ Kuzmin in pro.graphon (and gamedev)
Pavel Kazakov
for и прочие же были придуманы, чтобы люди не ковырялись с метками -- код для людей стал ориентирован
Здесь goto в принципе нет
источник

PK

Pavel Kazakov in pro.graphon (and gamedev)
Vitaliy ◀️TriΔng3l▶️ Kuzmin
Здесь goto в принципе нет
ну это предикшн ломает -- понятно
источник

VK

Vitaliy ◀️TriΔng3l▶️ Kuzmin in pro.graphon (and gamedev)
Только if/else и вытаскивание отдельных значений из ветвлений, которые тебе нужны будут ниже
источник

d

disba1ancer in pro.graphon (and gamedev)
Vitaliy ◀️TriΔng3l▶️ Kuzmin
Внутри цикла правильно, когда continuation типа ++i написано в конце, потому что оно зависит от внутренностей итерации цикла, а в обычном for оно пишется в начале
то что оно пишется в начале ничего не значит
источник

PK

Pavel Kazakov in pro.graphon (and gamedev)
и control flow можно диким сделать
источник

VK

Vitaliy ◀️TriΔng3l▶️ Kuzmin in pro.graphon (and gamedev)
То есть, чётко можно от gl_FragColor = … до начала обойти программу
источник