The SCAM programming language