Resultados de la búsqueda a petición "sml"

3 la respuesta

ML estándar Expandir lista

Direccione Funciónexpand que recibe una lista de cualquier tipo y un número enteron, y devuelve una lista en la que cada elemento de la lista de entrada se replican veces. Por ejemplo, expandir [1,2,3] 3 debe evaluarse a [1,1,1,2,2,2,3,3,3]. ...

1 la respuesta

Intercambie pares de elementos en una lista utilizando la coincidencia de patrones

Necesito usar técnicas de coincidencia de patrones, para intercambiar recursivamente cada par de elementos en una lista. Entonces,[1, 2, 3, 4, 5] volvería[2, 1, 4, 3, 5]. Dos cosas que he encontrado: List.length: para devolver la longitud. Lo ...

1 la respuesta

Cómo dibujar un árbol de análisis de inferencia de tipos para sml

Así que estoy trabajando en mi práctica final, hay un problema para pedirme que dibuje un árbol de análisis para este código sml: fun ff f x y = if (f x y) then (f 3 y) else (f x "zero") val ff = fn : (int -> string -> bool) -> int -> string -> ...

1 la respuesta

Verdadero QuickSort en ML estándar

Ya queSolución ML estándar de RosettaCode [https://rosettacode.org/wiki/Sorting_algorithms/Quicksort#Standard_ML]es una versión muy lenta de Quicksort según la pregunta (y discusión) "¿Por qué el quicksort minimalista de Haskell no es un ...

2 la respuesta

Sml doblando un árbol

Estoy tratando de obtener el producto de un árbol usando la función de plegado hasta ahora, esto es lo que tengo. Estoy confundido sobre cómo usar el método de plegado al cruzar el árbol datatype 'a bin_tree = Leaf of 'a | Node of 'a bin_tree * ...

2 la respuesta

Diferencia entre "local" y "let" en SML

No pude encontrar una respuesta amigable para principiantes sobre cuál es la diferencia entre las palabras clave "local" y "let" en SML. ¿Podría alguien dar un ejemplo simple y explicar cuándo se usa uno sobre el otro?

1 la respuesta

¿Cómo decidir si se debe parametrizar a nivel de tipo o de módulo al diseñar módulos?

Estoy trabajando para lograr una comprensión profunda de los módulos de estilo ML: creo que el concepto es importante y me encanta el tipo de pensamiento que fomentan. Ahora estoy descubriendo la tensión que puede surgir entre los ...

1 la respuesta

Sugerencia para la inferencia de tipo SML

Soy nuevo en SML y estoy tratando de practicar en la referencia de tipo SML. Estoy tratando de deducir los siguientes tipos: a)fun add42 x =x+42 b)fun comp F G = let fun C x = G(F(x)) in C end c)fun compA42 x = comp add42 x d)val foo = compA42 ...

2 la respuesta

La variable de tipo a unificar ocurre en tipo

Tengo una función para reconstruir un árbol de 2 listas. Devuelvo una lista de todas las ramas, pero recibo un error que no entiendo. Pero supongo que tiene que ver con los tipos de retorno. El error es este: Can't unify ''a with ''a list (Type ...

3 la respuesta

Múltiples patrones en 1 caso

En SML, ¿es posible que tenga múltiples patrones en una declaración de caso? Por ejemplo, tengo 4 operadores aritméticos expresados en cadena,"+", "-", "*", "/" y quiero imprimir"PLUS MINUS" de eso es"+" or "-" y"MULT DIV" si esto es"*" or ...