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

3 la respuesta

OCaml |> operador

¿Alguien podría explicar lo que hace el operador |>? Este código fue tomado de la referenciaaquí [http://caml.inria.fr/pub/docs/manual-ocaml/libref/Map.html]: let m = PairsMap.(empty |> add (0,1) "hello" |> add (1,0) "world")Puedo ver lo que ...

4 la respuesta

Amplitud Funcional Primera Búsqueda

La primera búsqueda de profundidad funcional es encantadora en gráficos acíclicos dirigidos. Sin embargo, en gráficos con ciclos, ¿cómo evitamos la recursión infinita? En un lenguaje de procedimiento, marcaría los nodos cuando los golpeara, pero ...

2 la respuesta

Crear expresión GADT en OCaml

Ahí está mi expresión GADT de juguete: type _ expr = | Num : int -> int expr | Add : int expr * int expr -> int expr | Sub : int expr * int expr -> int expr | Mul : int expr * int expr -> int expr | Div : int expr * int expr -> int expr | Lt : ...

1 la respuesta

¿Cuál es el significado de la Advertencia 40: este registro ... contiene campos que no son visibles en el alcance actual

Por favor considere el siguiente código: module A = struct type r = { i : int; s: string } end module B = struct type r = { i : int; s : string } end let f (x : A.r) : B.r = match x with { i; s } -> { i = 2*i; s = "" }Dos módulos definen ...

4 la respuesta

¿OCaml convertirá la función de múltiples argumentos a curry o al revés?

Cuando estaba aprendiendo lo esencial de OCaml, me dijeron que cada función en OCaml es en realidad una función con un solo parámetro. Una función de múltiples argumentos es en realidad una función que toma un argumento y devuelve una función que ...

2 la respuesta

Palabra clave "as" en OCaml

En las respuestas para los tutoriales para OCaml disponibles eneste sitio [http://ocaml.org/learn/tutorials/99problems.html], algunas de las soluciones, incluida la para eliminar duplicados consecutivos de elementos de la lista, se escriben de la ...

3 la respuesta

O-patrones en Haskell

En OCaml, estaba acostumbrado a escribir código que se parecía a: let combine o1 o2 = match o1, o2 with | Valid, Invalid | Invalid, Valid -> Invalid | _ -> ...No encontré una manera de escribiro-patrones en Haskell y realmente lo extraño. ...

2 la respuesta

Entrada eficiente en OCaml

Supongamos que estoy escribiendo un programa OCaml y mi entrada será ungrande flujo de enteros separados por espacios, es decir let string = input_line stdin;;devolverá una cadena que se ve como p. ej. "2 4 34 765 5 ..." Ahora, el programa ...

2 la respuesta

Argumento opcional de OCaml

¿Cómo puedo escribir una función en OCaml en la que uno o más argumentos son opcionales? let foo x y z = if(x+y > z) then true else false;;Si no recibe elz argumento que usa0 comoz. foo 3 3 2 -> true foo 3 3 10 -> false foo 2 1 -> true¿Hay ...

3 la respuesta

La restricción de valor

En OCaml no puede generalizar una función currícula parcialmente aplicada (la "restricción de valor"). ¿Cuál es el propósito de la restricción de valor? ¿Qué desagradable sucedería si no existiera?