CDuce è un linguaggio funzionale fortemente tipato il cui obiettivo è integrare XML e la programmazione. I tipi e i documenti XML sono considerati elementi di prima classe e pertanto è possibile creare script che effettuano trasformazioni e manipolazioni di dati XML con facilità. Inoltre un sistema di verifica statico ci dà la certezza durante la compilazione che i valori prodotti siano codice XML valido. In questa tesi analizzeremo come il complesso sistema di tipi permetta al linguaggio di essere utilizzato sia per la programmazione general-purpose sia per esprimere con agevolezza la struttura di un documento XML. Successivamente analizzeremo le espressioni e gli elementi caratterizzanti del linguaggio come il pattern matching e i tipi funzionali. Infine, compareremo CDuce a due linguaggi molto diffusi quali Java e Haskell.

CDuce: manipolare elementi XML tramite il paradigma funzionale

CHIARAMELLO, ENRICO
2019/2020

Abstract

CDuce è un linguaggio funzionale fortemente tipato il cui obiettivo è integrare XML e la programmazione. I tipi e i documenti XML sono considerati elementi di prima classe e pertanto è possibile creare script che effettuano trasformazioni e manipolazioni di dati XML con facilità. Inoltre un sistema di verifica statico ci dà la certezza durante la compilazione che i valori prodotti siano codice XML valido. In questa tesi analizzeremo come il complesso sistema di tipi permetta al linguaggio di essere utilizzato sia per la programmazione general-purpose sia per esprimere con agevolezza la struttura di un documento XML. Successivamente analizzeremo le espressioni e gli elementi caratterizzanti del linguaggio come il pattern matching e i tipi funzionali. Infine, compareremo CDuce a due linguaggi molto diffusi quali Java e Haskell.
ITA
IMPORT DA TESIONLINE
File in questo prodotto:
File Dimensione Formato  
859175_tesichiaramelloenrico.pdf

non disponibili

Tipologia: Altro materiale allegato
Dimensione 347.77 kB
Formato Adobe PDF
347.77 kB Adobe PDF

I documenti in UNITESI sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/20.500.14240/125932