dc.contributor.advisor | Petříček, Tomáš | |
dc.creator | Mückenschnabel, Maya | |
dc.date.accessioned | 2024-07-19T06:23:03Z | |
dc.date.available | 2024-07-19T06:23:03Z | |
dc.date.issued | 2024 | |
dc.identifier.uri | http://hdl.handle.net/20.500.11956/192041 | |
dc.description.abstract | Dependent type systems provide a novel way of reasoning about program correctness, by embedding behavior of the program into the more expressive type system. Correctness is achieved by not allowing incorrect states to be representable. Languages like Idris show that dependent type systems are practically useful, not only for formal proofs, but also for creating fewer bugs in production. But the purity of computation poses a problem for composability of stateful computations and of side effects. Effect handlers provide one possible solution for this problem. In this thesis we propose an effect extension of depen- dent type systems. The resulting system not only makes it possible to provide guarantees about correctness of a program, but also make it easy to compose such guarantees using effects. We formalize the type system and present a prototype implementation. | en_US |
dc.language | Čeština | cs_CZ |
dc.language.iso | cs_CZ | |
dc.publisher | Univerzita Karlova, Matematicko-fyzikální fakulta | cs_CZ |
dc.subject | dependent types|effect handlers|type systems | en_US |
dc.subject | dependent types|effect handlers|type systems | cs_CZ |
dc.title | Combining effects with dependent types | cs_CZ |
dc.type | bakalářská práce | cs_CZ |
dcterms.created | 2024 | |
dcterms.dateAccepted | 2024-06-28 | |
dc.description.department | Department of Distributed and Dependable Systems | en_US |
dc.description.department | Katedra distribuovaných a spolehlivých systémů | cs_CZ |
dc.description.faculty | Matematicko-fyzikální fakulta | cs_CZ |
dc.description.faculty | Faculty of Mathematics and Physics | en_US |
dc.identifier.repId | 269326 | |
dc.title.translated | Combining effects with dependent types | en_US |
dc.contributor.referee | Šefl, Vít | |
thesis.degree.name | Bc. | |
thesis.degree.level | bakalářské | cs_CZ |
thesis.degree.discipline | Informatika se specializací Systémové programování | cs_CZ |
thesis.degree.discipline | Computer Science with specialisation in Systems Programming | en_US |
thesis.degree.program | Computer Science | en_US |
thesis.degree.program | Informatika | cs_CZ |
uk.thesis.type | bakalářská práce | cs_CZ |
uk.taxonomy.organization-cs | Matematicko-fyzikální fakulta::Katedra distribuovaných a spolehlivých systémů | cs_CZ |
uk.taxonomy.organization-en | Faculty of Mathematics and Physics::Department of Distributed and Dependable Systems | en_US |
uk.faculty-name.cs | Matematicko-fyzikální fakulta | cs_CZ |
uk.faculty-name.en | Faculty of Mathematics and Physics | en_US |
uk.faculty-abbr.cs | MFF | cs_CZ |
uk.degree-discipline.cs | Informatika se specializací Systémové programování | cs_CZ |
uk.degree-discipline.en | Computer Science with specialisation in Systems Programming | en_US |
uk.degree-program.cs | Informatika | cs_CZ |
uk.degree-program.en | Computer Science | en_US |
thesis.grade.cs | Velmi dobře | cs_CZ |
thesis.grade.en | Very good | en_US |
uk.abstract.en | Dependent type systems provide a novel way of reasoning about program correctness, by embedding behavior of the program into the more expressive type system. Correctness is achieved by not allowing incorrect states to be representable. Languages like Idris show that dependent type systems are practically useful, not only for formal proofs, but also for creating fewer bugs in production. But the purity of computation poses a problem for composability of stateful computations and of side effects. Effect handlers provide one possible solution for this problem. In this thesis we propose an effect extension of depen- dent type systems. The resulting system not only makes it possible to provide guarantees about correctness of a program, but also make it easy to compose such guarantees using effects. We formalize the type system and present a prototype implementation. | en_US |
uk.file-availability | V | |
uk.grantor | Univerzita Karlova, Matematicko-fyzikální fakulta, Katedra distribuovaných a spolehlivých systémů | cs_CZ |
thesis.grade.code | 2 | |
uk.publication-place | Praha | cs_CZ |
uk.thesis.defenceStatus | O | |