Size: a a a

Compiler Development

2020 April 23

AN

Alexander Nasonov in Compiler Development
А у нас в отрасли всякие стохастические градиентные спуски, ковариационные матрицы, random forests, decision trees, баесовские модели, можно даже машинг лернинг. Кто во что горазд. И почти везде библиотеки работают с плавающей точкой.
источник

AN

Alexander Nasonov in Compiler Development
Ещё Time series, exponentially weighted average  тп
источник

AG

Alex Gryzlov in Compiler Development
там то понятно, скорость важнее точности
источник

AN

Alexander Nasonov in Compiler Development
Alex Gryzlov
там то понятно, скорость важнее точности
Да. И причём компиляторы из коробки заточены под другое и их можно легко “уделать” специализированным миникомпилятором для DSL ;)
источник

AN

Alexander Nasonov in Compiler Development
Книжка с моей полки была для этого куплена https://www.amazon.co.uk/Handbook-Floating-Point-Arithmetic-Jean-Michel-Muller/dp/3030095134
источник

AN

Alexander Nasonov in Compiler Development
В новое издание они вставили страничку про CompCert C compiler (он что, поддерживает плавающую точку???), в моем старом издании этого нету.
источник

T

TGG in Compiler Development
Оффтоп, но...
источник

T

TGG in Compiler Development
У кого-нибудь исходники первого сурса есть?
источник

DP

Dmitry Ponyatov in Compiler Development
а есть ли какие-то языки построенные только и исключительно на pattern match ?
чем они от Пролога отличаются?
источник

KR

K R in Compiler Development
refal
источник

DP

Dmitry Ponyatov in Compiler Development
а что-то менее эзотерическое по синтаксису?
источник
2020 April 24

VK

Val Krylov in Compiler Development
Pattern matching начинался с языка Snobol и был ближе к парсер-комбинаторам, чем к тем огрызкам в функциональщине, по которым большинству известен этот термин.
источник

PS

Peter Sovietov in Compiler Development
Val Krylov
Pattern matching начинался с языка Snobol и был ближе к парсер-комбинаторам, чем к тем огрызкам в функциональщине, по которым большинству известен этот термин.
О каких «огрызках» идет речь? :)
источник

VK

Val Krylov in Compiler Development
Матчинг по алгебраическим типам в Hope, перетёкший в последовавшие функциональные языки и сейчас перетекающий в матчинг по типам в мейнстриме.
источник

PS

Peter Sovietov in Compiler Development
Val Krylov
Матчинг по алгебраическим типам в Hope, перетёкший в последовавшие функциональные языки и сейчас перетекающий в матчинг по типам в мейнстриме.
По моим наблюдениям, степени выразительности сопоставления с образцом никогда не бывает достаточно. Поэтому не так уж много толку от встроенной реализации в ЯП. Если конечно речь не о DSL.
К примеру, в том же SNOBOL был откат и работа с образцами, как с объектами первого класса. Но зато не было работы на уровне термов, что есть в "огрызках" :)
источник

VK

Val Krylov in Compiler Development
Peter Sovietov
По моим наблюдениям, степени выразительности сопоставления с образцом никогда не бывает достаточно. Поэтому не так уж много толку от встроенной реализации в ЯП. Если конечно речь не о DSL.
К примеру, в том же SNOBOL был откат и работа с образцами, как с объектами первого класса. Но зато не было работы на уровне термов, что есть в "огрызках" :)
Точнее будет сказать, что она была не type safe.
источник

PS

Peter Sovietov in Compiler Development
Val Krylov
Точнее будет сказать, что она была не type safe.
Да нет, ну там же была работа только на строках. В отличие от Рефала, TREE-META и других ЯП 60-х.
источник

VK

Val Krylov in Compiler Development
Peter Sovietov
Да нет, ну там же была работа только на строках. В отличие от Рефала, TREE-META и других ЯП 60-х.
Что совершенно не мешало использовать строки в качестве аналога структур данных.
источник

PS

Peter Sovietov in Compiler Development
Я к тому говорю, что важнее не встроенные средства, в возможности реализовать пользовательские механизмы PM. Те же комбинаторы парсеров. Они легко реализуются в классическом ФП. В современном — со странностями и монадической идеологией, но тоже ведь реализуются! :)
источник

VK

Val Krylov in Compiler Development
Они реализуются в Prolog через альтернативные синтаксисы (DCG, DCTG), но для той экосистемы это привычно.
источник