Вопросы по теме 'type-variables'

В чем разница между ограниченным TypeVar и Union?
Если я хочу иметь тип, который может быть несколькими возможными типами, Union s, похоже, то, как я это представляю: U = Union[int, str] U может быть int или str . Я заметил, что TypeVar s допускает необязательные аргументы var-arg,...
2001 просмотров

Как мне объявить нативный интерфейс с переменными типа во Фреге?
Я хотел бы изначально объявить интерфейс Java во Фреге, который имеет общий тип. Например, возьмем ObservableList из JavaFX. Опуская общий тип E, он работает для определения data ObservableList = mutable native...
108 просмотров

ScopedTypeVariables не работают с вложенными предложениями where?
Это ужасно надуманный пример, но в любом случае... эта проверка типов: newtype Foo c = Foo { runFoo :: c -> Bool } newtype Bar c = Bar { runBar :: Int -> c } foo :: Eq c => Bar c -> (c -> [c]) -> Bar (Foo c) foo bar f = Bar res...
161 просмотров
schedule 18.06.2022

Типы высшего порядка как переменные типа в Haskell
У меня есть класс: import Linear class Coordinate c where rotate :: Num a => Quaternion a -> c a -> c a translate :: Num a => V3 a -> c a -> c a , для которого я определил экземпляры instance Coordinate V3...
121 просмотров

Java — несовместимые типы: объект не может быть преобразован в переменную типа (стеки в DFS)
Я пытаюсь реализовать поиск в глубину для графиков с использованием стеков. Однако я продолжаю получать ошибки о переменной типа. Вот часть моего кода: public Result<T> depthFirstSearchFrom(String vertexId, Predicate< IVertex<T>...
2471 просмотров

Алгоритм W и приведение мономорфного типа
Я пытаюсь написать свой собственный алгоритм вывода типов для игрушечного языка, но я упираюсь в стену — я думаю, что алгоритм W можно использовать только для чрезмерно общих типов. Вот выражения: Expr ::= EAbs String Expr | EApp Expr...
76 просмотров

Что такое сколемы?
Эй! GHCi нашел Скулемов в моем коде! ... Couldn't match type `k0' with `b' because type variable `b' would escape its scope This (rigid, skolem) type variable is bound by the type signature for groupBy :: Ord b => (a -> b) -> Set...
6557 просмотров
schedule 07.02.2023

Как я могу выразить foldr в терминах foldMap для последовательностей, выровненных по типу?
Я играю с последовательностями, выровненными по типу , и в частности, я возился с идеей сложить их. Складная последовательность, выровненная по типу, выглядит примерно так: class FoldableTA fm where foldMapTA :: Category h =>...
184 просмотров

Подпись Java 'reduceLeft' / Аргументы типа с нижней границей
Следующая подпись действительна и обычно используется в Scala: trait Collection[A] { def reduceLeft [B >: A] (f: (B, A) => B): B } Однако, поскольку >: является Scala-эквивалентом super в Java, моей первой идеей преобразовать...
293 просмотров

Ошибка наследования несвязанных значений по умолчанию для переменных типа: почему?
Отказ от ответственности : это не в этом случае (хотя ошибка звучит так же): класс наследует несвязанные значения по умолчанию для spliterator() от типов java.util.Set и java.util.List и вот почему: рассмотрим два интерфейса (в пакете " a...
2410 просмотров
schedule 18.04.2023

Получение класса параметра типа из реализующего класса
Допустим, у меня есть какой-то класс в Java, который реализует List<T> с именем Foo , который расширяет его с помощью String , как я могу получить переменную типа List (в этом примере это String )? [Просто знать, прежде чем я пойду и...
47 просмотров
schedule 12.11.2022

Haskell GADT 'Show' - вывод переменной типа экземпляра
Этот код {-# LANGUAGE GADTs #-} data Expr a where Val :: Num a => a -> Expr a Eq :: Eq a => Expr a -> Expr a -> Expr Bool eval :: Expr a -> a eval (Val x) = x eval (Eq x y) = (eval x) == (eval y) instance Show a =>...
333 просмотров

Как узнать тип значения карты Карта (ключ-›значение) в Scala?
У меня проблема со значением Map("id"), оно может иметь два типа: String или Map[String,String]. Case 1: val a = Map("id" -> "123") Case 2: val a = Map("id"-> Map("ide"->"abcd")) Я хочу сделать проверку с помощью случая Match...
587 просмотров
schedule 09.03.2023

Почему Haskell не может вывести этот тип
Я пытался написать программу для реализации полиномов в произвольном поле, математической структуре. В качестве языка программирования я выбрал Haskell и использовал расширение языка GADTs . Однако я не понимаю, почему GHCi не может вывести...
79 просмотров
schedule 07.04.2023