Вопросы с тегом «type-inference»

1
Что делает вывод типов для зависимых типов неразрешимым?
Я видел упомянутое, что системы зависимого типа не являются заразными, но проверяемыми. Мне было интересно, есть ли простое объяснение, почему это так, и есть ли предел «зависимости», где типы могут быть проиндексированы по значениям, ниже какого типа вывод возможен, а выше которого нет?

1
Каковы наиболее сильные системы известных типов, для которых вывод является решающим?
Хорошо известно, что вывод типа Хиндли-Милнера (простой тип вычисления с полиморфизмом) имеет разрешимый вывод типа: вы можете реконструировать основные типы для любых программ без каких-либо аннотаций.λλ\lambda Добавление классов типов в стиле Haskell, похоже, сохраняет эту разрешимость, но дальнейшие добавления делают вывод без аннотаций неразрешимым (семейства типов, GADT, зависимые типы, типы …

1
Почему алгоритм Хиндли-Милнера никогда не даст такой тип, как t1 -> t2?
Я читал об алгоритме типизации Хиндли-Милнере при написании реализации, и видят , что, до тех пор , как каждый переменная связана, вы всегда будете получать либо атомарные тип или типов , где аргументы будут определять окончательный тип, например, t1 -> t1или (t1 -> t2) -> (t1 -> t2)где t1и t2являются …

3
Автоматический Даункинг путем определения типа
В Java, вы должны явно привести, чтобы уменьшить значение переменной public class Fruit{} // parent class public class Apple extends Fruit{} // child class public static void main(String args[]) { // An implicit upcast Fruit parent = new Apple(); // An explicit downcast to Apple Apple child = (Apple)parent; } …

1
Предлагая уточнения типов
На работе мне было поручено вывести некоторую информацию о типах динамического языка. Я переписываю последовательности операторов во вложенные letвыражения, например так: return x; Z => x var x; Z => let x = undefined in Z x = y; Z => let x = y in Z if x then …
11 programming-languages  logic  type-theory  type-inference  machine-learning  data-mining  clustering  order-theory  reference-request  information-theory  entropy  algorithms  algorithm-analysis  space-complexity  lower-bounds  formal-languages  computability  formal-grammars  context-free  parsing  complexity-theory  time-complexity  terminology  turing-machines  nondeterminism  programming-languages  semantics  operational-semantics  complexity-theory  time-complexity  complexity-theory  reference-request  turing-machines  machine-models  simulation  graphs  probability-theory  data-structures  terminology  distributed-systems  hash-tables  history  terminology  programming-languages  meta-programming  terminology  formal-grammars  compilers  algorithms  search-algorithms  formal-languages  regular-languages  complexity-theory  satisfiability  sat-solvers  factoring  algorithms  randomized-algorithms  streaming-algorithm  in-place  algorithms  numerical-analysis  regular-languages  automata  finite-automata  regular-expressions  algorithms  data-structures  efficiency  coding-theory  algorithms  graph-theory  reference-request  education  books  formal-languages  context-free  proof-techniques  algorithms  graph-theory  greedy-algorithms  matroids  complexity-theory  graph-theory  np-complete  intuition  complexity-theory  np-complete  traveling-salesman  algorithms  graphs  probabilistic-algorithms  weighted-graphs  data-structures  time-complexity  priority-queues  computability  turing-machines  automata  pushdown-automata  algorithms  graphs  binary-trees  algorithms  algorithm-analysis  spanning-trees  terminology  asymptotics  landau-notation  algorithms  graph-theory  network-flow  terminology  computability  undecidability  rice-theorem  algorithms  data-structures  computational-geometry 

1
Краткий пример экспоненциальной стоимости вывода типа ML
Мне стало известно, что стоимость вывода типа в функциональном языке, таком как OCaml, может быть очень высокой. Утверждение состоит в том, что существует последовательность выражений, такая, что для каждого выражения длина соответствующего типа экспоненциально зависит от длины выражения. Я разработал последовательность ниже. Мой вопрос: знаете ли вы последовательность с более …

2
Определить список, используя только систему типов Хиндли-Милнера
Я работаю над небольшим компилятором лямбда-исчисления, который имеет работающую систему логического вывода типа Хиндли-Милнера, а теперь также поддерживает рекурсивный метод давайте (не в связанном коде), который, как я понимаю, должно быть достаточно для завершения Тьюринга . Проблема сейчас в том, что я понятия не имею, как создать списки поддержки или …

3
Эквивалентность анализа потока данных, абстрактной интерпретации и вывода типа?
Ответ Бабу на недавний вопрос напоминает мне о том, что когда-то я читал статью об эквивалентности (с точки зрения как фактов, которые можно вывести или доказать, так и сложности времени выполнения алгоритма вывода) анализа потока данных , абстрактная интерпретация , и тип логического вывода . В некоторых случаях (например, между …

2
Вывод типа + перегрузка
Я ищу алгоритм вывода типов для разрабатываемого языка, но я не смог найти тот, который удовлетворял бы моим потребностям, потому что они обычно таковы: à la Haskell, с полиморфизмом, но без специальной перегрузки C ++ (авто), в котором у вас есть временная перегрузка, но функции мономорфны В частности, моя система …
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.