ACM Transactions on Programming Languages and Systems (2000)