Loading...
Please wait, while we are loading the content...
Similar Documents
High-Level Abstractions for Low-Level Programming
| Content Provider | Semantic Scholar |
|---|---|
| Author | Diatchki, Iavor S. |
| Copyright Year | 2007 |
| Abstract | High-Level Abstractions for Low-Level Programming Iavor Sotirov Diatchki Ph.D., OGI School of Science & Engineering at Oregon Health & Science University May 2007 Thesis Advisor: Dr. Mark P. Jones Computers are ubiquitous in modern society. They come in all shapes and sizes: from standard household appliances and personal computers, to safety and security critical applications such as vehicle navigation and control systems, bank ATMs, defense applications, and medical devices. Modern programming languages offer many features that help developers to increase their productivity and to produce more reliable and flexible systems. It is therefore somewhat surprising that the programs that control many computers are written in older, less robust languages, or even in a lower-level assembly language. This situation is the result of many factors, some entirely non-technical. However, at least in part, the problem has to do with genuine difficulties in matching the results and focus of programming language research to the challenges and context of developing systems software. This dissertation shows how to extend a modern statically-typed functional programming language with features that make it suitable for solving problems that are common in systems programming. Of particular interest is the problem of manipulating data with rigid representation requirements in a safe manner. Typically, the constraints on the representation of the data are imposed by an external specification such as an operating system binary interface or the datasheet for a hardware device. The design provides support for two classes of datatypes whose representation is under programmer control. The first class consists of datatypes that are stored in bit fields and accessed as part of a single machine word. Standard examples can be found in operating system APIs, in the control register formats that are used by device drivers, in multimedia and compres- |
| File Format | PDF HTM / HTML |
| Alternate Webpage(s) | https://digitalcommons.ohsu.edu/cgi/viewcontent.cgi?article=1121&context=etd&httpsredir=1&referer= |
| Alternate Webpage(s) | http://yav.purely-functional.net/publications/diatchki-dissertation.pdf |
| Alternate Webpage(s) | http://yav.github.io/publications/diatchki-dissertation.pdf |
| Language | English |
| Access Restriction | Open |
| Content Type | Text |
| Resource Type | Article |