Functional languages offer a number of advantages over their imperative counterparts. However, a substantial amount of the time spent on processing functional programs is due to the large amount of storage management which must be performed. Two apparent reasons for this are that the programmer is prevented from including explicit storage management operations in programs which have a purely functional semantics, and that more readable programs are often far from optimal in their use of storage. Correspondingly, two alternative approaches to the optimisation of store usage at compile-time are presented in this thesis. The first approach is called compile-time garbage collection. This approach involves determining at compile-time whi...
Existing techniques for garbage collection and machine code optimizations can interfere with each ot...
A signicant problem with lazy functional programs is that they often demand a great deal of space. M...
This thesis describes a complete compiler back-end for lazy functional languages, which uses various...
Functional languages offer a number of advantages over their imperative counterparts. However,\ud a ...
Automatic memory management is an important concept in many high order languages. It improves produc...
AbstractIf it can be determined at compile-time how many times values will be used within lazy funct...
Storage management overhead accounts for a considerable proportion of execution time in straightforw...
Generational garbage collectors are among the most popular garbage collectors used in programming la...
In this thesis we have presented and systematically analysed a method for extracting escape informat...
Profiling tools, which measure and display the dynamic space and time behaviour of programs, are ess...
This thesis is concerned with the resource consumption of lazy functional languages. It touches upon...
Garbage collection (GC) is a key component of almost all modern programming languages. The advent of...
We describe the design, implementation and use of a new kind of profiling tool that yields valuable ...
Language support of dynamic storage management simplifies the application programming task immensely...
Prompted by claims that garbage collection can outperform stack allocation when sufficient physical ...
Existing techniques for garbage collection and machine code optimizations can interfere with each ot...
A signicant problem with lazy functional programs is that they often demand a great deal of space. M...
This thesis describes a complete compiler back-end for lazy functional languages, which uses various...
Functional languages offer a number of advantages over their imperative counterparts. However,\ud a ...
Automatic memory management is an important concept in many high order languages. It improves produc...
AbstractIf it can be determined at compile-time how many times values will be used within lazy funct...
Storage management overhead accounts for a considerable proportion of execution time in straightforw...
Generational garbage collectors are among the most popular garbage collectors used in programming la...
In this thesis we have presented and systematically analysed a method for extracting escape informat...
Profiling tools, which measure and display the dynamic space and time behaviour of programs, are ess...
This thesis is concerned with the resource consumption of lazy functional languages. It touches upon...
Garbage collection (GC) is a key component of almost all modern programming languages. The advent of...
We describe the design, implementation and use of a new kind of profiling tool that yields valuable ...
Language support of dynamic storage management simplifies the application programming task immensely...
Prompted by claims that garbage collection can outperform stack allocation when sufficient physical ...
Existing techniques for garbage collection and machine code optimizations can interfere with each ot...
A signicant problem with lazy functional programs is that they often demand a great deal of space. M...
This thesis describes a complete compiler back-end for lazy functional languages, which uses various...