Advanced Programming Language Design