dc.contributor.author | Ingle, Apoorv | |
dc.date.accessioned | 2020-03-24T20:44:58Z | |
dc.date.available | 2020-03-24T20:44:58Z | |
dc.date.issued | 2020-03-15 | |
dc.identifier.uri | http://hdl.handle.net/1808/30163 | |
dc.description.abstract | Managing resources---file handles, database connections, etc.---is a hard problem. Debugging resource leaks and runtime errors due to resource mismanagement are difficult in evolving production code. Programming languages with static type systems are great tools to ensure erroneous code is detected at compile time. However, modern static type systems do little in the aspect of resource management as resources are treated as normal values. We propose a type system, Qub, based on the logic of bunched implications (BI) which models resources as first class citizens. We distinguish two kinds of program objects---restricted and unrestricted---and two kinds of functions---sharing and separating. Our approach guarantees resource correctness without compromising existing functional abstractions. | en_US |
dc.relation.isversionof | https://arxiv.org/abs/1912.10135 | en_US |
dc.rights | This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. | en_US |
dc.rights.uri | http://creativecommons.org/licenses/by-nc-sa/4.0/ | en_US |
dc.subject | Programming languages | |
dc.subject | Type systems. | |
dc.subject | Bunched implications | |
dc.subject | Resources | |
dc.title | Qub: A Resource Aware Functional Programming Language | en_US |
dc.type | Working Paper | en_US |
dc.identifier.orcid | https://orcid.org/0000-0002-7399-9762 | en_US |
dc.rights.accessrights | openAccess | en_US |