Cookies
O website necessita de alguns cookies e outros recursos semelhantes para funcionar. Caso o permita, o INESC TEC irá utilizar cookies para recolher dados sobre as suas visitas, contribuindo, assim, para estatísticas agregadas que permitem melhorar o nosso serviço. Ver mais
Aceitar Rejeitar
  • Menu
Publicações

Publicações por CRACS

2017

An Emotional Word Analyzer for Portuguese

Autores
Maia, MI; Leal, JP;

Publicação
6th Symposium on Languages, Applications and Technologies, SLATE 2017, June 26-27, 2017, Vila do Conde, Portugal

Abstract
The analysis of sentiments, emotions and opinions in texts is increasingly important in the current digital world. The existing lexicons with emotional annotations for the Portuguese language are oriented to polarities, classifying words as positive, negative or neutral. To identify the emotional load intended by the author it is necessary also to categorize the emotions expressed by individual words. EmoSpell is an extension of a morphological analyzer with semantic annotations of the emotional value of words. It uses Jspell as the morphological analyzer and a new dictionary with emotional annotations. This dictionary incorporates the lexical base EMOTAIX.PT, which classifies words based on three di erent levels of emotions – global, specific and intermediate. This paper describes the generation of the EmoSpell dictionary using three sources, the Jspell Portuguese dictionary and the lexical bases EMOTAIX.PT and SentiLex-PT. Also, this paper details the web application and web service that exploit this dictionary. It presents also a validation of the proposed approach using a corpus of student texts with di erent emotional loads. The validation compares the analyses provided by EmoSpell with the mentioned emotional lexical bases on the ability to recognize emotional words and extract the dominant emotion from a text. © Maria Inês Maia and José Paulo Leal

2017

Improving Diagram Assessment in Mooshak

Autores
Correia, H; Leal, JP; Paiva, JC;

Publicação
Technology Enhanced Assessment, 20th International Conference, TEA 2017, Barcelona, Spain, October 5-6, 2017, Revised Selected Papers.

Abstract
Mooshak is a web system with support for assessment in computer science. It was originally developed for programming contest management but evolved to be used also as a pedagogical tool, capitalizing on its programming assessment features. The current version of Mooshak supports other forms of assessment used in computer science, such as diagram assessment. This form of assessment is supported by a set of new features, including a diagram editor, a graph comparator, and an environment for integration of pedagogical activities. The first attempt to integrate these features to support diagram assessment revealed a number of shortcomings, such as the lack of support for multiple diagrammatic languages, ineffective feedback, and usability issues. These shortcomings were addressed by the creation of a diagrammatic language definition language, the introduction of a new component for feedback summarization and a redesign of the diagram editor. This paper describes the design and implementation of these features, as well as their validation. © Springer Nature Switzerland AG 2018.

2017

Streaming sensor data from dynamically reprogrammable tasks running on mobile devices

Autores
Silva, N; Marques, ERB; Lopes, LMB;

Publicação
Proceedings of the 4th ACM International Conference on Systems for Energy-Efficient Built Environments, BuildSys 2017, Delft, The Netherlands, November 08-09, 2017

Abstract

2017

JPC: A library for categorising and applying inter-language conversions between Java and Prolog

Autores
Castro, S; Mens, K; Moura, P;

Publicação
SCIENCE OF COMPUTER PROGRAMMING

Abstract
The number of approaches existing to enable a smooth interaction between Java and Prolog programs testifies the growing interest in solutions that combine the strengths of both languages. Most of these approaches provide limited support to allow programmers to customise how Prolog artefacts should be reified in the Java world, or how to reason about Java objects on the Prolog side. This is an error-prone task since often a considerable amount of mappings must be developed and organised. Furthermore, appropriate mappings may depend on the particular context in which a conversion is accomplished. Although some libraries alleviate this problem by providing higher-level abstractions to deal with the complexity of custom conversions between artefacts of the two languages, such libraries are difficult to implement and evolve, because of a lack of appropriate underlying building blocks for encapsulating, categorising and applying Java-Prolog conversion routines. We therefore introduce a new library, JPC, serving as a development tool for both programmers willing to categorise context-dependent conversion constructs in their Java-Prolog systems, and for architects implementing frameworks providing higher-level abstractions for better interoperability between these two languages.

2017

On scaling dynamic programming problems with a multithreaded tabling, Prolog system

Autores
Areias, M; Rocha, R;

Publicação
JOURNAL OF SYSTEMS AND SOFTWARE

Abstract
Tabling is a powerful implementation technique that improves the declarativeness and expressiveness of traditional Prolog systems in dealing with recursion and redundant computations. It can be viewed as a natural tool to implement dynamic programming problems, where a general recursive strategy divides a problem in simple sub-problems that are often the same. When tabling is combined with multithreading, we have the best of both worlds, since we can exploit the combination of higher declarative semantics with higher procedural control. However, at the engine level, such combination for dynamic programming problems is very difficult to exploit in order to achieve execution scalability as we increase the number of running threads. In this work, we focus on two well-known dynamic programming problems, the Knapsack and the Longest Common Subsequence problems, and we discuss how we were able to scale their execution by using the multithreaded tabling engine of the Yap Prolog system. To the best of our knowledge, this is the first work showing a Prolog system to be able to scale the execution of multithreaded dynamic programming problems. Our experiments also show that our system can achieve comparable or even better speedup results than other parallel implementations of the same problems.

2017

On the Implementation of a Cloud-Based Computing Test Bench Environment for Prolog Systems

Autores
Goncalves, R; Areias, M; Rocha, R;

Publicação
INFORMATION

Abstract
Software testing and benchmarking are key components of the software development process. Nowadays, a good practice in large software projects is the continuous integration (CI) software development technique. The key idea of CI is to let developers integrate their work as they produce it, instead of performing the integration at the end of each software module. In this paper, we extend a previous work on a benchmark suite for the YAP Prolog system, and we propose a fully automated test bench environment for Prolog systems, named Yet Another Prolog Test Bench Environment (YAPTBE), aimed to assist developers in the development and CI of Prolog systems. YAPTBE is based on a cloud computing architecture and relies on the Jenkins framework as well as a new Jenkins plugin to manage the underlying infrastructure. We present the key design and implementation aspects of YAPTBE and show its most important features, such as its graphical user interface (GUI) and the automated process that builds and runs Prolog systems and benchmarks.

  • 74
  • 192