Smalltalk

Изучаю вот язык программирования Smalltalk. Решил сразу начать с переноса программ, которые меня когда-то просили написать. Язык, кстати, использует два основные парадигмы: объектно-ориентированный подход и сигналы. А самое главное, выглядит красиво и оригинально. :)

Вот пример программы, заменяющей максимальное значение в массиве на среднее арифметическое всех элементов этого массива. Реализовал в виде класса, потому что есть большой профит, хотя можно было бы сделать всё намного проще. :)

"Основная программа"

"Создаём объект MyArray из массива"

a := MyArray new: #(1 4 2 3).

"Заменяем максимальный элемент на среднее арифметическое
всех элементов и выводим на печать"

(a at: (a maxn) put: (a avg)) printNl.

Сам код класса можно найти по адресу
http://freeshells.ch/~bug2bug/wiki/doku.php?id=smalltalk

Ответить