0votos
Acceso a edificio en Haskell
por

josejuan

hace 3 años

Claro que (siguiendo la solución anterior), también podemos crear un servicio RESTful CROSS domain que pueda ser atacado desde cualquier aplicación (no sólo websites), exponiendo adecuadamente los posibles mensajes de error que puedan producirse (incluído los mensajes que vengan del backend).

0votos
Acceso a edificio en Haskell
por

josejuan

hace 3 años

Así por ejemplo (ver solución anterior), podemos acceder a nuestro sistema (gestión de usuarios en este caso) desde una aplicación de gestión interna (el típico proceso que se lanza cada X tiempo para revisar y notificar cosas). En este caso, se separan los usuarios normales de los administradores (ej. para notificar a los admins).

0votos
Acceso a edificio en Haskell
por

josejuan

hace 3 años

Hay infinidad de formas de hacer este tipo de apps. En todo caso, un "no mal" punto de partida es independizar el backend (la bbdd) y el negocio de todo lo demás, a partir de ahí, se puede crecer adecuadamente. Aquí se muestra un backend (sólo la tabla de usuarios) y la lógica (de control de acceso y todas las acciones posibles sobre la tabla).

0votos
numeros amigos en Haskell
por

josejuan

hace 4 años

La estrategia difiere si se quieren comparar dos números cualesquiera o si se quieren obtener listas de parejas de amigos. Aquí sólo una función (bastante trivial) que calcula las series de potencias de la factorización de cada número. Aun así, corre bastante rápido. Para obtener listas de amigos (consecutivos), se pueden cachear las sumas parciales de las series de potencias (de cada primo).

0votos
Carrera de "¡Baja la escalera!" en Haskell
por

josejuan

hace 4 años

Se resuelven problemas de 22000 filas (242M nodos) en 2,68 segundos usando 8 cores. Lo que me ha gustado de este problema es que te obliga a darle muchas vueltas para obtener soluciones eficientes. Existen muchas alternativas, pero sólo unas pocas consiguen buen rendimiento. Soluciones genéricas (como usar Floyd o Dijikstra) darían rendimientos mucho menores porque este problema admite soluciones específicas.

0votos
Algoritmo de ordenación merge sort en Haskell
por

carlosandres-sh

hace 4 años

Tenemos que programar el merge. Esto con Haskell es fácil ya que tenemos el patrón (x:xs) y (y:ys) y con ello podemos ir comparando los primeros números de cada lista. Con eso vamos introduciendo al principio el menor de "x" y "y" con la recursión de merge del resto del que fue menor y la otra lista entera. Luego el mergesort será el merge de la recursión de mergesort de la mitad de la lista con la recusión de la otra mitad de lista.