The Abstract State Machine Language, AsmL, is a novel executable specification language based on the theory ofAbstract State Machines. AsmL is object-oriented, provides high level mathematical data-structures, and is built around the notion ofsynchronous updates and finite choice.AsmL is fully integrated into the .NET framework and Microsoft development tools. In this paper, we explain the design rationale ofAsmL and provide static and dynamic semantics for a kernel of the language.