Salve a tutti,
l'altro giorno sulla lezione dei parser mi sono letteralmente perso, forse anche per via delle slide della lezione molto stringate. Sapreste darmi qualche link o qualche dritta su cosa sono e come utilizzare i parser in Haskell ?
Certamente so cos'è a grossi linee un parser, ma semplicemente non riesco a capire cosa sono e a cosa servono queste funzioni parser in Haskell.
Ad esempio questo codice, sarebbe l'equivalente di un typdef del C? come lo dovrei interpretare?
codice:type Parser a = String -> [(a,String)]
Questa funzione qui, sopratutto il tipo, come va interpretata? Cioè qui "Parser" sembra più una funzione che un tipo. Ma allora Type a cosa serve? e la prima riga di qui sotto cosa fignifica? Oppure vuol significare di sostituire Char al posto di a nel tipo Parser? (e quindi sono una specie di java generics?)
Addirittura alla fine le combina le due scrivendocodice:item :: Parser Char item = \inp -> case inp of [] -> [] (x:xs) -> [(x,xs)]
So di avere le idee un pò confuse ed il problema è proprio questo.codice:Parser item "abc"
Vi ringrazio in anticipo,
Neptune.