Show simple item record

dc.contributor.advisorBratsberg, Svein Erik
dc.contributor.authorKvarmestøl, Odd Kristian
dc.date.accessioned2021-09-15T16:00:46Z
dc.date.available2021-09-15T16:00:46Z
dc.date.issued2020
dc.identifierno.ntnu:inspera:57390197:23095693
dc.identifier.urihttps://hdl.handle.net/11250/2777481
dc.description.abstractStage er et nytt funksjonelt programmeringsspråk. Språket har statisk typing og tillater ikke funksjoner med sideeffekter. Dette er for å gjøre språket lett å bruke samt lett å feilsøke. Et SQL-grensesnitt har blitt utviklet for Stage som en del av dette prosjektet. Dette grensesnittet tilbyr utviklere et ergonomisk system for å skrive SQL-spørringer som bruker parametere fra applikasjonen sin. SQL-grensesnittet er typesikkert og har som mål å automatisere bort omstendelige oppgaver. Dette er oppgaver som å holde styr på parameterne til en spørring eller konvertere radene gitt av databasen til datatyper i programmet. Oppgaven har to hovedmål: (1) å utforske design av et SQL-grensesnitt for Stage, og (2) å utvikle Stage til å bli et fungerende språk som kan uttrykke SQL-grensesnittet. I begynnelsen av prosjektet var ideen for språket samt et grunnlag for kompilatoren implementert. I løpet av prosjektet har språket og kompilatoren blitt utviklet til en fungerende prototype. Designet av SQL-grensesnittet ble utviklet sammen med kompilatoren, og en forenklet versjon av SQL-grensesnittet ble implementert. Denne versjonen fungerer som en proof-of-concept for det fullstendige grensesnittet. Denne masteroppgaven beskriver designet til Stage og SQL-grensesnittet. Kompilatorens design, samt systemene den er satt sammen av, blir også diskutert.
dc.description.abstractStage is a new functional programming language. It was designed to be statically typed and without function side effects. These principles were chosen with the intent of making the language easy to use and easy to debug. In this project an SQL interface was developed for Stage. This interface provides developers with an ergonomic system for writing SQL queries, that take parameters from the program. The SQL interface aims to be type safe and to automate tedious tasks. Such tasks include: keeping track of query parameters, and converting the returned tuples into native data types. This thesis has two main goals: (1) to explore the implementation of an SQL interface into Stage and (2) to develop Stage into a working language able to express the SQL interface. At the outset of the project, the idea for the language and a foundation for the compiler had been implemented. During this project the compiler and language was further developed into a functioning prototype. The design of the SQL interface was conceived and developed along with the compiler, and a simplified version was implemented. This version serves as a proof-of-concept for the fully designed interface. This thesis describes the design of Stage and the SQL-interface. The language's compiler, and the systems it is comprised of, will also be discussed.
dc.language
dc.publisherNTNU
dc.titleDatabase Access through a Functional Programming Language
dc.typeMaster thesis


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record