Selecting a primary programming language for a computer science curriculum; pl/i, pascal, and ada