» » » W Cat - Язык программирования Euphoria. Справочное руководство


Авторские права

W Cat - Язык программирования Euphoria. Справочное руководство

Здесь можно скачать бесплатно "W Cat - Язык программирования Euphoria. Справочное руководство" в формате fb2, epub, txt, doc, pdf. Жанр: Программирование. Так же Вы можете читать книгу онлайн без регистрации и SMS на сайте LibFox.Ru (ЛибФокс) или прочесть описание и ознакомиться с отзывами.
Рейтинг:
Название:
Язык программирования Euphoria. Справочное руководство
Автор:
Издательство:
неизвестно
Год:
неизвестен
ISBN:
нет данных
Скачать:

99Пожалуйста дождитесь своей очереди, идёт подготовка вашей ссылки для скачивания...

Скачивание начинается... Если скачивание не началось автоматически, пожалуйста нажмите на эту ссылку.

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

Как получить книгу?
Оплатили, но не знаете что делать дальше? Инструкция.

Описание книги "Язык программирования Euphoria. Справочное руководство"

Описание и краткое содержание "Язык программирования Euphoria. Справочное руководство" читать бесплатно онлайн.



Euphoria (юфо'ри, также рус. эйфори'я, ра'дость) — язык программирования, созданный Робертом Крейгом (Rapid Deployment Software) в Канаде, Торонто. Название Euphoria — это акроним для «End-User Programming with Hierarchical Objects for Robust Interpreted Applications».


Euphoria — интерпретируемый императивный язык высокого уровня общего назначения. C помощью транслятора из исходного кода на Euphoria может быть сгенерирован исходный код на языке Си, который в свою очередь может быть скомпилирован в исполнияемый файл или динамическую библиотеку при помощи таких компиляторов, как GCC, OpenWatcom и др. Программа Euphoria также может быть «связана» с интерпретатором для получения самостоятельного исполняемого файла. Поддерживается несколько GUI-библиотек, включая Win32lib и оберток для wxWidgets, GTK+ и IUP. Euphoria имеет встроенную простую систему баз данных и обертки для работы с другими типам баз данных.

[Материал из Википедии]






-- Ваша программа окутана, её имя "myprog.exe",

-- и помещена в каталог c:\myfiles

-- Пользователь вводит: myprog myfile.dat 12345 "the end"


cmd = command_line()


-- cmd будет равно:

{"C:\MYFILES\MYPROG.EXE",

"C:\MYFILES\MYPROG.EXE", -- заполнитель места

"myfile.dat",

"12345",

"the end"

}


-- Заметьте, что все аргументы остались теми же, что и в примере 1,

-- исключая первые два. Второй аргумент теперь повторяет первый,

-- и служит просто для того, чтобы сохранить постоянной нумерацию

-- остальных аргументов, независимо от того, имеет ваша программа

-- форму .exe, или нет.


См. также:

getenv


compare


Синтаксис:

i = compare(x1, x2)

Описание:

Выдаёт 0, если объекты x1 и x2 идентичны, 1, если x1 больше чем x2, -1, если x1 меньше чем x2. Считается, что атомы меньше рядов. Ряды сравниваются поэлементно, начиная с первого элемента, до момента, пока не найдено первое различие.

Пример 1:


x = compare({1,2,{3,{4}},5}, {2-1,1+1,{3,{4}},6-1})

-- идентичны, x равно 0


Пример 2:


if compare("ABC", "ABCD") < 0 then -- -1

-- результатом будет истина: ряд ABC считается "меньшим", так как он короче

end if


Пример 3:


x = compare({12345, 99999, -1, 700, 2},

{12345, 99999, -1, 699, 3, 0})

-- x будет равно 1, так как 700 699


Пример 4:


x = compare('a', "a")

-- x будет равно -1, так как 'a' является атомом,

-- в то время как "a" является рядом длины 1


См. также:

equal, операции сравнения, операции на рядах


cos


Синтаксис:

x2 = cos(x1)

Описание:

Вычисляет и выдаёт косинус x1, где x1 выражено в радианах.

Комментарии:

Данная функция применима к атомам или ко всем элементам ряда.

Пример:


x = cos({.5, .6, .7})


-- x равно {0.8775826, 0.8253356, 0.7648422}


См. также:

sin, tan, log, sqrt


crash_file


Синтаксис:

include machine.e

crash_file(s)

Описание:

Задаёт представленное в виде ряда s имя файла, предназначенного для вывода диагностической информации, когда Euphoria вынуждена аварийно остановить вашу программу из-за ошибки, обнаруженной во время компиляции или во время работы.

Комментарии:

Обычно Euphoria печатает диагностическое сообщение вроде "syntax error" или "divide by zero" на экране, одновременно выводя отладочную информацию в файл ex.err, который всегда располагается в текущем каталоге.

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

Ряд s может быть пустым, т.е. "". В этом случае диагностическая или отладочная информация не будет выводиться ни на экран, ни в файл. Ряд s может также иметь форму "NUL" или "/dev/null", в этом случае диагностическая информация будет выводиться на экран, но в файл ex.err ничего не будет записано.

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

Пример:


crash_file("\\tmp\\mybug")


См. также:

abort, crash_message, crash_routine, отладка и профилирование


crash_message


Синтаксис:

include machine.e

crash_message(s)

Описание:

Задаёт сообщение, представленное в виде ряда s, которое будет выведено на экран в случае, если Euphoria аварийно остановит вашу программу из-за ошибки, обнаруженной во время работы.

Комментарии:

Обычно Euphoria печатает диагностическое сообщение на экране, например, "subscript out of bounds" (индекс вне границ) или "divide by zero" (деление на ноль), сопровождая его распечаткой отладочной информации в файле ex.err. Эти сообщения об ошибках будут малопонятны для тех ваших пользователей, которые сами не являются программистами Euphoria. Но вызывая crash_message(), вы сможете управлять содержимым сообщений, появляющихся на экране, чтобы наиболее полно учесть уровень понимания аварийной ситуации пользователями вашей программы. При этом вся отладочная информация будет ещё и распечатываться в файле ex.err, так что вы не потеряете никаких данных об ошибке, пользуясь этой дополнительной возможностью и подправляя стандартные сообщения.

Ряд s может содержать '\n', символы новой строки, поэтому ваше сообщение легко сделать исчерпывающе подробным, причем на вашем родном языке, а не на английском, на котором Euphoria выводит свои собственные сообщения. Перед выводом вашего сообщения Euphoria переключит экран в текстовый режим и начнет печать с верхней строки чистого экрана.

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

Пример:


crash_message("Произошла неизвестная ранее ошибка!\n" &

"Свяжитесь с [email protected]\n" &

"Не удаляйте файл \"ex.err\".\n")


См. также:

abort, crash_file, crash_routine, отладка и профилирование


crash_routine


Синтаксис:

include machine.e

crash_routine(i)

Описание:

Задаёт номер аварийной функции, которая, по вашему замыслу, должна быть вызвана Euphoria в случае обнаружения ошибки, из-за которой работа вашей программы прервалась бы с аварийным сообщением. Ваша аварийная функция должна иметь один аргумент типа object. Этот аргумент в настоящее время автоматически всегда равен 0 (рассматривается возможность наличия в будущих выпусках Euphoria и более содержательных аргументов). Вы можете вызывать crash_routine много раз с различными аварийными функциями. В момент, когда Euphoria должна была бы прервать вашу программу, будет вызвана та ваша аварийная функция, которая задана в самой последней команде crash_routine(), а затем начнётся отработка всей цепочки аварийных функций по направлению к вызванной в первой команде crash_routine(). Обычно каждая из предусмотренных аварийных функций должна выдавать 0. Если любая из функций этой цепочки выдаст не-нулевую величину, цепочка вызовов будет немедленно прервана, а программа завершена с сообщением об аварийной остановке (авосте).

Комментарии:

Определяя аварийные функции, вы даёте своей программе шанс отреагировать на фатальные ошибки (такие, например, как индекс вне границ), возникающие во время её работы, наиболее безопасным для ваших данных способом. Вы можете записать некоторые критичные данные на диск. Вы можете проинформировать пользователя о том, что случилось и что он должен в первую очередь сделать. Вы можете также записать ключевую отладочную информацию. Фактически, когда ваша аварийная функция вызвана, файл ex.err уже будет записан. Ваша функция может перезаписать ex.err ещё где-то, или даже открыть его и извлечь из него необходимую информацию, например, сообщение об ошибке.

Команда crash_routine() может использоваться с интерпретатором или транслятором. Транслированный код не выполняет широкую проверку ошибок во время работы программы и не обеспечивает полную распечатку в ex.err, но исключения машинного уровня фиксируются, и crash_routine() дает вам превосходную возможность записать некоторые переменные на диск для использования при дальнейшей отладке.

Разработчику библиотеки может понадобиться вызов crash_routine() в библиотеке. Это позволит более упорядоченно обращаться с данными, закрывая файлы, отпирая запертые файлы, высвобождая ресурсы и т.п. Но разработчик главной программы может иметь и свои собственные crash_routine(). И все аварийные функции будут отработаны Euphoria, если первая вызванная (последняя назначенная) и все последующие выдадут 0.

Аварийная функция не может продолжить исполнение программы из точки останова, исправив ошибку. Но других ограничений на то, что она может делать, практически не существует. Она не может и не должна возвращаться вспять по программе, но она может перезапустить эту программу, например, с откорректированными аргументами командной строки.

Если во время исполнения аварийной функции случится другая ошибка, снова вызывается распечатка отладочной информации, но имя файла в этом случае будет уже ex_crash.err, а не ex.err. С этого момента запрещаются любые новые вызовы аврийных функций, а вы остаётесь наедине с ex.err и ex_crash.err, чтобы с ними в руках попытаться найти причину всех несчастий.

Пример:


function crash(object x)

-- в случае пожара ...


-- (под Linux) отправить сообщение e-mail, содержащее файл ex.err

system("mail -s \"crash!\" [email protected] < ex.err > /dev/null", 2)


return 0

end function


crash_routine(routine_id("crash"))


См. также:

abort, crash_file, crash_message, отладка и профилирование


current_dir


Синтаксис:

include file.e

s = current_dir()

Описание:

Выдаёт имя текущего рабочего каталога (директории, папки, фолдера).


На Facebook В Твиттере В Instagram В Одноклассниках Мы Вконтакте
Подписывайтесь на наши страницы в социальных сетях.
Будьте в курсе последних книжных новинок, комментируйте, обсуждайте. Мы ждём Вас!

Похожие книги на "Язык программирования Euphoria. Справочное руководство"

Книги похожие на "Язык программирования Euphoria. Справочное руководство" читать онлайн или скачать бесплатно полные версии.


Понравилась книга? Оставьте Ваш комментарий, поделитесь впечатлениями или расскажите друзьям

Все книги автора W Cat

W Cat - все книги автора в одном месте на сайте онлайн библиотеки LibFox.

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

Отзывы о "W Cat - Язык программирования Euphoria. Справочное руководство"

Отзывы читателей о книге "Язык программирования Euphoria. Справочное руководство", комментарии и мнения людей о произведении.

А что Вы думаете о книге? Оставьте Ваш отзыв.