Institutional Scholarship

Scaling Faceted Execution in Racket using Languages as Libraries Approach

Show simple item record

dc.contributor.advisor Micinski, Kristopher
dc.contributor.author Parker, David
dc.date.accessioned 2019-08-21T16:18:33Z
dc.date.available 2019-08-21T16:18:33Z
dc.date.issued 2019
dc.identifier.uri http://hdl.handle.net/10066/21629
dc.description.abstract Reasoning about information flow is essential when creating a secure system, and faceted execution is one way to ensure that data is only being accessed and modified by processes that have permission to do so. Faceted execution can be implemented in various ways, including through the use of macros. Some macro systems are more effective than others, however, due to how robust those systems are to use and the extent to which they allow their respective languages to be extended. Racket, one of the languages considered, uses a hygienic macro system, making it less prone to error than non-hygienic macro systems, and is also built using a languages as libraries approach, allowing core elements of the language itself to be modified to create new languages. This system allows faceted execution to be implemented directly into Racket, which can be advantageous compared to previous strategies used to implement faceted execution.
dc.description.sponsorship Haverford College. Department of Computer Science
dc.language.iso eng
dc.rights.uri http://creativecommons.org/licenses/by-nc/4.0/
dc.subject.lcsh Macro instructions (Electronic computers)
dc.subject.lcsh Computers—Access control
dc.title Scaling Faceted Execution in Racket using Languages as Libraries Approach
dc.type Thesis
dc.rights.access Bi-College users only


Files in this item

This item appears in the following Collection(s)

Show simple item record

http://creativecommons.org/licenses/by-nc/4.0/ Except where otherwise noted, this item's license is described as http://creativecommons.org/licenses/by-nc/4.0/

Search


Browse

My Account