F. Pottier and J. Protzenko, Programming with permissions: an introduction to Mezzo (long version), 2012.