Resultados de la búsqueda a petición "dependent-type"
Uso de igualdad booleana idiomática (singletons)
Quiero crear una estructura de datos para almacenar elementos etiquetados a nivel de tipo usando Symbol. Esta: data Store e (ss :: [Symbol]) where Nil :: Store e '[] Cons :: e s -> Store e ss -> Store e (s ': ss) data HasElem (a :: k) (as :: ...
¿Cuál es la alternativa preferida a Fin de Idris en Haskell?
Me gustaría tener un tipo que pueda contener valores de 0 a n, donde n vive en el nivel de tipo. Estaba intentando algo como: import GHC.TypeLits import Data.Proxy newtype FiniteNat n = FiniteNat { toInteger :: Integer } smartConstructFiniteNat ...
No se pudo deducir KnownNat en dos existenciales con respecto a la biblioteca de singletons
Estaba experimentando con la biblioteca de singletons y encontré un caso que no entiendo. {-# LANGUAGE GADTs, StandaloneDeriving, RankNTypes, ScopedTypeVariables, FlexibleInstances, KindSignatures, DataKinds, StandaloneDeriving #-} ...
¿Puedes crear funciones que devuelvan funciones de una aridad dependiente en un lenguaje de tipo dependiente?
Por lo que sé sobre los tipos dependientes, creo que debería ser posible, pero nunca antes había visto un ejemplo de esto en un lenguaje de tipo dependiente, por lo que no estoy exactamente seguro de por dónde empezar. Lo que quiero es una ...
Tipo de argumento del constructor de clase de caso según el valor del argumento anterior
Estoy tratando de hacer lo siguiente trait Stateful { type State } case class SystemState(system: Stateful, state: system.State) // does not compileEs decir, el tipo destatedepende de (el valor de)system. Eso, sin embargo, no es ...
Haskell: Cómo escribir una instancia de 'Monoid' para algo que depende de parámetros
Estoy trabajando en una pequeña biblioteca para la universidad que hace cálculos enteros en ungrupo cíclico [https://en.wikipedia.org/wiki/Cyclic_group]; Cosas como: (3 (% 11)) + (10 (% 11)) --> (2 (% 11))'Enteros (% n)' claramente formar ...
¿Puede sizeof anidado dos veces ser una expresión dependiente?
Noté que gcc 5.0 rechaza el siguiente código, mientras que clang 3.6 lo acepta. template<int n> struct I { typedef int Type; }; template<typename T> struct A { typedef I<sizeof(sizeof(T))>::Type Type; };Los dos compiladores parecen diferir sobre ...
¿Alguna razón por la que Scala no admite explícitamente los tipos dependientes?
Existen tipos dependientes de la ruta y creo que es posible expresar casi todas las características de lenguajes como Epigram o Agda en Scala, pero me pregun...
¿Qué biblioteca de vectores usar en coq?
Me pregunto, ¿hay una biblioteca comúnmente utilizada para vectores en coq, es decir? listas indexadas por su longitud en su tipo. Algunos tutoriales hacen referencia a Bvector, pero no se encuentra cuando intento importarlo. Hay ...
replicar la función para una lista indexada por longitud usando GHC.TypeLits y singletons
Estoy tratando de escribir una función de réplica para una lista indexada por longitud usando la maquinaria deGHC.TypeLits [https://hackage.haskell.org/package/base-4.11.0.0/docs/GHC-TypeLits.html], solteros ...