Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
A resource semantics and abstract machine for Safe: a functional language with regions and explicit deallocation
Montenegro M., Peña R., Segura C. Information and Computation235 3-35,2014.Type:Article
Date Reviewed: Jan 19 2015

A programming language called Safe is the topic of this paper. It has the syntax and operational semantics of a standard functional language, but is limited to first-order functions.

Safe adds some simple annotations to do with memory management to functional programming. There is one that ensures that a value passed to a function is a copy rather than an alias of an existing structure, and another that states that a structure passed to a function should be destroyed. Together, these enable much tighter control of memory usage than is possible with conventional functional programming.

The annotations that would be used by a Safe programmer are translated to a more complex form of annotation (using the concept of a region-based memory management system), and this in turn translates to imperative code for a virtual machine.

The bulk of the paper is taken up by a description of the translation process and the syntax and semantics of the languages. Detailed formal proofs of the properties of the languages are given.

The overall aim is to enable functional-style programming, but without the uncertainty in timing caused by automatic garbage collection, and with a more efficient use of memory, suitable for use on devices that have strict memory requirements.

This is a useful development of ideas, demonstrating that there are plenty of new fundamental ideas in programming languages that need to be explored.

Reviewer:  M. Huntbach Review #: CR143096 (1505-0408)
Bookmark and Share
 
Applicative (Functional) Languages (D.3.2 ... )
 
 
Data Types And Structures (D.3.3 ... )
 
Would you recommend this review?
yes
no
Other reviews under "Applicative (Functional) Languages": Date
Implementation of non-strict functional programming languages
Traub K., MIT Press, Cambridge, MA, 1991. Type: Book (9780262700429)
Jun 1 1992
Understanding Russell–a first attempt
Hook J.  Semantics of data types (, Sophia-Antipolis, France, Jun 27-29, 1984)851984. Type: Proceedings
Jun 1 1985
Implementing functional languages
Peyton Jones S., Lester D., Prentice-Hall, Inc., Upper Saddle River, NJ, 1992. Type: Book (9780137219520)
Apr 1 1993
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy