Size: a a a

Compiler Development

2021 April 28

M

MrSmith in Compiler Development
Это дескридитация преподавательского состава и университета прежде всего
источник

M

MrSmith in Compiler Development
Я бы мог сделать, но мне студентов больше жаль, чем зларадствовать над ними лучше помочь
источник

M

MrSmith in Compiler Development
А оптимизации на AST делают, просто это дорогой подход
источник

M

MrSmith in Compiler Development
Да никакой, это и делают иногда специальные оптимизации для языков, обычно это выносят в ssa или mlir потому что во-первых так проще во вторых можно шарить между языками
источник

M

MrSmith in Compiler Development
Тоесть допустим вы пишете модуль для покрытия матчинга, он доступен теперь для всех фронтов что как то могут затранслировать паттерн
источник

EL

Evgeny Link in Compiler Development
ржу
источник

K

Kakadu in Compiler Development
А не получится вспомнить какие-то специфичные оптимизации, например такое переписывание программы, которое не выразимо в языке, который парсят?
источник

K

Kakadu in Compiler Development
Например, джампы какие-нибудь.
источник
2021 April 29

EL

Evgeny Link in Compiler Development
источник

EL

Evgeny Link in Compiler Development
Раз уж тут много людей из логики, вопрос. Вот есть кванторы, работают они примерно как if:

∀(условие) {тело}

Но математики не могут в однозначно интерпретируемые грамматики, так что обычно пишут просто

∀условие тело

(иногда одно либо другое оборачивают в скобки)

Однако мой препод с Физтеха писал

∀условие → тело
∃условие : тело

И это kind of имело смысл. Стрелка читается как "верно, что", а двоеточие как "такой, что", и при отрицании меняется на , а меняется на :

Интересно узнать, может кто-то встречал подобную или ещё какую-то альтернативную запись?

P.S. лекции Петровича теперь есть на ютубе, я посмотрел, и он obviously перестал так писать, теперь пишет через пробелы, как и все остальные
источник

EL

Evgeny Link in Compiler Development
Лучшее, что сейчас есть — это вот этот вот ад со скобочками
источник

EL

Evgeny Link in Compiler Development
источник

AG

Alex Gryzlov in Compiler Development
в типотеоретических пруверах обычно или явно пишут forall/exists, или используют сигнатуру зависимых функций для всеобщности, а для существования какой то сахар на тему сигмы или **
источник

VK

Val Krylov in Compiler Development
Кванторы применяются к переменным, а не к условиям. В некоторых синтаксисах они просто декорируют переменную (например, в условии), в некоторых вводятся отдельно.
источник

EL

Evgeny Link in Compiler Development
Ну ок, $квантор($переменная|$условия) {$тело}
источник

EL

Evgeny Link in Compiler Development
Пишу на суржике из математических конструкций и программерских
источник

AG

Alex Gryzlov in Compiler Development
условие это часть тела в таком случае
источник

VK

Val Krylov in Compiler Development
Не так. Обычно что-то из:
1. (exists x) > 0
2. exists x (x > 0)
источник

AG

Alex Gryzlov in Compiler Development
forall x:int -> x<3 -> x<4
источник

AG

Alex Gryzlov in Compiler Development
для существования второй вариант, да
источник