English

Three Optimisations for Sharing

Programming Languages 2007-05-23 v1

Abstract

In order to improve precision and efficiency sharing analysis should track both freeness and linearity. The abstract unification algorithms for these combined domains are suboptimal, hence there is scope for improving precision. This paper proposes three optimisations for tracing sharing in combination with freeness and linearity. A novel connection between equations and sharing abstractions is used to establish correctness of these optimisations even in the presence of rational trees. A method for pruning intermediate sharing abstractions to improve efficiency is also proposed. The optimisations are lightweight and therefore some, if not all, of these optimisations will be of interest to the implementor.

Keywords

Cite

@article{arxiv.cs/0203022,
  title  = {Three Optimisations for Sharing},
  author = {Jacob M. Howe and Andy King},
  journal= {arXiv preprint arXiv:cs/0203022},
  year   = {2007}
}

Comments

To appear in Theiry and Practice of Logic Programming