more updates, slight restructure
[phd-thesis.git] / other.bib
index 7ef32eb..46bff99 100644 (file)
--- a/other.bib
+++ b/other.bib
@@ -1,4 +1,15 @@
 
+@mastersthesis{crooijmans_reducing_2021,
+       address = {Nijmegen},
+       title = {Reducing the {Power} {Consumption} of {IoT} {Devices} in {Task}-{Oriented} {Programming}},
+       language = {en},
+       school = {Radboud University},
+       author = {Crooijmans, Sjoerd},
+       month = jul,
+       year = {2021},
+       file = {Crooijmans - 2021 - Reducing the Power Consumption of IoT Devices in T.pdf:/home/mrl/.local/share/zotero/storage/98LY9YHH/Crooijmans - 2021 - Reducing the Power Consumption of IoT Devices in T.pdf:application/pdf},
+}
+
 @inproceedings{plasmeijer_task-oriented_2012,
        address = {New York, NY, USA},
        series = {{PPDP} '12},
        author = {Löh, Andres and Hinze, Ralf},
        year = {2006},
        note = {event-place: Venice, Italy},
-       keywords = {expression problem, extensible data types, extensible exceptions, extensible functions, functional programming, generic programming, Haskell, mutually recursive modules},
+       keywords = {functional programming, Haskell, expression problem, extensible data types, extensible exceptions, extensible functions, generic programming, mutually recursive modules},
        pages = {133--144},
        file = {OpenDatatypes.pdf:/home/mrl/.local/share/zotero/storage/NEP9GZ9N/OpenDatatypes.pdf:application/pdf},
 }
@@ -343,6 +354,30 @@ Publisher: Association for Computing Machinery},
        file = {Gibbons - 2015 - Functional Programming for Domain-Specific Languag.pdf:/home/mrl/.local/share/zotero/storage/ARUBLFU6/Gibbons - 2015 - Functional Programming for Domain-Specific Languag.pdf:application/pdf},
 }
 
+@incollection{lubbers_writing_2019,
+       address = {Cham},
+       title = {Writing {Internet} of {Things} applications with {Task} {Oriented} {Programming}},
+       abstract = {The Internet of Things (IOT) is growing fast. In 2018, there was approximately one connected device per person on earth and the number has been growing ever since. The devices interact with the environment via different modalities at the same time using sensors and actuators making the programs parallel. Yet, writing this type of programs is difficult because the devices have little computation power and memory, the platforms are heterogeneous and the languages are low level. Task Oriented Programming (TOP) is a novel declarative programming language paradigm that is used to express coordination of work, collaboration of users and systems, the distribution of shared data and the human computer interaction. The mTask language is a specialized, yet full-fledged, multi-backend TOP language for IOT devices. With the bytecode interpretation backend and the integration with iTasks, tasks can be executed on the device dynamically. This means that —according to the current state of affairs— tasks can be tailor-made at run time, compiled to device-agnostic bytecode and shipped to the device for interpretation. Tasks sent to the device are fully integrated in iTasks to allow every form of interaction with the tasks such as observation of the task value and interaction with Shared Data Sources (SDSs). The application is —server and devices— are programmed in a single language, albeit using two embedded Domain Specific Languages (EDSLs).},
+       language = {en},
+       booktitle = {Central {European} {Functional} {Programming} {School}: 8th {Summer} {School}, {CEFP} 2019, {Budapest}, {Hungary}, {July} 17–21, 2019, {Revised} {Selected} {Papers}},
+       publisher = {Springer International Publishing},
+       author = {Lubbers, Mart and Koopman, Pieter and Plasmeijer, Rinus},
+       year = {2019},
+       pages = {51},
+       file = {Lubbers - Writing Internet of Things applications with Task .pdf:/home/mrl/.local/share/zotero/storage/ILZIBYW5/Lubbers - Writing Internet of Things applications with Task .pdf:application/pdf},
+}
+
+@mastersthesis{veen_van_der_mutable_2020,
+       address = {Nijmegen},
+       title = {Mutable {Collection} {Types} in {Shallow} {Embedded} {DSLs}},
+       language = {en},
+       school = {Radboud University},
+       author = {Veen, van der, Erin},
+       month = jun,
+       year = {2020},
+       file = {thesis_final.pdf:/home/mrl/.local/share/zotero/storage/Y9QWGGB9/thesis_final.pdf:application/pdf},
+}
+
 @phdthesis{alimarine_generic_2005,
        address = {Nijmegen},
        type = {{PhD}},
@@ -354,6 +389,18 @@ Publisher: Association for Computing Machinery},
        file = {Alimarine - Generic Functional Programming.pdf:/home/mrl/.local/share/zotero/storage/PDTS3SGX/Alimarine - Generic Functional Programming.pdf:application/pdf},
 }
 
+@phdthesis{boer_de_secure_2020,
+       address = {Nijmegen},
+       type = {Bachelor's {Thesis}},
+       title = {Secure {Communication} {Channels} for the {mTask} {System}.},
+       language = {en},
+       school = {Radboud University},
+       author = {Boer, de, Michel},
+       month = jun,
+       year = {2020},
+       file = {Boer, de - 2020 - Secure Communication Channels for the mTask System.pdf:/home/mrl/.local/share/zotero/storage/C46E3FBF/Boer, de - 2020 - Secure Communication Channels for the mTask System.pdf:application/pdf},
+}
+
 @inproceedings{barendregt_towards_1987,
        title = {Towards an intermediate language for graph rewriting},
        volume = {1},
@@ -384,6 +431,78 @@ Publisher: Association for Computing Machinery},
        file = {Stutterheim et al. - 2018 - Maintaining Separation of Concerns Through Task Or.pdf:/home/mrl/.local/share/zotero/storage/4GXJEM2U/Stutterheim et al. - 2018 - Maintaining Separation of Concerns Through Task Or.pdf:application/pdf},
 }
 
+@article{barendsen_uniqueness_1996,
+       title = {Uniqueness typing for functional languages with graph rewriting semantics},
+       volume = {6},
+       number = {6},
+       journal = {Mathematical structures in computer science},
+       author = {Barendsen, Erik and Smetsers, Sjaak},
+       year = {1996},
+       pages = {579--612},
+       file = {Barendsen and Smetsers - 1996 - Uniqueness typing for functional languages with gr.pdf:/home/mrl/.local/share/zotero/storage/BPRC6KJK/Barendsen and Smetsers - 1996 - Uniqueness typing for functional languages with gr.pdf:application/pdf},
+}
+
+@mastersthesis{bohm_asynchronous_2019,
+       address = {Nijmegen},
+       title = {Asynchronous {Actions} in a {Synchronous} {World}},
+       abstract = {This thesis introduces a system for asynchronous communication in the iTasks framework. The
+framework is written in Clean, a pure, lazy, functional language. Tasks need to be able to access
+data in the system and retrieve data from all kinds of data sources. The share system allows
+tasks to read arbitrary data sources and provides a simple interface that allows composition of
+different data sources. This system allows tasks to share and store data in an efficient, re-usable
+way.
+A disadvantage of the share system is that it does not allow asynchronous evaluation. When
+one task is using a share, other tasks have to wait for the full evaluation of this share before they
+can be evaluated. This has the effect that users in the iTasks framework must wait on other
+users. This results in poor user experience.
+We implement a share system which, by way of share rewriting, allows asynchronous evalua-
+tion. The system can be used to communicate with arbitrary services on the internet, as well as
+to communicate between different iTasks servers in a distributed context.
+We show how asynchronous shares are implemented and what the limitations are. We also
+show multiple practical examples of using asynchronous shares. The new system can be effectively
+used to consume services on the internet. It fits nicely into existing iTasks programs and requires
+few changes in existing programs.},
+       language = {en},
+       school = {Radboud University},
+       author = {Böhm, Haye},
+       month = jan,
+       year = {2019},
+       file = {Bohm - Asynchronous Actions in a Synchronous World.pdf:/home/mrl/.local/share/zotero/storage/D3IYPAM5/Bohm - Asynchronous Actions in a Synchronous World.pdf:application/pdf},
+}
+
+@inproceedings{hentschel_supersensors:_2016,
+       address = {Vienna, Austria},
+       title = {Supersensors: {Raspberry} {Pi} {Devices} for {Smart} {Campus} {Infrastructure}},
+       isbn = {978-1-5090-4052-0},
+       shorttitle = {Supersensors},
+       url = {http://ieeexplore.ieee.org/document/7575844/},
+       doi = {10.1109/FiCloud.2016.16},
+       abstract = {We describe an approach for developing a campuswide sensor network using commodity single board computers. We sketch various use cases for environmental sensor data, for different university stakeholders. Our key premise is that supersensors—sensors with significant compute capability—enable more flexible data collection, processing and reaction. In this paper, we describe the initial prototype deployment of our supersensor system in a single department at the University of Glasgow.},
+       language = {en},
+       urldate = {2019-09-04},
+       booktitle = {2016 {IEEE} 4th {International} {Conference} on {Future} {Internet} of {Things} and {Cloud} ({FiCloud})},
+       publisher = {IEEE},
+       author = {Hentschel, Kristian and Jacob, Dejice and Singer, Jeremy and Chalmers, Matthew},
+       month = aug,
+       year = {2016},
+       pages = {58--62},
+       file = {Hentschel et al. - 2016 - Supersensors Raspberry Pi Devices for Smart Campu.pdf:/home/mrl/.local/share/zotero/storage/ATK53FN2/Hentschel et al. - 2016 - Supersensors Raspberry Pi Devices for Smart Campu.pdf:application/pdf},
+}
+
+@inproceedings{feijs_multi-tasking_2013,
+       address = {Wuxi, China},
+       title = {Multi-tasking and {Arduino} : why and how?},
+       isbn = {978-90-386-3462-3},
+       abstract = {In this article I argue that it is important to develop experiential prototypes which have multi-tasking capabilities. At the same time I show that for embedded prototype software based on the popular Arduino platform this is not too difficult. The approach is explained and illustrated using technical examples – practical and hands-on, down to the code level. At the same time a few helpful notations for designing and documenting the software are introduced and illustrated by the same examples. Finally a few case studies of the technical approach are listed.},
+       language = {English},
+       booktitle = {Design and semantics of form and movement. 8th {International} {Conference} on {Design} and {Semantics} of {Form} and {Movement} ({DeSForM} 2013)},
+       author = {Feijs, Loe},
+       editor = {Chen, L. L. and Djajadiningrat, T. and Feijs, L. M. G. and Fraser, S. and Hu, J. and Kyffin, S. and Steffen, D.},
+       year = {2013},
+       pages = {119--127},
+       file = {Feijs - 2013 - Multi-tasking and Arduino why and how.pdf:/home/mrl/.local/share/zotero/storage/8A3Q8LHA/Feijs - 2013 - Multi-tasking and Arduino why and how.pdf:application/pdf},
+}
+
 @misc{achten_clean_2007,
        title = {Clean for {Haskell98} {Programmers}},
        url = {https://www.mbsd.cs.ru.nl/publications/papers/2007/achp2007-CleanHaskellQuickGuide.pdf},
@@ -412,6 +531,17 @@ Publisher: Association for Computing Machinery},
        file = {Baccelli et al. - Scripting Over-The-Air Towards Containers on Low-.pdf:/home/mrl/.local/share/zotero/storage/98UTMFAC/Baccelli et al. - Scripting Over-The-Air Towards Containers on Low-.pdf:application/pdf},
 }
 
+@mastersthesis{amazonas_cabral_de_andrade_developing_2018,
+       address = {Nijmegen},
+       title = {Developing {Real} {Life}, {Task} {Oriented} {Applications} for the {Internet} of {Things}},
+       shorttitle = {Developing {Real} {Life}, {TOP} {Applications} for the {IOT}},
+       language = {en},
+       school = {Radboud University},
+       author = {Amazonas Cabral De Andrade, Matheus},
+       year = {2018},
+       file = {Lubbers - prof. dr. dr.h.c. ir. M.J. Plasmeijer.pdf:/home/mrl/.local/share/zotero/storage/JXPEWS85/Lubbers - prof. dr. dr.h.c. ir. M.J. Plasmeijer.pdf:application/pdf},
+}
+
 @article{swierstra_data_2008,
        title = {Data types à la carte},
        volume = {18},
@@ -436,6 +566,22 @@ Publisher: Association for Computing Machinery},
        file = {groj10-Haskell_front_end_Clean.pdf:/home/mrl/.local/share/zotero/storage/WVZWX8WT/groj10-Haskell_front_end_Clean.pdf:application/pdf},
 }
 
+@incollection{plasmeijer_shallow_2016,
+       address = {Cham},
+       series = {Lecture {Notes} in {Computer} {Science}},
+       title = {A {Shallow} {Embedded} {Type} {Safe} {Extendable} {DSL} for the {Arduino}},
+       volume = {9547},
+       isbn = {978-3-319-39109-0 978-3-319-39110-6},
+       url = {http://link.springer.com/10.1007/978-3-319-39110-6},
+       urldate = {2017-02-22},
+       booktitle = {Trends in {Functional} {Programming}},
+       publisher = {Springer International Publishing},
+       author = {Plasmeijer, Rinus and Koopman, Pieter},
+       year = {2016},
+       doi = {10.1007/978-3-319-39110-6},
+       file = {chp%3A10.1007%2F978-3-319-39110-6_6.pdf:/home/mrl/.local/share/zotero/storage/TJVP6FHF/chp%3A10.1007%2F978-3-319-39110-6_6.pdf:application/pdf},
+}
+
 @inproceedings{cheney_lightweight_2002,
        title = {A lightweight implementation of generics and dynamics},
        url = {http://dl.acm.org/citation.cfm?id=581698},
@@ -579,7 +725,7 @@ Publisher: Association for Computing Machinery},
        author = {Gibbons, Jeremy and Wu, Nicolas},
        year = {2014},
        note = {event-place: Gothenburg, Sweden},
-       keywords = {deep and shallow embedding, domain-specific languages, folds},
+       keywords = {domain-specific languages, deep and shallow embedding, folds},
        pages = {339--347},
        file = {Gibbons and Wu - 2014 - Folding Domain-Specific Languages Deep and Shallo.pdf:/home/mrl/.local/share/zotero/storage/6WNWSLFJ/Gibbons and Wu - 2014 - Folding Domain-Specific Languages Deep and Shallo.pdf:application/pdf},
 }
@@ -632,6 +778,17 @@ Publisher: Association for Computing Machinery},
        file = {CARETTE et al. - 2009 - Finally tagless, partially evaluated Tagless stag.pdf:/home/mrl/.local/share/zotero/storage/T8C8VMHP/CARETTE et al. - 2009 - Finally tagless, partially evaluated Tagless stag.pdf:application/pdf},
 }
 
+@incollection{koopman_simulation_2018,
+       address = {Cham},
+       title = {Simulation of a {Task}-{Based} {Embedded} {Domain} {Specific} {Language} for the {Internet} of {Things}},
+       language = {en},
+       booktitle = {Central {European} {Functional} {Programming} {School}: 7th {Summer} {School}, {CEFP} 2018, {Košice}, {Slovakia}, {January} 22–26, 2018, {Revised} {Selected} {Papers}},
+       publisher = {Springer International Publishing},
+       author = {Koopman, Pieter and Lubbers, Mart and Plasmeijer, Rinus},
+       year = {2018},
+       pages = {51},
+}
+
 @techreport{plasmeijer_clean_2021,
        address = {Nijmegen},
        title = {Clean {Language} {Report} version 3.1},
@@ -740,6 +897,22 @@ Publisher: Association for Computing Machinery},
        pages = {36--43},
 }
 
+@incollection{koopman_type-safe_2019,
+       address = {Cham},
+       title = {Type-{Safe} {Functions} and {Tasks} in a {Shallow} {Embedded} {DSL} for {Microprocessors}},
+       isbn = {978-3-030-28346-9},
+       url = {https://doi.org/10.1007/978-3-030-28346-9_8},
+       abstract = {The Internet of Things, IoT, brings us large amounts of connected computing devices that are equipped with dedicated sensors and actuators. These computing devices are typically driven by a cheap microprocessor system with a relatively slow processor and a very limited amount of memory. Due to the special input-output capabilities of IoT devices and their connections it is very attractive to execute (parts of) programs on these microcomputers.},
+       booktitle = {Central {European} {Functional} {Programming} {School}: 6th {Summer} {School}, {CEFP} 2015, {Budapest}, {Hungary}, {July} 6–10, 2015, {Revised} {Selected} {Papers}},
+       publisher = {Springer International Publishing},
+       author = {Koopman, Pieter and Plasmeijer, Rinus},
+       editor = {Zsók, Viktória and Porkoláb, Zoltán and Horváth, Zoltán},
+       year = {2019},
+       doi = {10.1007/978-3-030-28346-9_8},
+       pages = {283--340},
+       file = {Koopman and Plasmeijer - 2019 - Type-Safe Functions and Tasks in a Shallow Embedde.pdf:/home/mrl/.local/share/zotero/storage/UY2DY4EJ/Koopman and Plasmeijer - 2019 - Type-Safe Functions and Tasks in a Shallow Embedde.pdf:application/pdf},
+}
+
 @techreport{cheney_first-class_2003,
        title = {First-class phantom types},
        url = {https://ecommons.cornell.edu/handle/1813/5614},
@@ -785,6 +958,17 @@ Publisher: Association for Computing Machinery},
        file = {Hinze and Jeuring - Generic Haskell practice and theory.pdf:/home/mrl/.local/share/zotero/storage/QDRNI5VB/Hinze and Jeuring - Generic Haskell practice and theory.pdf:application/pdf},
 }
 
+@phdthesis{antonova_mtask_2022,
+       address = {Nijmegen},
+       type = {Bachelor's {Thesis}},
+       title = {{mTask} {Semantics} and its {Comparison} to {TopHat}},
+       language = {en},
+       school = {Radboud University},
+       author = {Antonova, Elina},
+       year = {2022},
+       file = {Crooijmans - 2021 - Reducing the Power Consumption of IoT Devices in T.pdf:/home/mrl/.local/share/zotero/storage/YIEQ97KK/Crooijmans - 2021 - Reducing the Power Consumption of IoT Devices in T.pdf:application/pdf},
+}
+
 @misc{wadler_expression_1998,
        title = {The expression problem},
        url = {https://homepages.inf.ed.ac.uk/wadler/papers/expression/expression.txt},
@@ -809,7 +993,7 @@ Publisher: Association for Computing Machinery},
 
 @misc{wikipedia_contributors_rhapsody_2022,
        title = {Rhapsody (music) — {Wikipedia}, {The} {Free} {Encyclopedia}},
-       url = {https://en.wikipedia.org/w/index.php?title=Rhapsody_(music)\&oldid=1068385257},
+       url = {https://en.wikipedia.org/w/index.php?title=Rhapsody_(music)&oldid=1068385257},
        urldate = {2022-09-06},
        journal = {Wikipedia},
        author = {{Wikipedia contributors}},
@@ -817,24 +1001,30 @@ Publisher: Association for Computing Machinery},
        note = {accessed on: 2022-09-06},
 }
 
-@mastersthesis{crooijmans_reducing_2021,
-       address = {Nijmegen},
-       title = {Reducing the {Power} {Consumption} of {IoT} {Devices} in {Task}-{Oriented} {Programming}},
-       language = {en},
-       school = {Radboud University},
-       author = {Crooijmans, Sjoerd},
-       month = jul,
-       year = {2021},
-       file = {Crooijmans - 2021 - Reducing the Power Consumption of IoT Devices in T.pdf:/home/mrl/.local/share/zotero/storage/98LY9YHH/Crooijmans - 2021 - Reducing the Power Consumption of IoT Devices in T.pdf:application/pdf},
+@incollection{backus_introduction_1990,
+       address = {USA},
+       title = {An {Introduction} to the {Programming} {Language} {FL}},
+       isbn = {0-201-17236-4},
+       booktitle = {Research {Topics} in {Functional} {Programming}},
+       publisher = {Addison-Wesley Longman Publishing Co., Inc.},
+       author = {Backus, John and Williams, John H. and Wimmers, Edward L.},
+       year = {1990},
+       pages = {219--247},
 }
 
-@mastersthesis{amazonas_cabral_de_andrade_developing_2018,
-       address = {Nijmegen},
-       title = {Developing {Real} {Life}, {Task} {Oriented} {Applications} for the {Internet} of {Things}},
-       shorttitle = {Developing {Real} {Life}, {TOP} {Applications} for the {IOT}},
-       language = {en},
-       school = {Radboud University},
-       author = {Amazonas Cabral De Andrade, Matheus},
-       year = {2018},
-       file = {Lubbers - prof. dr. dr.h.c. ir. M.J. Plasmeijer.pdf:/home/mrl/.local/share/zotero/storage/JXPEWS85/Lubbers - prof. dr. dr.h.c. ir. M.J. Plasmeijer.pdf:application/pdf},
+@inproceedings{peyton_jones_imperative_1993,
+       address = {New York, NY, USA},
+       series = {{POPL} '93},
+       title = {Imperative {Functional} {Programming}},
+       isbn = {0-89791-560-7},
+       url = {https://doi.org/10.1145/158511.158524},
+       doi = {10.1145/158511.158524},
+       abstract = {We present a new model, based on monads, for performing input/output in a non-strict, purely functional language. It is composable, extensible, efficient, requires no extensions to the type system, and extends smoothly to incorporate mixed-language working and in-place array updates.},
+       booktitle = {Proceedings of the 20th {ACM} {SIGPLAN}-{SIGACT} {Symposium} on {Principles} of {Programming} {Languages}},
+       publisher = {Association for Computing Machinery},
+       author = {Peyton Jones, Simon L. and Wadler, Philip},
+       year = {1993},
+       note = {event-place: Charleston, South Carolina, USA},
+       pages = {71--84},
+       file = {Peyton Jones and Wadler - 1993 - Imperative Functional Programming.pdf:/home/mrl/.local/share/zotero/storage/9DQ5V3N3/Peyton Jones and Wadler - 1993 - Imperative Functional Programming.pdf:application/pdf},
 }