|
Walid Taha, Stephan Ellner, and Hongwei Xi
Generating imperative, heap-bounded
programs in a functional setting
In Proceedings of the Third International Conference on Embedded
Software, pages 340-355, Philadelphia, PA, October 2003 Springer-Verlag
LNCS 2855
High-level programming languages offer significant expressivity but provide
little or no guarantees about resource utilization. Resource-bounded
languages provide strong guarantees about the runtime behavior of programs
but often lack mechanisms that allow programmers to write more structured,
modular, and reusable programs. To overcome this basic tension in language
design, this paper advocates taking into account the natural distinction
between the development platform and the deployment platform for
resource-sensitive software. To illustrate this approach, we develop the
meta-theory for GeHB, a two-level language in which first stage
computations can involve arbitrary resource consumption, but the second
stage can only involve functional programs that do not require new heap
allocations. As an example of a such a second-stage language we use the
recently proposed first-order functional language LFPL. LFPL can be
compiled directly to malloc-free, imperative C code. We show that all
generated programs in GeHB can be transformed into well-typed LFPL
programs, thus ensuring that the results established for LFPL are directly
applicable to GeHB
[ bib |
.ps |
.pdf ]
Back This file has been generated by
bibtex2html 1.61
Copyright notice: The documents contained
in these pages are included by the contributing authors as a means to
ensure timely dissemination of scholarly and technical work on a
non-commercial basis. Copyright and all rights therein are maintained
by the authors or by other copyright holders, notwithstanding that
they have offered their works here electronically. It is understood that all persons copying this information will
adhere to the terms and constraints invoked by each author's
copyright. These works
may not be reposted without the explicit permission of the copyright
holder.
If you experience problems downloading any of the files above,
it is most likely because your browser does not handle compressed
files correctly.
In particular, Netscape might save the file in the compressed
gz-format with extension .ps or
.pdf (indicating postscript or PDF, resp.). You can work around this by saving the file,
renaming it to .ps.gz or .pdf.gz, and then
uncrompress it.
|