Аватар для CoderHuligan
1753 / 1019 / 257
Регистрация: 30.06.2015
Сообщений: 5,132
Записей в блоге: 56

Euphoria - плюсы и минусы

02.09.2015, 17:34. Показов 18632. Ответов 44
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Существует такой язык программирования как Euphoria, это акроним «End-User Programming with Hierarchical Objects for Robust Interpreted Applications».
Язык обьединяет в себе синтаксическую простоту basic, с некоторыми конструкциями языка C.
Из https://ru.wikipedia.org/wiki/... мирования):
"Euphoria — интерпретируемый императивный язык высокого уровня общего назначения. C помощью транслятора из исходного кода на Euphoria может быть сгенерирован исходный код на языке Си, который в свою очередь может быть скомпилирован в исполнияемый файл или динамическую библиотеку при помощи таких компиляторов, как GCC, OpenWatcom и др. Программа Euphoria также может быть «связана» с интерпретатором для получения самостоятельного исполняемого файла. Поддерживается несколько GUI-библиотек, включая Win32lib[9] и оберток для wxWidgets, GTK+ и IUP. Euphoria имеет встроенную простую систему баз данных и обертки для работы с другими типам баз данных."
С сайта www.rapideuphoria.com
" Euphoria против других языков
Положив в основу Euphoria ряды как единственную, простую, общую, рекурсивную структуру данных, удалось избежать громадного объёма сложностей, обычно присутствущих в языках программирования. Массивы, структуры, союзы, массивы записей, многомерные массивы и другие тому подобные объекты других языков все могут быть легко представлены рядами. И структуры высшего уровня, такие как списки, стеки, архивы, очереди, деревья и т.д., тоже не ушли от этой участи.

Более того, в Euphoria вы можете иметь ряды смешанного типа; вы можете присвоить значение любого объекта элементу ряда; и ряды легко растут и сокращаются без всяких дополнительных усилий со стороны программиста по поводу вопросов выделения и освобождения памяти. Точная заблаговременная раскладка данных в структуры не требуется и она может быть создана и изменена динамически по мере необходимости. Легко пишется код общего характера, где, например, вы подаёте и извлекаете из единственного стека объекты разнообразного рода данных. Создание гибкого списка, который содержит разнообразные объекты данных, тривиально в Euphoria, но требует десятков строк уродливого кода в других языках.

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

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

В отличие от других языков, таких как LISP и Smalltalk, Euphoria выполняет "приборку" неиспользуемой памяти в непрерывном процессе, который никогда не вызывает случайных задержек в исполнении программы и не требует предварительного резервирования огромных участков памяти.

Определения обычных языков, таких как C, C++, Ada и т.д., очень сложны. Большинство программистов осваивает только некоторое подмножество возможностей языка. Стандарты ANSI на эти языки читаются как сложные своды законов.

Вас вынуждают писать разный код для разных типов данных, даже чтобы просто скопировать данные, получить текущую длину, сцепить их, сравнить их и т.д. Руководства по этим языкам переполнены функциями, такими как "strcpy", "strncpy", "memcpy", "strcat", "strlen", "strcmp", "memcmp", и т.п., каждая из которых работает только с одним из многих типов данных.

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

В этих языках численная величина 4 (к примеру) может иметь различный смысл в зависимости от того, что это за тип: int, char, short, double, int* и т.д. В Euphoria 4 - это атом 4, точка! В Euphoria есть кое-что, также названное типом, но это намного более простая концепция, как мы увидим чуть позже.

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

В других языках широко используются переменные-указатели (пойнтеры). Пойнтеры следовало бы назвать "goto" для структур данных. Они заставляют программиста думать о данных как о закреплённых в памяти огороженных участках, на которых производятся разного рода низкоуровневые, непереносимые на другие платформы трюки. Картина медных кишочек машины, на которой будет исполняться программа, то и дело всплывает в воображении программиста. В Euphoria нет пойнтеров и она не нуждается в них.
"
Официальный сайт и форум OpenEuphoria:http://openeuphoria.org
В данной теме прошу выкладывать свои соображения, примеры кода, сравнения и т.д, касаемые данного языка. Прошу тех, кто когда-либо использовал Eu высказывать своё мнение и демонстрировать свои наработки.
1
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
02.09.2015, 17:34
Ответы с готовыми решениями:

Перечислите все плюсы и минусы языков программирования Perl и PHP
Что может написать программист на Perl и чего не сможет написать программист на PHP

Плюсы и минусы
В массиве Z(m) найти число чередований знака, то есть число переходов с плюсов на минус или с минуса на плюс. Например, в...

Плюсы и минусы C#
Добрый день! Не хочу ни в коем случае развязывать вечную войну идущей между Delphi и С, но требуется грамотный взвешенный ответ. Вообще...

44
12 / 12 / 0
Регистрация: 02.07.2014
Сообщений: 124
08.01.2026, 19:25
Студворк — интернет-сервис помощи студентам
DeepSeek умеет в русскую Euphoria(Радость)

-- Программа выводит приветствие на экран.
-- Используются ключевые слова на русском (Радость / Euphoria 2.5/3.1)

Code
1
2
3
4
5
6
7
процедура начало()
    объект сообщение
    сообщение = "Привет, мир!"
    вывести(1,сообщение)
стоп процедура
 
начало()
0
фрилансер
 Аватар для Алексей1153
6501 / 5738 / 1134
Регистрация: 11.10.2019
Сообщений: 15,377
08.01.2026, 19:45
Цитата Сообщение от useful Посмотреть сообщение
В этом году будет 20 лет
забавно, что я сегодня первый раз случайно название языка увидел - эта тема мелькнула, глаз зацепился за незнакомое слово.

Про другие языки, какие бы они не были, хоть какое-то упоминание слышал (всякие расты, D, R, карбоны и так далее)

Это о популярности языка.

Не взлетел? Или что там
0
12 / 12 / 0
Регистрация: 02.07.2014
Сообщений: 124
08.01.2026, 19:58
Работоспособного дистрибутива 2.5 под linux у меня нет, да и нет смысла искать.
А вот вариант win и dos публичной версии (плюс исходники и бинари двуязычной от Игоря) имеется.
Убираю всё не актуальное и разделяю на отдельные win, dos.
Это кому то интересно кроме меня?

Добавлено через 2 минуты
Цитата Сообщение от Алексей1153 Посмотреть сообщение
Не взлетел? Или что там
Он во все времена был онли фан.

Как например rebol/red

Все кто хоть как то варится в кухне euphoria давно пенсионеры. Автор всех русских страниц лет на 15 меня старше, а мне на днях 65
0
Нарушитель
7166 / 2335 / 353
Регистрация: 10.12.2013
Сообщений: 8,081
08.01.2026, 20:06
Цитата Сообщение от useful Посмотреть сообщение
В этом году будет 20 лет с момента заявления Роберта Крейга
19 сентября 2006 года: Euphoria скоро станет полностью бесплатной программой с открытым исходным кодом! Всё верно — программа будет полностью бесплатной, а весь исходный код и коммерческая тайна станут общественным достоянием.
-- Скажу вам откровенно, мосье Фунт, -- шептал Валиадис, -- все в порядке. Бенеш уже согласился на пан-Европу, но знаете, при каком условии?
Пикейные жилеты собрались поближе и вытянули куриные шеи.
-- При условии, что Черноморск будет объявлен вольным городом. Бенеш -- это голова. Ведь им же нужно сбывать кому-нибудь свои сельскохозяйственные орудия? Вот мы и будем покупать.
При этом сообщении глаза стариков блеснули. Им уже много лет хотелось покупать и продавать
0
12 / 12 / 0
Регистрация: 02.07.2014
Сообщений: 124
19.01.2026, 07:26
Нашёл euphoria-pd_2.5-1_i386.deb но запустить на чём то мало мальски современном не реально, есть "древнючая" зависимость от libgpmg1:i386
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
19.01.2026, 07:26

Плюсы и минусы
Господа, хочется узнать ваше мнение по такому варианту работы с сервером терминалов. Хочу предложить к рассмотрению: Cервер...

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

Процессор I7 плюсы та минусы
Ответе какие плюсы та минусы Процессор I7

Плюсы и минусы J2se
Ребята, такой вопрос... Какие преимущества есть у j2se перед другими языками? и почему изучают именно его , а не чтото другое? ведь...

Поддомены. Плюсы и минусы.
Опять к Вам с вопросом господа. 1). Какое кол-во поддоменов безопасно делать на одном домене? При том, что тематика у них у всех...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
45
Ответ Создать тему
Опции темы

Новые блоги и статьи
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru