Хочу всё знать: язык Alice

Один из самых впечатляющих взлётов в рейтинге TIOBE в 2017 году.
3 минуты15934

Если вы регулярно проверяете рейтинг TIOBE, то могли обратить внимание на невероятный взлёт языка Alice: два года назад он не влезал в Топ-100, в январе занимал 49 место, а сегодня стучится в первую двадцатку. Прекрасный повод познакомиться, пока это не стало мейнстримом.

Обратимся к Википедии. Alice – язык для функционального программирования, 17 лет назад разработанный в Саарском университете, Германия. Является диалектом Standart ML, но здесь добавлен ряд новых возможностей для работы с многопоточностью и программированием в ограничениях. Последняя стабильная версия была выпущена в 2007 году.

Как получилось так, что язык, который не обновлялся 10 лет, неожиданно  обрёл такую популярность? Ответ лежит на поверхности: неправильные пчелы пишут про неправильный мёд.

Описанный язык Alice носит приставку ML (факт игнорируется авторами статей в Википедии как в русской, так и английской версии), а героя, вернее, героиню сегодняшнего текста можно найти только с приставкой «ПО».  Итак, знакомьтесь – представительница рода образовательных языков Alice из Университета Карнеги-Меллон, США. Официально ей уже 19 лет и, как подобает настоящей девушке, она лишь недавно стала привлекать внимание огромного числа гиков.

Детство

В 1994 году профессор Рэнди Пауш задумался о создании принципиально нового языка программирования для обучения  детей и студентов первых курсов. С одной стороны, он должен быть графическим, с другой – поддерживать ООП и обладать возможностями «взрослых» языков. Напомним, что в те времена ещё не было Scratch – в MIT всё ещё прокачивали Logo – ограниченный и специфический язык.

Разработка началась в Университете Виргинии, перекочевала с Паушем в Карнеги-Меллон, пока наконец в 1998 году не увидела свет.  Как и многие дети, Alice (имя взято из книг Льюиса Кэролла) родилась не очень красивым ребёнком. Хоть язык и базировался на Python, но итоговый объём кода возвращал во времена Си.  Удобство работы с интерфейсом IDE оставляло желать лучшего: дизайн, расположение управляющих элементов были неудачными. Зато теперь даже ребёнок мог работать с 3D-моделями, управлять камерой, объектами и событиями.

В образовании результаты были блестящие:

  • средняя оценка по программированию у целевой группы студентов повысилась с С на B (с 3 на 4);
  • количество усвоенной информации повысилось с 47 до 88%.

Главной проблемой стало то, что далеко не все компьютеры в те времена могли поддерживать 3D-моделирование, да ещё и с высокоуровневым программированием событий. В итоге, юная Alice заинтересовала несколько крупных вузов, студий разработки игр, аниматоров, но так и не ушла в народ.

Alice 2.0 получила ряд важных улучшений:

  • улучшилась производительность. Возможность экспортировать результат в QuickTime сократило время на разработку, ядро языка была оптимизировано.
  • новый формат обучения. Теперь вы не просто могли управлять объектами и камерой, обучение происходило через создание сюжета мультфильма.
  • библиотеки. Первая версия была ограничена в персонажах и местах действия, во второй программистам подарили простор для фантазии.

Юность

В 2006 году компания Electronic Arts взялась за разработку Alice 3.0 для интеграции в легендарную серию игр The Sims.  Бета-версия вышла в 2009 году (как и Sims 3), лицензия так и осталась открытой, поэтому любой желающий теперь получил возможность создавать  знакомую анимацию, даже не приобретая игру.

В 16 лет Alice предприняла попытку выйти на широкую аудиторию – она была интегрирована в Netbeans IDE, получила поддержку Java, кардинально сменила имидж на более современный и элегантный. Также разработчики локализовали продукт, переведя его в том числе и на русский язык.

Сегодня Alice официально сотрудничает с Disney, Google, Oracle, Pixar, Microsoft, EA и несколькими очень известными компаниями.

Где познакомиться

Все исходники можно скачать на официальном сайте. Выбирайте версию, устанавливайте надстройку на Netbeans IDE и приступайте к созданию своего первого мультфильма.

  • Alice.ru – здесь вы найдёте 17 уроков, где вас научат создавать анимационные истории и даже 3D-шутеры.
  • Udemy – не бесплатный вводный курс, где вас познакомят с языком, средой и покажут базовые действия
  • Support – как всегда, самая исчерпывающая информация расположена на официальном сайте. Здесь FAQ, перечень полезных ресурсов и даже возможность напрямую задать вопрос лицензированному преподавателю.

Перспективы отношений

Мир сейчас переживает бум программирования, а образовательные языки, совмещённые с визуальной средой – локомотивы этой тенденции. Alice здесь не исключение – в период за январь по декабрь популярность запросов в поисковых системах выросла в 6 раз. Скорее всего это тенденция продолжится и, возможно, наши дети будут проходить его в школах.

Однако на бирже труда его знание не станет плюсом: для большинства работодателей это такой же бесполезный навык, как Borland Pascal. Но в отличие от последнего, от работы вы получите массу удовольствия.

web_developerязыки программирования
Нашли ошибку в тексте? Напишите нам.
Спасибо,
что читаете наш блог!