This item is provided by the institution :
/aggregator-openarchives/portal/institutions/uoa   

Repository :
Pergamos Digital Library   

see the original item page
in the repository's web site and access all digital files if the item*



Non-Strict Pattern Matching and Delimited Control

Μπαρμπαγιάννης Πέτρος (EL)
Barbagiannis Petros (EN)

born_digital_postgraduate_thesis
Διπλωματική Εργασία (EL)
Postgraduate Thesis (EN)

2017


Η έννοια της συνέχειας ενός προγράμματος έχει αποδειχθεί ιδιαιτέρως χρήσιμη σε ένα ευρύ φάσμα ερευνητικών περιοχών που σχετίζονται με συναρτησιακές γλώσσες προγραμματισμού. Η εργασία αυτή μελετά μηχανισμούς αφαίρεσης ελέγχου οι οποίοι είναι ευρύτερα γνωστοί ως τελεστές ελέγχου και επιτρέπουν τη διαχείριση συνεχειών σε ένα πρόγραμμα. Επιπρόσθετα, εξετάζονται στρατηγικές αποτίμησης συναρτησιακών γλωσσών προγραμματισμού καθώς και πώς αυτές επηρεάζουν εκφράσεις ταιριάσματος προτύπων. Συγκεκριμένα, περιγράφεται η αποτίμηση τέτοιου είδους εκφράσεων σε γλώσσες με μη αυστηρή σημασιολογία. Επίσης, ερευνάται η σχέση τελεστών ελέγχου, οι οποίοι ονομάζονται τελεστές οριοθετημένου ελέγχου, με τη λειτουργική σημασιολογία γλωσσών που ακολουθούν μη αυστηρή στρατηγική αποτίμησης. Τέλος, προτείνεται η επέκταση υπάρχουσας υλοποίησης, η οποία βασίζεται σε οριοθετημένες συνέχειες, έτσι ώστε να αποτιμά εκφράσεις ταιριάσματος προτύπων. (EL)
It has been long known that continuations and evaluation strategies are two intimately related concepts of functional programming languages. In one of the earliest results, continuation-passing style (CPS) was introduced as a means to decouple the evaluation order of a language from the evaluation order of its interpreter. Since then, this style of programming has been proved extremely useful in areas ranging from compiler implementation to denotational semantics. Since the introduction of CPS, a wide variety of control operators have been developed. Delimited control operators, in particular, are a powerful mechanism of functional programming languages that generalize traditional first-class control operators, such as \texttt{call/cc}, and provide the means to abstract control. One notable application of delimited control operators is the construction of a novel abstract machine for the call-by-need $\lambda$-calculus that simulates store-based effects with delimited continuations. Pattern matching on algebraic data types is an essential feature of functional programming languages. However, pattern matching is often thought to be syntactic sugar that can be merely represented by a proper encoding. In this thesis we study the operational characteristics of non-strict pattern matching. We also explore the semantics of control operators, as well as some of their applications. Finally, we seek to examine the connection between implementing a non-strict pattern matching evaluator and delimited continuations. (EN)

Θετικές Επιστήμες

Θετικές Επιστήμες (EL)
Science (EN)

English

Σχολή Θετικών Επιστημών » Τμήμα Μαθηματικών » Διαπανεπιστημιακό ΠΜΣ Λογική και Θεωρία Αλγορίθμων και Υπολογισμού » Κατεύθυνση Λογική και Θεωρία Αλγορίθμων και Υπολογισμού
Βιβλιοθήκη και Κέντρο Πληροφόρησης » Βιβλιοθήκη Σχολής Θετικών Επιστημών

https://creativecommons.org/licenses/by-nc/4.0/




*Institutions are responsible for keeping their URLs functional (digital file, item page in repository site)