Agregar a tuplas dentro de una lista con filtro

Authors = [(String, Int)]
File Filename DateTime Authors

Ejemplo:

File "DSC023.jpg" "01/05/2012 22:40" [("Test1",1),("Test2",2)]

¿Cómo buscaría DSC023.jpg y agregaría otro autor a la lista?

findFile n = find (\(File x _ _ _) -> x == n) fileDatabase

preguntado el 01 de mayo de 12 a las 22:05

1 Respuestas

Necesitas algunas funciones:

addAuthor author File x y as = File x y (author:as)

fileName File n _ _ _ = n

findFile name = find (\x -> (fileName x) == name)

Esto debería darle todo para construir la función que necesita.

contestado el 01 de mayo de 12 a las 22:05

¿Cómo incluiría esto en una lista? [Archivo] Tengo algunos problemas. - user1368696

@ user1368696 ¿Qué tal mostrar el código que tiene problemas? Nadie aquí va a escribir su programa por usted (dada una especificación incompleta) o tiene una bola de cristal. - PMR

findFile:: String -> File findFile n = find (\x -> x == n) fileDatabase - No se pudo coincidir con el tipo esperado File' with actual type Tal vez a0' - user1368696

@ user1368696 No agregue su código en los comentarios, edite la pregunta. En su caso, el tipo explícito que especifica es incorrecto. Mira el tipo de find. - PMR

@ user1368696: debe leer sobre el tipo de Tal vez y la coincidencia de patrones en cualquier libro de texto o tutorial que esté usando. - Hammar

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.