Logo do repositório
 
Publicação

Loom: Unifying Client-Side Web Technologies in a Single Programming Language

datacite.subject.fosEngenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informáticapt_PT
dc.contributor.advisorSeco, João
dc.contributor.authorMartins, Nuno Castro
dc.date.accessioned2018-12-20T15:50:45Z
dc.date.available2018-12-20T15:50:45Z
dc.date.issued2017-07
dc.date.submitted2017
dc.description.abstractModern client-centred web applications typically depend on a set of complementary languages to control different layers of abstraction in their interfaces: the behaviour, structure, and presentation layers (in order, traditionally: JavaScript, HTML, and CSS). Applications with dynamic interfaces whose structure and presentation depend on the data and state of the application require tight links between such layers; however, communicating between them is often non-trivial or simply cumbersome, mainly because they are effectively distinct languages—each with a specific way of being interacted with. Numerous technologies have been introduced in an attempt to simplify the interaction between the multiple layers; their main focus so far, however, regards the communication between structure and behaviour—leaving room for improvement in the field of presentation. This dissertation presents Loom: a novel reactive programming language that unifies the enunciated abstraction layers of a client-side web application. Loom allows the specification of an interface’s structure and presentation in a declarative, data-dependent, and reactive manner by means of signals—values that change over time—inspired by the field of functional reactive programming: reactive meaning that when the structure and presentation of an interface depend on application-data, changes to said data cause an automatic update of the application’s interface. We provide an implementation of the language’s compiler that allows the creation of interfaces with performance comparable to that of most existent frameworks.pt_PT
dc.identifier.urihttp://hdl.handle.net/10362/55173
dc.language.isoengpt_PT
dc.relationNOVA Laboratory for Computer Science and Informatics
dc.subjectWeb Programming Languagespt_PT
dc.subjectReactive Programmingpt_PT
dc.titleLoom: Unifying Client-Side Web Technologies in a Single Programming Languagept_PT
dc.typemaster thesis
dspace.entity.typePublication
oaire.awardNumberUID/CEC/04516/2013
oaire.awardNumberPTDC/EEI-CTP/4293/2014
oaire.awardTitleNOVA Laboratory for Computer Science and Informatics
oaire.awardURIinfo:eu-repo/grantAgreement/FCT/6817 - DCRRNI ID/UID%2FCEC%2F04516%2F2013/PT
oaire.awardURIinfo:eu-repo/grantAgreement/FCT/3599-PPCDT/PTDC%2FEEI-CTP%2F4293%2F2014/PT
oaire.fundingStream6817 - DCRRNI ID
oaire.fundingStream3599-PPCDT
project.funder.identifierhttp://doi.org/10.13039/501100001871
project.funder.identifierhttp://doi.org/10.13039/501100001871
project.funder.nameFundação para a Ciência e a Tecnologia
project.funder.nameFundação para a Ciência e a Tecnologia
rcaap.rightsopenAccesspt_PT
rcaap.typemasterThesispt_PT
relation.isProjectOfPublication71c5bab3-fb65-4aa5-929c-6be4827c4c6f
relation.isProjectOfPublication867e6bd3-8fbd-4a53-a71e-cbbeb6ea32d6
relation.isProjectOfPublication.latestForDiscovery867e6bd3-8fbd-4a53-a71e-cbbeb6ea32d6
thesis.degree.nameMaster of Science in Computer Science and Engineeringpt_PT

Ficheiros

Principais
A mostrar 1 - 1 de 1
A carregar...
Miniatura
Nome:
Martins_2017.pdf
Tamanho:
834.86 KB
Formato:
Adobe Portable Document Format
Licença
A mostrar 1 - 1 de 1
Miniatura indisponível
Nome:
license.txt
Tamanho:
348 B
Formato:
Item-specific license agreed upon to submission
Descrição: