Logo, Tcl/Tk (вместо бейсика со SCREEN/LINE), Ruby, Python - это конечно удобно и наглядно. Но выбранный язык должен быть свего рода "кросс-платформенным",чтобы ученик и дома мог делать домашние задания или писать что-то для себя (для участие в школьных конференциях, тренироваться к олимпиадам по программированию, реализовывать собственные идеи и задумки). Дома же у любого нормального ученика обязаельно будет Windows (как это, ребёнок без игр? =) ). Поэтому использование C, C++ кажется более оправданным, чем Python, Ruby и TCL/TK. Java сложно, да и с графикой туговато.
Поэтому C(С++) + sdl - великолепное сочетание. Кросс-платформено, можно писать игрушки (а каждому ученику хочется написать именно ИГРУ, а НЕ АЛГОРИТМ. Посмотрите на работы, представленные на конференциях). GUI интерфейс конечно проблема, но тут можно попробовать то же QT, которое написано грамотно, продуманно и интерсно.
Выбор языка для образовательных целей, конечно, дело нетривиальное. Вот тут и можно было бы порассуждать.