---> Самая ли это свежая версия Euphoria?
      Посетите:  http://www.RapidEuphoria.com
      
 ---> Чтобы установить (или удалить) Euphoria, прочитайте install.htm
      
 ---> Что нового в этом выпуске?
      Читайте relnotes.doc 

Язык программирования Euphoria
версия 3.1

 
Добро пожаловать в EUPHORIA!... End User Programming with Hierarchical Objects for Robust Interpreted Applications

Язык программирования Euphoria прошел длительный путь развития с момента выпуска версии 1.0 в июле 1993 года. И теперь во всём мире тысячи программистов пишут программы на этом языке. Работает автоматизированный дискуссионный форум, управляемый и модерируемый программой, написанной на Euphoria, в котором участвуют более 500 подписчиков. На сайте Euphoria имеется более 1600 .zip-файлов, содержащих исходный код программ и библиотечных подпрограмм Euphoria. Десятки пользователей открыли свои собственные независимые страницы в Сети с оригинальным контентом, относящимся к Euphoria. Euphoria нашла применение в разнообразных коммерческих программах. Версия для Windows использована при создании многочисленных программ с GUI, служебных и сетевых программ. Версия для DOS послужила для разработки многих волнующих скоростных игр действия, снабжённых звуковыми эффектами от Sound Blaster. Версии для Linux и FreeBSD позволили написать программы X Windows GUI, серверные (CGI) программы, и массу полезных инструментальных и служебных программ.


Еще один совершенно другой язык программирования?

Euphoria - это язык программирования очень высокого уровня с несколькими особенностями, которые действительно выделяют его из сонма других языков:

  • Программы Euphoria исполняются под управлением Windows, DOS, Linux, и FreeBSD.

  • Euphoria является свободной и открытой системой программирования. В пакете, доступном для бесплатного получения, вы найдёте полный исходный код интерпретатора, транслятора и биндера Euphoria.

  • Язык гибкий, мощный и простой в изучении.

  • Вы не будете ждать компиляции и линковки - просто напишите и запустите свою программу.

  • Вы можете создавать и распространять свободные от авторских взносов самостоятельные .exe файлы.

  • Динамическое распределение памяти является основой Euphoria. Размерности переменных увеличиваются и сокращаются, не доставляя программисту хлопот о выделении и освобождении блоков памяти. Элементы массивов (рядов Euphoria) могут быть подвижной смесью данных различных типов и размерностей.

  • Euphoria обеспечивает широкую проверку ошибок времени прогона программы для: индексов массивов, инициализации переменных, параметров библиотечных подпрограмм, законных значений переменных и не только. Если в вашей программе что-то пойдет не так, вы получите полный отчет об ошибке, с трассой последних операторов и распечаткой значений переменных. С другими языками вас в типовом случае снабдят сообщением о нарушении защиты памяти, сопровождаемым малополезными дампами регистров и адресов.

  • Интерпретатор Euphoria более чем в 30 раз быстрее в сравнении с Perl или Python, и он значительно быстрее, чем все остальные интерпретируемые языки, в соответствии с тестами "Great Computer Language Shootout" (см. demo\bench\bench.doc).

  • А если и этого недостаточно, имеется транслятор с Euphoria на C, который может перевести любую программу Euphoria на C, что позволит разогнать её ещё больше. Стоит ли тратить время, отлаживая программу, написанную непосредственно на сложном для понимания C/C++? Вы можете легко разработать и отладить программу на Euphoria, а затем автоматически сгенерировать её код C для дальнейшей финальной компиляции.

  • Программы Euphoria не испытывают никаких 640K ограничений по памяти, которыми страдает MS-DOS. Все версии Euphoria предоставляют вам всю оперативную память, установленную на вашей машине, а если её окажется маловато, файл подкачки на диске вступит в действие, выделяя программе дополнительную виртуальную память.

  • В системе имеется интегрированный, легкий в использовании, полноэкранный отладчик/трассировщик исходного кода.

  • Доступно профилирование напряженности выполнения команд и расхода времени на подпрограммы.

  • Имеется большая и быстро растущая коллекция превосходных программ и библиотечных подпрограмм от активистов сообщества. Большинство программ предоставляется с полным исходным кодом.

  • RDS разработала экстремально гибкую систему управления базами данных (EDS), которая работает идентично на всех платформах Euphoria.

  • Воплощение Euphoria для WIN32 дает вам доступ к любым подпрограммам WIN32 API, а также к функциям C или процедурам Euphoria в .DLL-файлах. Команда программистов Euphoria разработала библиотеку Windows GUI (Win32Lib) вместе с мощной интерактивной визуальной средой конструирования пользовательского интерфейса Windows (IDE). Вы можете создать интерфейс графически, определить операторы Euphoria, которые должны выполняться по щелчкам мыши, а IDE позаботится о создании полной программы Euphoria для вас и за вас. Имеются библиотеки Windows Euphoria для доступа в Internet, разработки 3-мерных игр и многих других прикладных областей программирования.

  • Воплощение Euphoria в виде DOS32 для операционной среды типа MS-DOS снабжено встроенной графической библиотекой. Если необходимо, вы имеете доступ к программным прерываниям DOS. Вы можете вызывать подпрограммы в машинных кодах. Вы можете даже установить свои собственные обработчики аппаратных прерываний. Многие высокоскоростные игры со звуковыми эффектами от Sound Blaster были разработаны на 100% под Euphoria, без использования любых подпрограмм в машинных кодах, так как в этом не возникала необходимость.

  • Вариант Euphoria для Linux и FreeBSD позволяет вам использовать функции C и переменные в общих библиотеках для решения задач от простой графики до работы с интерфейсом X Windows и Internet CGI. Хорошая новость, не так ли? Программируем на Euphoria, а не на C!


Платформы и продукты

Euphoria исполняется на четырёх различных платформах: WIN32, DOS32, Linux и FreeBSD.

Предлагаемый пакет, содержащий продукты Интерпретатор, Транслятор и Биндер Euphoria, бесплатен для использования всеми желающими.

С помощью Биндера Euphoria вы можете окутать (зашифровать) и привязать любую программу Euphoria к копии исполнительного блока интерпретатора, чтобы создать единственный, самостоятельный, защищённый от вмешательств .exe-файл, предназначенный для распространения (подробности см. в bind.doc).

Другим продуктом является Транслятор с Euphoria на C, который тоже преобразует любую программу Euphoria в самостоятельный .exe-файл, но он обладает тем преимуществом перед Биндером, что значительно повышает скорость программы по сравнению с режимом интерпретации. Чтобы использовать Транслятор, вам потребуется один из 7 свободных компиляторов C, установленный на вашей машине, но никакие знания собственно C не нужны.

Документация, входящая в состав пакета, идёт в двух форматах - обычный текст и HTML. Файлы обычного текста(.doc-файлы) можно просматривать в любом текстовом редакторе, например, в Windows NotePad или WordPad. Для просмотра гипертекстовых файлов HTML (.htm-файлы) сгодится любой сетевой браузер. Инструментальная программа, которую мы разработали на Euphoria, позволяет нам автоматически генерировать текстовые и гипертекстовые файлы из общего источника. Таким образом, содержимое каждого файла в подкаталоге doc идентично соответствующему файлу в подкаталоге html, если не считать отсутствие гиперссылок, вариаций шрифтов, цвета текста и т.п. удобств. Суммарные сведения о документации см. в doc\overview.doc (или в html\overview.htm).

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

Чтобы исполнять версию Euphoria для WIN32, вам потребуется Windows 95 или любая другая более поздняя версия Windows. Она хорошо работает на XP.

Версия для DOS32 будет исполняться на любой версии Windows, а также на чистой DOS с любым 386-ым или более мощным процессором. Вопреки популярному мнению, DOS не умерла. Вы можете запускать программы DOS Euphoria на Windows XP в окне командной строки. (Прим.перев. - Ситуация усложнилась, начиная с Windows 7. Но и там есть возможность добавить виртуальную машину с Windows XP. И EU для DOS вполне устойчиво работает в окне эмулятора DosBox, который портирован уже даже на Kolibri OS. То есть, EU для DOS можно считать самой универсальной версией Euphoria.)

Чтобы запустить версию Euphoria для Linux, вам нужно будет иметь достаточно свежий выпуск Linux, который имеет в своём составе библиотеку libc6 или более новую. К примеру, Red Hat 5.2 или что-то более современное вполне подойдёт.

Чтобы работать с Euphoria под FreeBSD, выбирайте дистрибутив FreeBSD поновее.


Начинаем работать

0. Интерпретатор Euphoria является программой, которая исполняет написанные вами программы Euphoria. У него нет собственного красивого графического интерфейса, он запускается из приглашения командной строки. Когда вы будете готовы программировать Windows GUI (графический интерфейс), рекомендуем получить пакет IDE Джудит Эванс (имеющий открытый исходный код Euphoria). Он обеспечит вас очень удобной графической средой для программирования под Windows. Для большинства других работ достаточно иметь только какой-нибудь текстовый редактор вроде NotePad.
1. После того, как вы установите Euphoria, файлы документации будут расположены в каталогах doc и html. В файле overview.doc вы найдёте общий обзор документации. Файл refman.htm (или refman.doc) нужно прочитать в первую очередь. Если вам потребуется найти информацию по какой-то теме, введите команду guru в командной строке.
2. Полюбопытствуйте, как работают программы из каталога demo. Не стесняйтесь как-то изменить их или запустить в режиме trace, добавив:
        with trace
        trace(1)
как первые две строчки в файле .ex или .exw.
3. Попытайтесь написать какие-либо простые команды и запустить их на исполнение. Вы можете воспользоваться любым знакомым вам текстовым редактором. Возможно, позже вы захотите испытать штатный редактор Euphoria, ed, или получить редактор Euphoria, написанный Дэвидом Куни, на Web-сайте Euphoria.

Не бойтесь пробовать. Euphoria не кусается!

4. Прочтите файл what2do.doc, если ваших собственных идей пока не очень много.
5. Посетите Web-сайт Euphoria, получите заинтересовавшие вас пакеты и примите участие в дискуссиях на форуме Euphoria.

Если вы в программировании новичок и файл refman.htm показался вам пока не вполне понятным, получите интерактивный учебник Дэвида Гая, который называется "Путеводитель по Euphoria для новичков". Он расположен в разделе Документация нашего Архива.

 

Если вы испытываете какие-то трудности с установкой пакета Euphoria, прочтите файл install.doc


Указание распространителям условно-бесплатного программного обеспечения:
Мы поощряем вас распространять этот пакет Euphoria. Вы можете брать за него, сколько захотите. Люди могут использовать Euphoria как угодно долго без каких-либо обязательств.

ОГРАНИЧЕНИЕ ОТВЕТСТВЕННОСТИ:
Пакет Euphoria предлагается "как есть" без гарантий любого рода. Никакие доводы не могут повлечь за собой ответственность Rapid Deployment Software при любых повреждениях, случись они в результате использования или неспособности использования продуктов пакета.