Size: a a a

Compiler Development

2021 April 29

AG

Alex Gryzlov in Compiler Development
(exists x:int, x>0, x<4)
источник

EL

Evgeny Link in Compiler Development
Идея для сайд-проекта: Haskell-like синтаксис, способный однозначно выразить идиомы из программирования и большей части математики
источник

AG

Alex Gryzlov in Compiler Development
это вы сейчас агду изобрели
источник

EL

Evgeny Link in Compiler Development
forall (x:int|x > 1) {x > 0}
источник

EL

Evgeny Link in Compiler Development
Или
forall (x|int x|x > 1) {x > 0}
Если считать "принадлежность к типу ~ условие"
источник

AG

Alex Gryzlov in Compiler Development
ну это дополнительный сахар
источник

AG

Alex Gryzlov in Compiler Development
с конструктивной точки зрения вы говорите "дайте мне x и свидетельство того что он больше единицы, а я вам отдам свидетельство того что он больше нуля"
источник

AG

Alex Gryzlov in Compiler Development
т.е. это функция от двух аргументов
источник

AG

Alex Gryzlov in Compiler Development
существование это соответственно "у меня есть тройка из x, свидетельства того что он больше нуля и свидетельства того что он меньше четырех"
источник

AG

Alex Gryzlov in Compiler Development
т.е. трехместный тупл
источник

AG

Alex Gryzlov in Compiler Development
оба квантора связаны каррированием так же как им связаны функции и туплы
источник

s

suhr in Compiler Development
tldr dependent sum & dependent product
источник

EL

Evgeny Link in Compiler Development
А вот и категористы подъехали
источник

AG

Alex Gryzlov in Compiler Development
я предпочитаю абстрактные pi/sigma, связь с категорными произведениями и суммами поначалу только запутывает, потому что названия "смещены" :)
источник

AG

Alex Gryzlov in Compiler Development
ну если влазить в типы, без категорий не обойтись, это аналог пресловутой теории моделей для них
источник

AG

Alex Gryzlov in Compiler Development
это конечно если влазить именно в "механизм" типов, для формализации высказываний на них оно необязательно
источник

EL

Evgeny Link in Compiler Development
Кажется кто-то опять до восьми утра просидит в википедии и nLab...
источник

EL

Evgeny Link in Compiler Development
Есть какие-то концепты, которые плохо/сложно выражаются в парадигме "everything is a function" или "everything is a list"?
источник

EL

Evgeny Link in Compiler Development
И есть ли ещё какие-то *фундаментальные типы*, которыми можно выразить всё?

inb4: "просто посмотри публикации по Curry-Howard"
источник

s

suhr in Compiler Development
Да, коуравнители.
источник