Efficient Functional Programming using Linear Types: The Array Fragment
dc.contributor.author | Juan, Víctor López | |
dc.contributor.department | Chalmers tekniska högskola / Institutionen för data- och informationsteknik (Chalmers) | sv |
dc.contributor.department | Chalmers University of Technology / Department of Computer Science and Engineering (Chalmers) | en |
dc.date.accessioned | 2019-07-03T13:42:38Z | |
dc.date.available | 2019-07-03T13:42:38Z | |
dc.date.issued | 2015 | |
dc.description.abstract | Functional languages excel at describing complex programs by composition of small building blocks. Yet, it can be difficult to predict the performance properties of such compositions. Namely, whether parts of the computation are shared or duplicated is typically left to the compiler to decide heuristically. Linear types serve as a tool to specify the desired behaviour (sharing or duplication). This means that the programmer is able to predict the performance of composition solely from the types of the composed functions. Girard’s linear logic (LL) can be extended with vector types and a synchronization primitive, making a linear language with array manipulation capabilities. In this master thesis, we improve on the n-ary extension of LL by introducing a self-dual, sequential array operator with an aggregation function. We provide a functional interpretation of the resulting calculus, which forms the basis for a low-level code generator. We then illustrate the effectiveness of the extended language by writing a number of examples in compositional style, and show that they predictably compile to efficient code. Examples include kernels of classical algorithms (1-dimensional stencil, QuickHull). | |
dc.identifier.uri | https://hdl.handle.net/20.500.12380/219133 | |
dc.language.iso | eng | |
dc.setspec.uppsok | Technology | |
dc.subject | Informations- och kommunikationsteknik | |
dc.subject | Data- och informationsvetenskap | |
dc.subject | Information & Communication Technology | |
dc.subject | Computer and Information Science | |
dc.title | Efficient Functional Programming using Linear Types: The Array Fragment | |
dc.type.degree | Examensarbete för masterexamen | sv |
dc.type.degree | Master Thesis | en |
dc.type.uppsok | H | |
local.programme | Computer science – algorithms, languages and logic (MPALG), MSc |
Ladda ner
Original bundle
1 - 1 av 1
Hämtar...
- Namn:
- 219133.pdf
- Storlek:
- 770.6 KB
- Format:
- Adobe Portable Document Format
- Beskrivning:
- Fulltext