Cunha, Jácome, João Paulo Fernandes, Jorge Mendes, Rui Pereira, and João Saraiva. "
Design and Implementation of Queries for Model-Driven Spreadsheets."
Central European Functional Programming School - 5th Summer School, CEFP 2013, Revised Selected Papers. Eds. Viktória Zsók, and et al. Lecture Notes in Computer Science. Heidelberg: Springer, 2014.
AbstractThis paper presents a domain-specific querying language for model-driven spreadsheets. We briefly show the design of the language and present in detail its implementation, from the denormalization of data and translation of our user-friendly query language to a more efficient query, to the execution of the query using Google. To validate our work, we executed an empirical study, comparing QuerySheet with an alternative spreadsheet querying tool, which produced positive results.
Cunha, Jácome, João Paulo Fernandes, and João Saraiva. "
Spreadsheet Engineering."
Central European Functional Programming School - 5th Summer School, CEFP 2013, Revised Selected Papers. Eds. Viktória Zsók, and et al. Lecture Notes in Computer Science. Springer, Heidelberg 2014.
AbstractThese tutorial notes present a methodology for spreadsheet engineering. First, we present data mining and database techniques to reason about spreadsheet data. These techniques are used to compute relationships between spreadsheet elements (cells/columns/rows). These relations are then used to infer a model defining the business logic of the spreadsheet. Such a model of a spreadsheet data is a visual domain specific language that we embed in a well-known spreadsheet system. The embedded model is the building block to define techniques for model-driven spreadsheet development, where advanced techniques are used to guarantee the model-instance synchronization. In this model-driven environment, any user data update as to follow the the model-instance conformance relation, thus, guiding spreadsheet users to introduce correct data. Data refinement techniques are used to synchronize models and instances after users update/evolve the model. These notes briefly describe our model-driven spreadsheet environment, the MDSheet environment, that implements the presented methodology. To evaluate both proposed techniques and the MDSheet tool, we have conducted, in laboratory sessions, an empirical study with the summer school participants. The results of this study are presented in these notes.
JP, Borges, Canejo JP, Fernandes SN, Brogueira P, and GODINHO MH. "
Cellulose‐Based Liquid Crystalline Composite Systems."
Nanocellulose Polymer Nanocomposites: Fundamentals and Applications. Ed. Vijay Kumar Thakur. Scrivener Publishing - Wiley. Scrivener Publishing - Wiley, 2014. 215-235.
Abstractn/a
Orosa, Lois, and João M. Lourenço. "
Hardware Approach for Detecting, Exposing and Tolerating High Level Atomicity Violations."
Proceedings of Joint Euro-TM/MEDIAN Workshop on Dependable Multicore and Transactional Memory Systems. DMTM 2014. Vienna, Austria 2014.
AbstractIn this paper we address a solution for detecting and tolerating one of the most typical concurrency bugs: atomicity violations. More specifically, we address High-Level Atomicity Violations (HLAV). High-level atomicity violations result from the misspecification of the scope of an atomic block, by splitting it in two or more atomic blocks which may be interleaved with other atomic blocks. Figure 1 shows an example of this type of atomicity violation. The intuitive idea behind HLAV is that if two shared data items (e.g., memory locations) were both accessed inside an atomic block, they are interrelated and probably the programmer intention is that there shall be no interleavings between these two accesses. Therefore, if (in the same program) this two addresses are accessed separately in different atomic blocks, an unfortunate interleaving may cause an atomicity violation.