Size: a a a

Compiler Development

2019 September 29

PS

Peter Sovietov in Compiler Development
Зато с их помощью описываются асинхронные системы.
источник

AT

Alexander Tchitchigin in Compiler Development
Andrei Kurosh
Для человека с молотком все становится похоже на гвоздь :)
Это одинаково применимо и к императивному программированию. 😉
источник

МБ

Михаил Бахтерев in Compiler Development
Так есть и другие методы описания. СП хороши для теоретического исследования свойств параллельных процессов. Но для практического использования они слишком невыразительны. Приходится делать раскрашенные сети, а это вообще трындец с точки зрения отладки.
источник

M

MaxGraey in Compiler Development
Формализм и символьный анализ очень круто выглядят на бумаге, но столкнувшись с IEEE754 все это летит к чертям, когда оказывается что простая коммутативность не работает для плавающих чисел) Теория и практика не всегда пересекаются особенно в вычеслительной технике
источник

PS

Peter Sovietov in Compiler Development
Михаил Бахтерев
Так есть и другие методы описания. СП хороши для теоретического исследования свойств параллельных процессов. Но для практического использования они слишком невыразительны. Приходится делать раскрашенные сети, а это вообще трындец с точки зрения отладки.
Просто Вы не проектировали асинхронные процессоры :) По поводу других методов — конечно! И это ключевой момент. А методы описаны в соотв. учебниках. Про монады там ни слова :)
источник

PS

Peter Sovietov in Compiler Development
MaxGraey
Формализм и символьный анализ очень круто выглядят на бумаге, но столкнувшись с IEEE754 все это летит к чертям, когда оказывается что простая коммутативность не работает для плавающих чисел) Теория и практика не всегда пересекаются особенно в вычеслительной технике
Вроде с ассоциативностью проблемы, а не с коммутативностью? :)
источник

M

MaxGraey in Compiler Development
MaxGraey
Формализм и символьный анализ очень круто выглядят на бумаге, но столкнувшись с IEEE754 все это летит к чертям, когда оказывается что простая коммутативность не работает для плавающих чисел) Теория и практика не всегда пересекаются особенно в вычеслительной технике
Безусловно это тоже можно формаличировать, но все это выливется в чертовски сложные системы
источник

МБ

Михаил Бахтерев in Compiler Development
Peter Sovietov
Просто Вы не проектировали асинхронные процессоры :) По поводу других методов — конечно! И это ключевой момент. А методы описаны в соотв. учебниках. Про монады там ни слова :)
Монады и не описывают ничего асинхронного. Нужны процессы, а это другой уровень абстракций. Но. Я просто к тому, что во всех случаях нужно понятие функции. Оно ключевое. Даже в Сетях Петри. И уметь программировать с функциями (а, на самом деле, если говорить точно, то с алгоритмами, ФП правильнее называть алгоритмическим программированием) полезно. И полезно эти навыки применять в проектировании. Всяко полезнее Сетей Петри. Асинхронные системы я постоянно проектирую, такова уж моя работа.
источник

M

MaxGraey in Compiler Development
Peter Sovietov
Вроде с ассоциативностью проблемы, а не с коммутативностью? :)
с ассоциотивностью тоже, но это хотя бы решено частично приоритетеом операций
источник

МБ

Михаил Бахтерев in Compiler Development
Хотя... Не правильно сказал. Монады могут описывать асинхронное. Но само описание не будет схватывать эту асинхронность.
источник

AK

Andrei Kurosh in Compiler Development
Alexander Tchitchigin
Это одинаково применимо и к императивному программированию. 😉
Это да, только ситхи возводят все в абсолют :) но почему-то идейные воинствующие оопшники мне не попадаются (только один известный персонаж периодически всплывает)
источник

PS

Peter Sovietov in Compiler Development
Михаил Бахтерев
Монады и не описывают ничего асинхронного. Нужны процессы, а это другой уровень абстракций. Но. Я просто к тому, что во всех случаях нужно понятие функции. Оно ключевое. Даже в Сетях Петри. И уметь программировать с функциями (а, на самом деле, если говорить точно, то с алгоритмами, ФП правильнее называть алгоритмическим программированием) полезно. И полезно эти навыки применять в проектировании. Всяко полезнее Сетей Петри. Асинхронные системы я постоянно проектирую, такова уж моя работа.
Нет, ну если так поставить вопрос — против "алгоритмического программирования" вообще сложно что-либо возразить :)

Асинхронность, как сами понимаете, бывает разная. На нижних уровнях это бестактовые схемы, асихронные выч. ядра. Далее — GALS. Далее мы выходим за пределы кристалла и там свои вопросы. Везде используются свои подходы.
источник

МБ

Михаил Бахтерев in Compiler Development
Ну... Я могу рассуждать только о программировании. Про бестактовые системы читал, но, мне кажется, там такая простая модель, как СП, не подойдёт.
источник

PS

Peter Sovietov in Compiler Development
Михаил Бахтерев
Ну... Я могу рассуждать только о программировании. Про бестактовые системы читал, но, мне кажется, там такая простая модель, как СП, не подойдёт.
Вот классическая работа по теме. Картинка на обложке ведь что-то напоминает? :)
источник

МБ

Михаил Бахтерев in Compiler Development
Надо содержимое смотреть
источник

PS

Peter Sovietov in Compiler Development
Это одна из книг Варшавского, специалиста (признанного во всем мире) в этой области.
источник

МБ

Михаил Бахтерев in Compiler Development
Я просто не встречал нигде в реальных проектах СП в каком либо виде.
источник

TS

Timur Safin in Compiler Development
Dr. Friedrich von Never
Нет, на данный момент нельзя. Я порылся в коде компилятора и, кажется, он соответствующие инструкции генерировать не умеет.

Но можно туда законтрибьютить, например :)
помню в оригинальном ТурбоПаскале была прагма для включения range-check вроде {$R+} называлась. Надо такое же принести
источник

Dv

Dr. Friedrich von Never in Compiler Development
Timur Safin
помню в оригинальном ТурбоПаскале была прагма для включения range-check вроде {$R+} называлась. Надо такое же принести
Ага, норм идея
источник

МБ

Михаил Бахтерев in Compiler Development
Мои же собственные потуги обламывались в том месте, где требовалось условное управление потоками. В этих ситуациях сразу происходит взрыв сложности: ингибиторные дуги, моды, глобальные состояния, и так далее, и тому подобное. Совсем не удобно.
источник