Marco T. Morazán’s research while affiliated with Seton Hall University and other places

What is this page?


This page lists works of an author who doesn't have a ResearchGate profile or hasn't added the works to their profile yet. It is automatically generated from public (personal) data to further our legitimate goal of comprehensive and accurate scientific recordkeeping. If you are this author and want this page removed, please let us know.

Publications (3)


Towards Closureless Functional Languages.
  • Conference Paper

January 2005

·

29 Reads

·

2 Citations

Marco T. Morazán

One of the most attractive features of functional languages is first-class functions. To support first-class functions many functional languages create heap-allocated closures to store the bindings of free variables. This makes it difficult to predict how the heap is accessed and makes accesses to free variables slower than accesses to bound variables. This article presents the operational semantics of the MT evaluator virtual machine and proposes a new implementation strategy for first-class functions in a pure functional language that eliminates the use of heap-allocated closures by using partial evaluation and dynamic code generation. At runtime, functions containing references to free variables are specialized for the bindings of these variables. In these specialized functions, references to free variables become references to constant values. As a result, the need for heap allocated closures is eliminated, accesses to free variables become faster than accesses to bound variables, and expected heap access patterns remain unchanged.


List-Heap Paging in a Distributed Virtual Memory System for Functional Languages.

January 2003

·

16 Reads

·

9 Citations

Functional languages have failed to become preeminent in the industrial world, because they are perceived as slow. This reputation is mostly undeserved, but some lentitude is associated with functional languages due to their interaction with memory systems. In fact, this interaction is poorly understood and not enough research is conducted on the design of memory systems for functional languages. The MT system is being developed to understand and improve the interaction between a pure list-based functional language and memory. MT provides its evaluator with aa intelligent backing store implemented as an all-software paged distributed virtual memory system. Memory is divided into different spaces that are each managed independently and in parallel with program execution. In this paper, we present results obtained from observing the MT-paging traffic between the processor running the evaluator and the MT-heap's backing store in a system where the heap and stack are distributed, managed as separate address spaces, and each is allocated exclusive use of a set of frames. The results suggest tbat FIFO is as competitive as LRU and it is argued that FIFO should be used as the MT-heap page replacement policy. Furthermore, we present a brief argument that justifies using multiple address spaces and exclusive frame pools for the MT heap and MT stack.


Citations (2)


... Our main motivation for developing the algorithm presented in this article is partial evaluation. At runtime, functions can be specialized based on the bindings of their free variables [12]. To specialize functions in this manner, programs are lambda lifted in order to know the complete set of free variables at specialization time during program execution. ...

Reference:

Improved Graph-Based Lambda Lifting
Towards Closureless Functional Languages.
  • Citing Conference Paper
  • January 2005