Smalltalk — объектно-ориентированный язык программирования с динамической типизацией, разработанный в Xerox PARC Аланом Кэйем, Дэном Ингаллсом, Тедом Кэглером, Адель Голдберг, и другими в 1970-х годах. Язык был представлен как Smalltalk-80 и с тех пор широко используется. Smalltalk продолжает активно развиваться и собирает вокруг себя преданное сообщество пользователей.
Smalltalk оказал большое влияние на развитие многих других языков, таких как: Objective-C, Actor, Java и Ruby. Многие идеи 1980-х и 1990-х по написанию программ появились в сообществе Smalltalk. К ним можно отнести рефакторинг, шаблоны проектирования (применительно к ПО), карты Класс-Обязанности-Взаимодействие и экстремальное программирование в целом. Основатель концепции Wiki, Вард Каннингем, также входит в сообщество Smalltalk.
Элементы синтаксиса:Комментарии, которые могут быть вложенными " ... " Регистрозависимость да Регулярное выражение идентификатора переменной [a-zA-Z][a-zA-Z0-9]* Присваивание значения переменной := Объявление переменной | variable1 variable2 ... | Группировка выражений ( ... ) Блок [ x. y. ... ] Равенство == Неравенство ~~ Тождественное равенство = Тождественное неравенство ~= Сравнение < > <= >= compare Определение функции f ... или f: p1 ... Вызов функции a f Вызов функции без параметров f value Последовательность . Если - то condition ifTrue: ... Если - то - иначе condition ifTrue: ... ifFalse: ... Цикл с предусловием condition whileTrue: ... Цикл с постусловием [ ... . condition] whileFalse Цикл for - next для диапазона целых чисел с инкрементом на 1 1 to: 10 do: [...] или 1 to: 10 by: 1 do: [...] Цикл for - next для диапазона целых чисел с декрементом на 1 1 to: 10 by: -1 do: [...]
Дата создания: 1970-е годы Создан под влиянием: Lisp Simula Повлиял на: Java Objective-C Ruby Scala Парадигма: объектно-ориентированная Типизация: динамическая Диалекты: Smalltalk-80 Реализации и версии (свернуть все | развернуть все): Squeak
|