Person: Hidalgo Herrero, Mercedes
Loading...
First Name
Mercedes
Last Name
Hidalgo Herrero
Affiliation
Universidad Complutense de Madrid
Faculty / Institute
Educación-Centro Formación Profesor
Department
Didáctica de Ciencias Experimentales, Sociales y Matemáticas
Area
Didáctica de la Matemática
Identifiers
10 results
Search Results
Now showing 1 - 10 of 10
Item Dealing Denotationally With Stream-based Communication(Electronic Notes in Theoretical Computer Science, 2005) Hidalgo Herrero, Mercedes; Ortega Mallén, YolandaWe define a denotational semantics for a kernel-calculus of the parallel functional language Eden. We choose continuations to deal with side-effects (process creation and communication) in a lazy context. The calculus includes streams for communication, and their modelization by a denotational semantics is not direct because a stream may be infinite.Item Using Maude and Its Strategies for Defining a Framework for Analyzing Eden Semantics(Electronic Notes in Theoretical Computer Science, 2007) Hidalgo Herrero, Mercedes; Verdejo López, José Alberto; Ortega Mallén, YolandaEden is a parallel extension of the functional language Haskell. On behalf of parallelism Eden overrides Haskell’s pure lazy approach, combining a non-strict functional application with eager process creation and eager communication. We desire to investigate alternative semantics for Eden in order to analyze the consequences of some of the decisions adopted during the language design. In this paper we show how to implement in Maude the operational semantics of Eden in such a way that semantic rules can be modified easily. Moreover, other semantic features can be implemented by means of parameterized modules that allow to instantiate in different ways several parameters of the semantics but without modifying the semantic rules.Item A Distributed Operational Semantics for a Parallel Functional Language(Trends in Functional Programming, 2000) Hidalgo Herrero, Mercedes; Ortega Mallén, Yolanda; Gilmore, StephenWe present an operational semantics for a functional parallel language with explicit process creation and implicit message-passing communication. The semantics is based on a distributed memory model and is effective for investigating the interplay between laziness and eagerness in the language, as well as for measuring speculative parallelism.Item Continutation Semantics for Parallel Haskell Dialects.(Programming Languages and Systems: first Asian Symposium, APLAS 2003, Beijing, China, November 2003, 2003) Hidalgo Herrero, Mercedes; Ortega Mallén, Yolanda; Ohori, AtsushiThe aim of the present work is to compare, from a formal semantic basis, the different approaches to the parallelization of functional programming languages. For this purpose, we define a continuation semantics model which allows us to deal with side-effects and parallelism. To verify the suitability of our model we have applied it to three programming languages that introduce parallelism in very different ways, but whose common functional kernel is the lazy functional language Haskell.Item Towards Improving Skeletons in Eden.(Parallel Computing: Current & Future Issues of High-End Computing, 2006) Hidalgo Herrero, Mercedes; Ortega Mallén, Yolanda; Rubio, Fernando; Joubert, G.R.; Nagel, W.E.; Peters, F.J.; Plata, O.; Tirado, P.; Zapata, E.The functional language Eden facilitates a skeleton-based methodology for parallel programming. A key point in the efficiency of parallel programs is the distribution of computation among processes. In Eden, this is closely related to its order of evaluation. We describe here an ongoing project whose purpose is to use a prototype implementation of Eden’s operational semantics to investigate how alternative evaluation models may either improve or make worse the behavior of the skeletons implemented in EdenItem Analyzing the influence of mixed evaluation on the performance of Eden skeletons.(Parallel Computing, 2006) Hidalgo Herrero, Mercedes; Ortega Mallén, Yolanda; Rubio, FernandoA key point in the efficiency of parallel programs is the distribution of computation among processes. Haskell parallel dialects—like Eden—use mixed lazy and strict evaluation, and parallel performance is determined by the strategy used. We investigate how alternative evaluation models influence Eden skeletons performance using an implementation of Eden’s operational semantics. More concretely, we have chosen the parallel Divide-and-Conquer skeleton for our comparative analysis. Here we show the measures obtained for a simple program but using different mixed evaluation strategies, and we analyze the advantages and drawbacks of each of them.Item Relating function spaces to resourced function spaces.(Proceeding SAC '11 Proceedings of the 2011 ACM Symposium on Applied Computing, 2001) Sánchez Gil, Lidia; Hidalgo Herrero, Mercedes; Ortega Mallén, YolandaIn order to prove the computational adequacy of the (operational)natural semantics for lazy evaluation with respect to a standard denotational semantics, Launchbury defines a resourced denotational semantics. This should be equivalent to the standard one when given infinite resources, but this fact cannot be so directly established, because each semantics produces values in a different domain. The values obtained by the standard semantics belong to the usual lifted function space D = [D → D]⊥, while those produced by the resourced semantics belong to [C → E] where E satisfies the equation E = [[C → E] → [C → E]]⊥ and C (the domain of resources) is a countable chain domain defined as the least solution of the domain equation C = C⊥. We propose a way to relate functional values in the standard lifted function space to functional values in the corresponding resourced function space. We first construct the initial solution for the domain equation E = [[C → E] → [C → E]]⊥ following Abramsky’s construction of the initial solution of D = [D → D]⊥. Then we define a “similarity” relation between values in the constructed domain and values in the standard lifted function space. This relation is inspired by Abramsky’s applicative bisimulation. Finally we prove the desired equivalence between the standard denotational semantics and the resourced semantics for the lazy λ-calculus.Item An Operational Semantics for the Parallel Language Eden.(Parallel Processing Letters, 2002) Hidalgo Herrero, Mercedes; Ortega Mallén, YolandaThe functional parallel language Eden — suitable for the description of parallel and concurrent algorithms in a distributed setting — is an extension of Haskell with a set of coordination features. In this paper we present a formal operational semantics for the kernel of Eden, or more precisely, for a λ-calculus widened with explicit parallelism and potentially infinite communication channels. Eden overrides the lazy nature of Haskell on behalf of parallelism. This interplay between laziness and eagerness is accurately described by the semantics proposed here, which is based on Launchbury's natural semantics for lazy evaluation, and is expressed through a two-level transition system: a lower level for the local and independent evaluation of each process, and an upper one for the coordination between all the parallel processes in the system. As processes are created either under demand or in a speculative way, different scheduling strategies are possible — ranging from a minimal one that only allows the main thread to evolve, to a maximal one that evolves in parallel every active binding.Item To be or not to be. . . lazy (In a Parallel Context)1(Electronic Notes in Theoretical Computer Science, 2009) Hidalgo Herrero, Mercedes; Ortega Mallén, YolandaLaziness restricts the exploitation of parallelism because expressions are evaluated only on demand. Thus, parallel extensions of lazy functional languages, like Haskell, usually override laziness to some extent. The purpose of the present work is to analyze how and to which extent strictness should be introduced in a lazy language to design a parallel extension of it. Towards this end, we have considered different evaluation strategies mixing laziness and eagerness for the language Eden —a parallel extension of Haskell—, we have given formal definitions for each, and we have implemented them in an interpreter to be able to run examples with alternative evaluation models, so that we can observe the intermediate and final states of the processes in the system, in terms of heaps of closures. Although the study is based on Eden, the concepts involved and the conclusions that we have obtained can be transferred to other parallel and functional languages.Item Comparing Alternative Evaluation Strategies for Stream-Based Parallel Functional Languages.(Implementation and Application of Functional Languages, 2007) Hidalgo Herrero, Mercedes; Ortega Mallén, Yolanda; Rubio, Fernando; Horvath, Z.; Zsok, V; Butterfield, A.In parallel functional languages, like Eden, lazy and strict evaluation are commonly mixed. Thus, the parallel performance of these languages depends on the strategy used to fix the degrees of laziness/strictness. By using an implementation of Eden’s operational semantics,we analyze the influence of alternative evaluation models on Eden skeletons performance. In particular, we assess the performance of different implementations of a skeleton that uses stream-based communications.