Добро пожаловать на:
http://awl-project.narod.ru

 

For English language page (under development), click here.

 

Авторские права
© 2006—2008 Гаев Денис Геннадиевич

 

Последнее обновление сайта: 25.05.2008

 

Язык программирования AWL

 

Несколько слов о этом проекте

AWL — это новый, активно развивающийся язык программирования, ориентированный на решение широкого круга задач.

AWL — язык интерпретируемого типа (сценарный язык), и в этом отношении он похож на Perl, Python, Ruby. Программы на AWL не требуют предварительной компиляции, и способны выполняться в любой среде, в которой доступен AWL-интерпретатор.

AWL имеет много особенностей, характерных для языков функционального программирования. Так, само ядро языка построено на наборе функциональных примитивов (функторов), набор которых легко может быть расширен за счет как новых встроенных, так и определяемых пользователем функторов. При этом функторы AWL являются полноправными объектами (first-class objects): с ними можно обращаться как с данными любого другого типа (например, интегрировать в структуры данных, передавать другим функторам в качестве аргументов или возвращать в качестве значения).

Как и в традиционных языках обработки списков (LISP, Scheme), списки играют существенную роль в качестве механизма структурирования данных. И, как и в перечисленных языках, в AWL нет принципиального различия между программами и данными. Любые элементы программного кода могут рассматриваться как данные, и напротив, фрагменты программы могут создаваться и изменяться динамически в процессе выполнения. Помимо списков, предусмотрены такие средства интеграции данных, как многомерные массивы и словари (хэши) с произвольным типом ключей.

В AWL присутствуют развитые средства ООП: пользователь может определять классы и создавать объекты данных классов. Язык обеспечивает механизмы наследования (однолинейного) и полиморфизм на основе динамической проверки типов и виртуальных функторов-методов.

AWL имеет широкий набор средств взаимодействия с внешней средой. Помимо традиционного ввода-вывода, принципиальной частью языка является встроенный интерфейс оконной графики (который доступен пока только в среде Windows, но ориентирован на переносимость и в другие оконные среды). Примитивы работы с окнами и вывода графики непосредственно интегрированы с объектно-функциональной средой языка, что открывает возможности для создания сложных интерактивных приложений с минимальной затратой усилий.

При всем этом, интерпретатор достаточно компактен, использует минимальный объем памяти и обладает неплохим быстродействием, что в принципе позволяет использовать AWL не только на мощных компьютерах, но и на устройствах ограниченной мощности, таких как карманные компьютеры и сотовые телефоны. AWL может иметь перспективы в качестве сценарного языка общего назначения, инструмента для создания переносимых графических приложений, или интерактивных Web-компонент.

Язык распространяется свободно и бесплатен для некоммерческих проектов.

 

А чем, собственно, плох HTML?

Мое мнение о недостатках существующих на сегодняшний день WWW-технологий (Ошибка тысячелетия: почему и за что я не люблю HTML) читайте здесь: HTML_hater.htm.

 

AWL: основные ресурсы

 

NEW!

Последняя версия интерпретатора: 0.5.8 (от 24.05.2008) + документация (EN).

 

Скачать: http://awl-project.narod.ru/awl-000508.zip

 

История всех предшествующих версий:

http://awl-project.narod.ru/history.htm

 

Здесь можно найти последнюю версию руководства по языку
(версия от февраля 2008):

 

В формате HTML: http://awl-project.narod.ru/AWL-doc.html

В формате PDF: http://awl-project.narod.ru/AWL-doc.pdf

 

Как дополнение к руководству:

работа графической подсистемы языка описана здесь:

 

В HTML: http://awl-project.narod.ru/AWL-graphics.html

 

Справочные материалы (по версии0.5.5):

 

Русскоязычные справочные материалы [RU]:

 

 

Англоязычные справочные материалы [EN]:

 

 

Синтаксис языка: AWL syntax chart

 

Примеры:

 

Большое количество примеров AWL-программ и AWL-модулей можно загрузить здесь:

 

[EN] Англоязычная версия:

http://awl-project.narod.ru/awl_examp_EN.htm

 

[RU] Русскоязычная версия:

http://awl-project.narod.ru/awl_examp_RU.htm

 

Пресса

 

Статью Павла Дмитриева о языке AWL (“Без лишних слов”, «Мой компьютер», N 47 (426) от 16.11.2006) вы можете прочитать здесь: http://www.mycomp.com.ua/text/11732.

 

Журнал "Мир ПК", #10 / 2007:
Язык AWL: основы программирования

 

В электронном виде: http://www.osp.ru/pcworld/2007/10/4623783

 

Журнал "Мир ПК", #12 / 2007:
Графические приложения и электронные документы на языке AWL

 

В электронном виде: http://www.osp.ru/pcworld/2007/12/4705173

 

Материалы в Wikipedia:

 

Статья AWL (programming language) (in English): http://en.wikipedia.org/wiki/AWL_programming_language

Статья AWL (Programmiersprache) (in German): http://de.wikipedia.org/wiki/AWL_%28Programmiersprache%29

 

Обсуждение и контактная информация

 

На сайте доступна гостевая книга!

 

Если у вас имеются вопросы, замечания, идеи, пожелания и пр. —

предлагаю вам зайти на форум Vingrad.ru (http://forum.vingrad.ru/), где давно и активно обсуждается этот проект:

 

http://forum.vingrad.ru/topic-87700/45.html

 

Наконец, можно написать автору по следующему адресу:

 

 

Hosted by uCoz