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

Здесь есть возможность читать онлайн «W Cat - Язык программирования Euphoria. Справочное руководство» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Жанр: Программирование, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Язык программирования 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 имеет встроенную простую систему баз данных и обертки для работы с другими типам баз данных.
[Материал из Википедии]

Язык программирования Euphoria. Справочное руководство — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Язык программирования Euphoria. Справочное руководство», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

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

Аргументами данной функции могут быть атомы и ряды. Если аргументы являются рядами, применяются правила операций на рядах.

Аргументы должны быть представлены как 32-битные числа, со знаком или без знака.

Если вы намерены манипулировать полными 32-битными величинами, вы должны объявить переменные как atom, но не как integer. В Euphoria тип integer ограничен 31-битом.

Результат трактуется как число со знаком. Оно будет отрицательным, когда старший бит является 1.

Для лучшего понимания двоичного представления числа вы можете вызвать его на отображение в шестнадцатеричной записи. Используйте для этого команду printf() с форматом %x.

Пример 1:

a = and_bits(#0F0F0000, #12345678)

-- a равно #02040000

Пример 2:

a = and_bits(#FF, {#123456, #876543, #2211})

-- a равно {#56, #43, #11}

Пример 3:

a = and_bits(#FFFFFFFF, #FFFFFFFF)

-- a равно -1

-- заметьте, что #FFFFFFFF является положительным числом,

-- но результат побитовой логической операции трактуется

-- как 32-битное число со знаком, так что он отрицателен.

См. также:

or_bits, xor_bits, not_bits, int_to_bits

append

Синтаксис:

s2 = append(s1, x)

Описание:

Создаёт на базе s1 новый ряд, с x, добавленным в конец ряда s1 в качестве последнего элемента ряда s2. Длина ряда s2 будет равна length(s1) + 1, то есть, на один элемент больше длины исходного ряда s1.

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

Если x является атомом, операция эквивалентна s2 = s1 & xЕсли x является рядом, - не эквивалентна.

Необходимая дополнительная память выделяется автоматически и очень эффективно, благодаря динамическому распределению памяти, работающему в Euphoria. Случай, когда s1 и s2 в действительности являются одним и тем же рядом (как в Примере 1 ниже), особенно оптимален.

Пример 1:

Вы можете применить append() для динамического удлинения ряда, т.е.

sequence x

x = {}

for i = 1 to 10 do

x = append(x, i)

end for

-- x теперь равен {1,2,3,4,5,6,7,8,9,10}

Пример 2:

Любой объект Euphoria может быть добавлен к ряду, т.е.

sequence x, y, z

x = {"fred", "barney"}

y = append(x, "wilma")

-- y теперь равен {"fred", "barney", "wilma"}

z = append(append(y, "betty"), {"bam", "bam"})

-- z теперь равен {"fred", "barney", "wilma", "betty", {"bam", "bam"}}

См. также:

prepend, оператор сцепления &, оператор формирования ряда

arccos

Синтаксис:

include misc.e

x2 = arccos(x1)

Описание:

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

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

Аргумент, x1, должен быть в пределах от -1 до +1 включительно.

Результат, выраженный в радианах, будет находиться между 0 и PI.

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

Функция arccos() вычисляется не так быстро, как arctan().

Пример:

s = arccos({-1,0,1})

-- s равно {3.141592654, 1.570796327, 0}

См. также:

cos, arcsin, arctan

arcsin

Синтаксис:

include misc.e

x2 = arcsin(x1)

Описание:

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

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

Аргумент, x1, должен быть в пределах от -1 до +1 включительно.

Результат, выраженный в радианах, будет находиться между -PI/2 и +PI/2.

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

Функция arcsin() вычисляется не так быстро, как arctan().

Пример:

s = arcsin({-1,0,1})

-- s равно {-1.570796327, 0, 1.570796327}

См. также:

sin, arccos, arctan

arctan

Синтаксис:

x2 = arctan(x1)

Описание:

Выдаёт угол, тангенс которого равен x1.

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

Результат, выраженный в радианах, будет между -PI/2 и PI/2.

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

Функция arctan() вычисляется быстрее, чем arcsin() или arccos().

Пример:

s = arctan({1,2,3})

-- s равно {0.785398, 1.10715, 1.24905}

См. также:

tan, arcsin, arccos

atom

Синтаксис:

i = atom(x)

Описание:

Выдаёт 1, если x является атомом, иначе выдаёт 0.

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

Данная команда, в основном, служит для объявления переменных типа atom. Но вы можете также применять её подобно вызову функции, чтобы определить, не является ли объект атомом.

Пример 1:

atom a

a = 5.99

Пример 2:

object line

line = gets(0)

if atom(line) then

puts(SCREEN, "конец файла\n")

end if

См. также:

sequence, object, integer, атомы и ряды

atom_to_float32

Синтаксис:

include machine.e

s = atom_to_float32(a1)

Описание:

Преобразует атом Euphoria в ряд из 4-х однобайтовых величин. Эти 4 байта содержат представление числа с плавающей точкой в 32-х битном формате по стандарту IEEE.

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

Атомы Euphoria могут иметь величины, соответствующие 64-битным числам с плавающей точкой стандарта IEEE, так что вы можете потерять точность при преобразовании их к 32-битным числам (16 значащих цифр против 7). Диапазон показателей экспонент также намного шире для 64-битных чисел, чем в 32-битном формате (308 против 38), поэтому некоторые атомы могут оказаться слишком большими или слишком маленькими для представления их в 32-битном формате. В этом случае вы получите одну из специальных 32-битных величин: inf или -inf (бесконечность или -бесконечность). Чтобы избежать этих ограничений, вы можете применить atom_to_float64().

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

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

Представляем Вашему вниманию похожие книги на «Язык программирования Euphoria. Справочное руководство» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


libcat.ru: книга без обложки
Александр Цветков
Отзывы о книге «Язык программирования Euphoria. Справочное руководство»

Обсуждение, отзывы о книге «Язык программирования Euphoria. Справочное руководство» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x