BCL: A compositional contract language for embedded systems | IEEE Conference Publication | IEEE Xplore