0
ответов

Несколько нижних границ типа в Scala

Я заметил, что tuple.productIterator всегда возвращает Iterator [Any], и поинтересовался, нельзя ли установить несколько нижних границ (чтобы можно было быть итератором самого низкого общего супертипа). Я ...
вопрос задан: 23 May 2017 11:44
0
ответов

в haskell, зачем Мне нужно указать ограничения типа, почему компилятор не может их понять?

Рассмотрим функцию, добавьте ab = a + b Это работает: * Main> add 1 2 3 Однако, если я добавлю а подпись типа, указывающая, что я хочу добавить объекты того же типа: add :: a -> a -> a add ab = ...
вопрос задан: 21 April 2017 09:21
0
ответов

Связывание имени в подписи типа с использованием DataKind

Итак, я наконец нашел задачу, в которой я мог бы использовать новое расширение DataKinds (используя ghc 7.4.1). Вот Vec, который я использую: data Nat = Z | S Nat получение (Eq, Show) данных Vec :: Nat -> * -> * ...
вопрос задан: 15 January 2014 19:47
0
ответов

java Generics Wildcard

У меня вопрос об использовании подстановочных знаков в общих типах Java: в чем основное отличие List и List ? Когда я буду использовать любой из них?
вопрос задан: 11 April 2013 21:13
0
ответов

Подробное описание экзистенциальной квантификации Haskell

У меня есть общее представление о том, что такое экзистенциальная квантификация по типам и где ее можно использовать. Однако, исходя из моего опыта, есть много предостережений, которые необходимо понять, чтобы использовать ...
вопрос задан: 9 April 2013 18:19
0
ответов

Что такое унифицированная система типов?

Я читал сравнение C # и Java, и это первое в списке «Однокорневая (унифицированная) система типа». Можете ли вы описать, что означает однокоренная (унифицированная) система типов?
вопрос задан: 13 January 2013 02:44
0
ответов

Функции не просто имеют типы: Они являются типами. И виды. И сорта. Помогите собрать взорванный мозг воедино

Я занимался своей обычной рутиной "Прочитать главу LYAH перед сном", чувствуя, что мой мозг расширяется с каждым примером кода. В этот момент я был убежден, что понимаю основную крутость ...
вопрос задан: 19 December 2012 01:07
0
ответов

Явные несоответствия в одноэлементных типах

У меня есть пара вопросов о типах singleton, но, поскольку они оба очень тесно связаны, я размещаю их в одной теме. Q1. Почему #1 не компилируется, а #2 компилируется? идентификатор защиты (x :Любой ):...
вопрос задан: 19 August 2012 08:42
0
ответов

Haskell-подобная система типов в C

Мне было интересно, можно ли интегрировать мощную систему типов haskell в такой язык, как C, и при этом иметь возможность выполнять эффективное низкоуровневое программирование?
вопрос задан: 17 August 2012 04:22
0
ответов

что такое язык с полным выводом типа? а ограничения такого языка?

Насколько я знаю, любой язык программирования, которому не требуется писать аннотации типов в исходном тексте при написании функции или модуля, и если этот фрагмент кода является «корректным по типу», компилятор будет ...
вопрос задан: 16 August 2012 14:46
0
ответов

Как язык c# предотвращает ковариантность универсальных методов, если они не содержат методов, требующих T в качестве входных данных?

Я читал об изменениях, которые принесет .NET4.5, и в этом сообщении в блоге я наткнулся на то, чего не знал и не понимал. Говоря о реализации readonly...
вопрос задан: 18 June 2012 12:05
0
ответов

Какова теоретическая основа экзистенциальных типов?

Haskell Wiki хорошо объясняет, как использовать экзистенциальные типы, но я не совсем понимаю лежащую в их основе теорию. Рассмотрим этот пример экзистенциального типа: данные S = forall a. Покажите a =&...
вопрос задан: 25 May 2012 16:54
0
ответов

OCaml Printf.sprintf

Почему происходит такое поведение? #Printf.sprintf ("Foo %d %s" )2 "bar";;-:string = "Foo 2 bar" #Printf.sprintf ("Foo %d" ^ "%s" )2 "bar";; Printf.sprintf ("Foo %d" ^ "%s" )2 "bar";; Ошибка :...
вопрос задан: 2 May 2012 01:12
0
ответов

Почему имена образуют вид, а не только тип?

Некоторое время назад в одном из расширений Haskell (не могу найти ссылку ), а недавно в Уре обнаружил, что имена (например, полей записи )образуют Вид. Может кто-нибудь объяснить, почему абстракции типов недостаточно...
вопрос задан: 24 April 2012 11:59
0
ответов

Небольшие и хорошие проекты Scala для изучения Scala — особенно функционального программирования и система типов [закрыто]

Я изучаю scala несколько месяцев, но все еще на начальном уровне. Теперь я обнаружил, что у меня большие проблемы с функциональным программированием и системой типов scala. Я пытался найти некоторые документы и блоги, ...
вопрос задан: 10 April 2012 12:00
0
ответов

Scala — Супертип параметра типа

Как в Scala сделать что-то вроде этого: def cast [Type] (x:_ >: Type, errMsg: String): Type = { if (x.isInstanceOf [Type]) { x.asInstanceOf[Type] } else { throw new ...
вопрос задан: 28 March 2012 09:02
0
ответов

Что означает оператор `#` в Scala?

Я вижу этот код в этом блоге: Программирование на уровне типов в Scala: // определение абстрактных типов и границ trait Recurse {type Next <: Recurse // это тип определения рекурсивной функции ...
вопрос задан: 25 February 2012 09:57
0
ответов

Как использовать UndecidableInstances локально?

Да, я знаю, что UndecidableInstances может быть плохим. Я очень старался спроектировать свой модуль так, чтобы он не нуждался в нем, однако у меня получилось что-то вроде этого: instance Foo x (C x y) => Bar (C x y) where ...
вопрос задан: 14 February 2012 02:27
0
ответов

Границы параметров типа Scala

У меня проблемы с пониманием системы границ типов Scala. Я пытаюсь создать класс-держатель, содержащий элементы типа T, который может выполнять итерацию по элементам типа A. На данный момент у меня есть следующее: ...
вопрос задан: 6 February 2012 04:38
0
ответов

Как избавиться от этой двусмысленности?

Я почти уверен, что об этом уже спрашивали раньше, однако мне не удалось найти правильный ответ: я попытался устранить двусмысленность в следующем примерном фрагменте кода: {- # LANGUAGE ...
вопрос задан: 7 December 2011 14:34
0
ответов

Допустим ли Милнер, что полиморфизм является признаком ранга 2?

пусть a = b в c можно рассматривать как синтаксический сахар для (\ a -> c) b, но в типизированная настройка вообще не так. Например, в исчислении Милнера пусть a = \ x -> x in (a True, a 1) равно ...
вопрос задан: 28 November 2011 15:23
0
ответов

Почему необязательный ввод в Dart?

http: / /www.dartlang.org/docs/spec/dartLangSpec.pdf В спецификации языка для Dart упоминается ниже. Dart поддерживает дополнительную типизацию в зависимости от типов интерфейса. Система типов не работает из-за ...
вопрос задан: 21 November 2011 10:16
0
ответов

Объединение интерфейсов без объединения

Я подумал, есть ли в C ++ или Java способ сделать что-то вроде этого Interface IF1 {.... }; Интерфейс IF2 {.... }; function f (Object o: реализует IF1, IF2) {... } означает ...
вопрос задан: 4 November 2011 11:48
0
ответов

Зависимые типы для проверки структурированных данных

Прежде всего, я действительно не знаю, что не так с зависимыми типами и почему мы не видим их реализованными в существующих языках для практического программирования, вместо того, чтобы изобретать всевозможные уловки (...
вопрос задан: 10 October 2011 08:24
0
ответов

Можно ли реализовать эту функциональность с помощью системы типов Haskell?

В Scala операции более высокого порядка над коллекциями всегда возвращают наилучший из возможных типов в контексте. Например, в случае BitSet, если вы сопоставляете int с int, вы получаете BitSet, но если вы сопоставляете int ...
вопрос задан: 9 October 2011 17:12
0
ответов

Какие системы типов могут предотвратить приостановку цели в логических языках?

Из раздела 3.13.3 учебного пособия по карри: Операции с остатком называются жесткими, а операции с ограничением - вызываются гибкий. Все определенные операции являются гибкими, тогда как большинство примитивных ...
вопрос задан: 7 September 2011 18:22
0
ответов

Для чего полезны проекции типов?

Для чего полезны проекции типов в Scala? Почему Поддерживает ли система типов Scala как проекции типов, так и типы, зависящие от пути? Каково было обоснование этого проектного решения?
вопрос задан: 12 August 2011 20:28
0
ответов

Есть ли преимущества стирания типа для Scala?

Я много слышал о разных языках JVM, но все еще находится в парном режиме , которые предлагают как-то реализовать реификацию. Я наполовину вспомнил об этом нытье (или полностью вообразил, не знаю, какой) ...
вопрос задан: 5 August 2011 01:48
0
ответов

Можно ли наложить ограничения неравенства на переменные типа haskell?

Можно ли наложить ограничение неравенства на переменные типа функции, a la foo :: (a ~ b) => a -> b как в документации по семейству типов GHC,кроме неравенства, а не равенства? Я понимаю ...
вопрос задан: 4 August 2011 15:14
0
ответов

Почему элементы типа Scala выбираются с хешем вместо точки?

В Scala синтаксис для выбора типа из класс отличается от выбора чего-либо еще из класса. В первом случае в качестве оператора выбора вместо точки используется хеш. Почему ...
вопрос задан: 13 July 2011 08:22