Smalltalk as the first programming language: the Carleton experience