ATTENTION: The software behind KU ScholarWorks is being upgraded to a new version. Starting July 15th, users will not be able to log in to the system, add items, nor make any changes until the new version is in place at the end of July. Searching for articles and opening files will continue to work while the system is being updated.
If you have any questions, please contact Marianne Reed at mreed@ku.edu .
QuB: A Resource Aware Functional Programming Language
dc.contributor.advisor | Morris, J Garrett | |
dc.contributor.author | Ingle, Apoorv | |
dc.date.accessioned | 2019-04-25T20:07:13Z | |
dc.date.available | 2019-04-25T20:07:13Z | |
dc.date.issued | 2018-12-31 | |
dc.date.submitted | 2018 | |
dc.identifier.other | http://dissertations.umi.com/ku:16220 | |
dc.identifier.uri | http://hdl.handle.net/1808/27760 | |
dc.description.abstract | Modern programming languages treat resources as normal values. The static semantics of resources in such languages does not match their runtime semantics. In this thesis, we tackle the resource management problem by making resources first class citizens in the language, and concentrating on sharing or separation of resources. We design and implement QuB (pronounced: cube), a Curry-Howard interpretation of logic of bunched implications (BI) (O’Hearn and Pym, 1999). We distinguish two kinds of values—restricted and unrestricted—and two kinds of function implications— sharing and separating. The restricted values model resources while the unrestricted values model program objects that do not contain any resources. Sharing functions denote that functions share resources with its arguments, while separating functions denote that functions do not share resources with its arguments. We show how the use of monads with sharing and separating functions helps in modeling patterns, such as exception handling, that are difficult to express in linear languages. | |
dc.format.extent | 72 pages | |
dc.language.iso | en | |
dc.publisher | University of Kansas | |
dc.rights | Copyright held by the author. | |
dc.subject | Computer science | |
dc.subject | Logic | |
dc.subject | bi | |
dc.subject | programming language | |
dc.subject | resource | |
dc.subject | types | |
dc.title | QuB: A Resource Aware Functional Programming Language | |
dc.type | Thesis | |
dc.contributor.cmtemember | Kulkarni, Prasad | |
dc.contributor.cmtemember | Alexander, Perry | |
dc.contributor.cmtemember | Gill, Andy | |
dc.thesis.degreeDiscipline | Electrical Engineering & Computer Science | |
dc.thesis.degreeLevel | M.S. | |
dc.identifier.orcid | https://orcid.org/0000-0002-7399-9762 | |
dc.rights.accessrights | openAccess |
Files in this item
This item appears in the following Collection(s)
-
Engineering Dissertations and Theses [1055]
-
Theses [4088]