Size: a a a

Compiler Development

2020 January 10

KR

K R in Compiler Development
Ну это прекрасно.
источник

FO

FORTRAN ONE LOVE in Compiler Development
а как можно goto сокращать?
источник

KR

K R in Compiler Development
Goto в непаталогических случаях превращается в обычную блочную структуру
источник

FO

FORTRAN ONE LOVE in Compiler Development
завидую этим непаталогическим случаям)
источник

KR

K R in Compiler Development
Если очень интересно, есть статья S. Kosaraju “analysis of structured programs”
источник

KR

K R in Compiler Development
Возможно кто-то из цитирующих делал автоматическое преобразование
источник

FO

FORTRAN ONE LOVE in Compiler Development
K R
Если очень интересно, есть статья S. Kosaraju “analysis of structured programs”
Спасибо!) Надо будет почиттать)
источник

KR

K R in Compiler Development
Если у вас там вычмат, то действовать нужно очень аккуратно - простое раскрытие скобок в схеме Горнера, например, приводит к накоплению ошибок.
источник

FO

FORTRAN ONE LOVE in Compiler Development
я не хочу трогать математику, хочу только перевести с fixed-form на free-form, ввести полные циклы, убрать GOTO и проставить нормальные индентации
источник

FO

FORTRAN ONE LOVE in Compiler Development
ну и еще все в модули запихнуть, чтобы была хоть какая-то проверка на то, как функции вызываются.
источник

KR

K R in Compiler Development
Насчёт форматирования, кстати, PVS-овцы писали в одной из статей. В вычислительном коде с матрицами оно может быть очень важно - "стандартное" форматирование после какого-нибудь clang-format может очень ловко скрывать ошибки в инициализации матриц. Но я не слышал, чтобы кто-то делал автоформат с бережным форматированием.

В вашем случае же вроде просто - достаточно сдвигать строки внутри блока на правильную глубину не занимаясь самодеятельностью вроде вырезания пробелов.

Кстати, вы выяснили, у вас там табуляция есть? И сколько в ней пробелов? 😊
источник

FO

FORTRAN ONE LOVE in Compiler Development
K R
Насчёт форматирования, кстати, PVS-овцы писали в одной из статей. В вычислительном коде с матрицами оно может быть очень важно - "стандартное" форматирование после какого-нибудь clang-format может очень ловко скрывать ошибки в инициализации матриц. Но я не слышал, чтобы кто-то делал автоформат с бережным форматированием.

В вашем случае же вроде просто - достаточно сдвигать строки внутри блока на правильную глубину не занимаясь самодеятельностью вроде вырезания пробелов.

Кстати, вы выяснили, у вас там табуляция есть? И сколько в ней пробелов? 😊
табуляции нет :) все с этим хорошо)
источник

FO

FORTRAN ONE LOVE in Compiler Development
она есть в сборочных скриптах, но я уже осилил, как её выпиливать :)
источник

DP

Dmitry Ponyatov in Compiler Development
а есть какая-то таториалка по реализации pattern matching на каком-нибудь императивном языке?
источник

AK

Andrei Kurosh in Compiler Development
Dmitry Ponyatov
а есть какая-то таториалка по реализации pattern matching на каком-нибудь императивном языке?
в смысле, реализовать самопальный pattern matching с помощью тех средств, которые уже есть в языке?
источник

AT

Alexander Tchitchigin in Compiler Development
Dmitry Ponyatov
а есть какая-то таториалка по реализации pattern matching на каком-нибудь императивном языке?
Делаем Church encoding, а дальше вообще всё просто. 😃
источник

YS

Yuriy Syrovetskiy in Compiler Development
Dmitry Ponyatov
а есть какая-то таториалка по реализации pattern matching на каком-нибудь императивном языке?
SICP, 4.4.2
источник

AK

Andrei Kurosh in Compiler Development
Я прошлым летом ради интереса сделал proof-of-concept паттерн матчинга на C#, вот что получилось:

https://github.com/impworks/matcher
источник

MM

Mikhail Maltsev in Compiler Development
Dmitry Ponyatov
а есть какая-то таториалка по реализации pattern matching на каком-нибудь императивном языке?
Поищите среди статьей Страуструпа, он делал
источник

EM

Evgenii Moiseenko in Compiler Development
есть ещё first-class patterns, но я хз насколько ими удобно пользоваться
https://www.irif.fr/~kesner/papers/first-class-patterns.pdf
https://hackage.haskell.org/package/first-class-patterns
источник