0
ответов

Вывод типа результата в продолжениях

Можно ли удалить некоторые типы из следующего кода: import util.continuations._ object TrackingTest extends App { implicit def trackable(x: Int) = new { def tracked[R] = shift { cf: (...
вопрос задан: 28 May 2012 07:44
0
ответов

Функция OCaml над полиморфными вариантами недостаточно полиморфна?

OCaml дает функцию `A -> 1 | _ -> 0 тип [> `A] -> int, но почему это не [> ] -> int? Это мое рассуждение: функция `B -> 0 имеет тип [<`B] -> int. Добавление `A -&...
вопрос задан: 26 May 2012 19:22
0
ответов

Различный вывод типов для `def` и `val` в Scala

Я заметил разницу в выводе типов в Scala применительно к def и val. Используя def, я могу определить абстрактный nullary-метод const, возвращающий некоторое значение типа Int => Int. При реализации ...
вопрос задан: 24 May 2012 13:17
0
ответов

функция не может соответствовать типу

У меня есть функция, как показано ниже: foo :: Int -> a -> [a] foo nv = bar n где bar :: Int -> [a] bar n = take n $ повторить v, используя ghci, сообщить об этой ошибке: Не удалось ...
вопрос задан: 22 May 2012 20:02
0
ответов

Вывод типа метода в спецификации Java

В настоящее время я пишу компилятор Java и реализовал раздел 15.12.2.7. JLS7 (http://docs.oracle.com/javase/specs/jls/se7/html/jls-15.html#jls-15.12.2.7), один из самых раздражающих...
вопрос задан: 21 May 2012 19:11
0
ответов

Вывод рекурсивных выражений с использованием Хиндли Милнера и ограничений

Я пытаюсь сделать вывод о типе следующего выражения: let rec fix f = f (fix f), которому должен быть присвоен тип (a -> a) -> a После использования восходящего алгоритма (описанного в ...
вопрос задан: 14 May 2012 22:10
0
ответов

Путаница с выводом типа в Haskell

Я не понимаю, почему работает следующая функция :isLongerThanN ::Integral n => n -> [a] -> Bool isLongerThanN n xs = length xs > fromIntegral n, но следующее не работает :...
вопрос задан: 29 April 2012 03:21
0
ответов

В чем разница между выводом типов в Scala и C++11?

Мне любопытно, в чем разница между выводом типов в Scala и C++11. В каких ситуациях я должен указывать типы на одном языке, но не на другом? Одно отличие, по-видимому, состоит в том, что...
вопрос задан: 21 April 2012 07:43
0
ответов

Почему в этом коде не работает вывод типов?

Допустим, у меня есть сервисный интерфейс, который выглядит так: открытый интерфейс IFooService { FooResponse Foo (запрос FooRequest); } Я хотел бы выполнить некоторые сквозные задачи при вызове...
вопрос задан: 19 April 2012 21:10
0
ответов

Почему Haskell выводит конкретный тип (очевидно) непоследовательно?

Я нахожусь в процессе написания игрушечной (физической) векторной библиотеки, и у меня возникли проблемы с тем, что GHC настаивает на том, чтобы функции имели целые числа в своем типе. Я хочу, чтобы векторы умножали векторы, а также...
вопрос задан: 12 April 2012 05:37
0
ответов

Как определить классы case с элементами с параметрами несвязанного типа?

Учитывая определение класса с привязанным параметром типа Animal[A <: String], кажется, что компилятор Scala не выводит B <: String из Animal[B]. Разрешен ли вывод? Как помочь ...
вопрос задан: 5 April 2012 12:05
0
ответов

Невозможно определить общий тип с необязательными параметрами

Учитывая следующую сигнатуру метода, почему это происходит, когда параметр явно named компилятор не может автоматически определить тип? Visual Studio 2010 SP1 может определить тип и показывает...
вопрос задан: 27 March 2012 22:12
0
ответов

Почему не работает передача Nil в foldLeft?

Когда я создаю список с помощью foldLeft, меня часто раздражает необходимость явно вводить вводимый параметр, и я хочу вместо этого просто использовать `Nil' — вот надуманный пример: scala> List(1,2,3).. ..
вопрос задан: 20 March 2012 11:33
0
ответов

Поддерживает ли C# вывод возвращаемого типа?

Это просто любопытство, есть ли какая-то фундаментальная вещь, останавливающая что-то подобное (или поправьте меня, если уже есть какой-то способ): public TTo Convert(TFrom from) { ... } ...
вопрос задан: 19 March 2012 04:27
0
ответов

D Автоматические ошибки типов (проблема с 64-битной версией?)

Немного предыстории: я работаю на Mac OSX Lion (очевидно, 64-битной версии) и долгое время являюсь Java-разработчиком. заинтересован в изучении D. Я взял копию языка программирования D, и я запутался в некоторых ...
вопрос задан: 16 March 2012 05:22
0
ответов

Какие типы и / или термины в system-f не могут быть выражены в Hindley Milner

Я помню, как где-то читал, что Hindley Milner был ограничением для system-f. Если это так, не мог бы кто-нибудь предоставить мне некоторые термины, которые можно ввести в system-f, но не в HM.
вопрос задан: 1 March 2012 12:09
0
ответов

Haskell: поощрение GHC к выводу правильного промежуточного типа

Я подумал, что было бы неплохо разрешить произвольное последовательное сравнение в Haskell, чтобы вы могли выполнять простые проверки диапазона, например: x <= y
вопрос задан: 19 February 2012 17:28
0
ответов

В выводе типа Scala не учитывается, что эти типы идентичны, какими бы они ни были

У меня есть шаблон проектирования, в котором есть генератор объектов (MorselGenerator и его дочерние элементы), любой экземпляр которого всегда генерирует один и тот же точный тип объекта (Morsel и его дочерние элементы), но ...
вопрос задан: 18 February 2012 22:43
0
ответов

Проблемы с выводом типа GHC

Вопрос. Есть ли способ заставить этот код работать без явной подписи типа? Код. Во-первых, у меня есть гораздо более удобный альтернативный класс MonadTrans, вдохновленный Data.Newtype. Похоже ...
вопрос задан: 15 February 2012 21:49
0
ответов

Почему этот код scala сообщает об ошибке компиляции: для рекурсивного значения x требуется тип

Код scala прост: case class X (id: Option [String] = None, username: Option [String]) object X {def create (x: X): X = {x.copy (id = Some ("111"))} } class Test {def test () {...
вопрос задан: 5 February 2012 10:07
0
ответов

Почему var выводит тип объекта, а не XmlNode в цикле XmlNodeList?

Если один проходит через XmlNodeList, как этот foreach (XmlNode foo в xmlNodeList) {string baa = foo. Атрибуты ["baa"]. Value;} все работает, как ожидалось - foo явно относится к типу XmlNode, а ...
вопрос задан: 3 February 2012 10:28
0
ответов

Тип аргумента закрытия с несколькими параметрами не определен

У меня есть фрагмент кода, который я не могу заставить вести себя так, как мне хотелось бы. У меня есть класс, определенный следующим образом (урезанный для этого): class Behavior [T] (частное правило val: Time => T) {def ...
вопрос задан: 2 February 2012 18:59
0
ответов

Несоответствие Scala при отображении карты

Я делаю свои первые интересные шаги (не на уровне hello-world) с помощью Scala (2.9.1) и застрял, пытаясь понять очень неинформативное сообщение об ошибке. Это выглядит примерно так: ошибка: несоответствие типов; ...
вопрос задан: 11 January 2012 00:15
0
ответов

Как GHCi выбирает имена для переменных типа?

При использовании интерактивного интерпретатора GHC можно запросить предполагаемый тип выражения: Prelude>: t map map :: (a -> b) -> [a] -> [b] Похоже, что он принимает имена ...
вопрос задан: 4 January 2012 20:00
0
ответов

Сокращение при вызове общих методов в C #

Если я есть метод void foo (T bar) {} Я могу успешно назвать его так: string s = string.Empty; foo (s); Насколько я понимаю, компилятор / среда выполнения может сделать вывод о типе, однако, если я изменю ...
вопрос задан: 9 December 2011 11:27
0
ответов

Почему нельзя вывести эти общие типы?

У меня есть следующий код: открытый статический класс CardView {открытый статический объект Column (Func field) {return null; } } открытый класс Person ...
вопрос задан: 7 December 2011 16:33
0
ответов

Вывод типа Хиндли Милнера в F #

Может ли кто-нибудь объяснить пошаговый вывод типа в следующей программе на F #: let rec sumList lst = match lst with | [] -> 0 | hd :: tl -> hd + sumList tl Я специально хочу увидеть ...
вопрос задан: 6 December 2011 07:29
0
ответов

Выведение типа Scala для конструктора типов

У меня вопрос относительно вывода типов в конструкторах типов Scala. Я использую Scala 2.9.1 ... Предположим, я определил Tree: типаж Sealed Tree [C [_], A] case class Leaf [C [_], A] (a: A) extends ...
вопрос задан: 3 December 2011 23:51
0
ответов

Почему наименьшая верхняя граница java.lang.Integer и java.lang.Double определяется как ациклический тип?

Рассмотрим следующий код: val foo = if (true) new java.lang.Double (4) else new java.lang.Integer (4) Выведенный тип для foo: Number with Comparable [_>: Double ...
вопрос задан: 13 November 2011 03:44
0
ответов

Вывод типа Scala для перегруженного метода

Для данного кода: class Rational (n: Int, d: Int) {require (d! = 0) private val g = gcd (n.abs, d.abs) val числитель = n / g val знаменатель = d / g def this (n: Int) = this (n, 1) override ...
вопрос задан: 21 October 2011 13:09