~~~~~~~~~~~~~~~~~~~~ Arc.Ask3.Ru ~~~~~~~~~~~~~~~~~~~~~ 
Номер скриншота №:
✰ E05CB48C53EAEF9DDE09BDB2B736184C__1716659280 ✰
Заголовок документа оригинал.:
✰ Red (programming language) - Wikipedia ✰
Заголовок документа перевод.:
✰ Красный (язык программирования) — Википедия ✰
Снимок документа находящегося по адресу (URL):
✰ https://en.wikipedia.org/wiki/Red_(programming_language) ✰
Адрес хранения снимка оригинал (URL):
✰ https://arc.ask3.ru/arc/aa/e0/4c/e05cb48c53eaef9dde09bdb2b736184c.html ✰
Адрес хранения снимка перевод (URL):
✰ https://arc.ask3.ru/arc/aa/e0/4c/e05cb48c53eaef9dde09bdb2b736184c__translat.html ✰
Дата и время сохранения документа:
✰ 22.06.2024 17:12:08 (GMT+3, MSK) ✰
Дата и время изменения документа (по данным источника):
✰ 25 May 2024, at 20:48 (UTC). ✰ 

~~~~~~~~~~~~~~~~~~~~~~ Ask3.Ru ~~~~~~~~~~~~~~~~~~~~~~ 
Сервисы Ask3.ru: 
 Архив документов (Снимки документов, в формате HTML, PDF, PNG - подписанные ЭЦП, доказывающие существование документа в момент подписи. Перевод сохраненных документов на русский язык.)https://arc.ask3.ruОтветы на вопросы (Сервис ответов на вопросы, в основном, научной направленности)https://ask3.ru/answer2questionТоварный сопоставитель (Сервис сравнения и выбора товаров) ✰✰
✰ https://ask3.ru/product2collationПартнерыhttps://comrades.ask3.ru


Совет. Чтобы искать на странице, нажмите Ctrl+F или ⌘-F (для MacOS) и введите запрос в поле поиска.
Arc.Ask3.ru: далее начало оригинального документа

Красный (язык программирования) — Википедия Jump to content

Красный (язык программирования)

Из Википедии, бесплатной энциклопедии
Красный
Красный логотип (стилизованный под Ханойскую башню)
Парадигма Мультипарадигмальность : императивная , функциональная , символическая.
Разработано Ненад Ракочевич [1]
Разработчик Ненад Ракочевич
Впервые появился 2011
Стабильная версия
0.6.5 [2] ( Бета ) / 19 февраля 2024 г.
ТЫ Linux , Windows , OS X
Лицензия модифицированные BSD и Boost
Расширения имен файлов .красный, .красный
Веб-сайт www .red-lang .org Отредактируйте это в Викиданных
Под влиянием
Ребол , Лисп , Скала , Луа

Red — это язык программирования , созданный для преодоления ограничений языка программирования Rebol . [3] Орден был учрежден в 2011 году Ненадом Ракочевичем. [4] и является одновременно императивным и функциональным языком программирования. Его синтаксис и общее использование совпадают с синтаксисом интерпретируемого языка Rebol. [5]

Варианты реализации Red направлены на создание полнофункционального языка программирования: [4] [6] Красный можно использовать для программирования чрезвычайно высокого уровня ( DSL и GUI ), а также программирования низкого уровня ( операционные системы и драйверы устройств ). Ключом к этому подходу является то, что язык состоит из двух частей: Red/System и Red . [7]

  • Red/System похож на C, но упакован в лексическую структуру Rebol — например, можно было бы написать if x > y [print "Hello"] вместо if (x > y) {printf("Hello\n");}.
  • Red гомоиконный язык , способный к метапрограммированию с семантикой, подобной Rebol. [3] [8] Библиотека времени выполнения Red написана на Red/System и использует гибридный подход: она компилирует то, что может вывести статически, а в противном случае использует встроенный интерпретатор . Дорожная карта проекта включает в себя оперативный компилятор для промежуточных случаев, но он еще не реализован.

Red стремится оставаться независимым от любой другой цепочки инструментов ; он выполняет собственную генерацию кода. [3] Таким образом, возможна кросс-компиляция [6] Red программ с любой поддерживаемой платформы на любую другую через переключатель командной строки. И Red, и Red/System распространяются как программное обеспечение с открытым исходным кодом по модифицированной лицензии BSD . Библиотека времени выполнения распространяется по более либеральной лицензии Boost Software License .

Начиная с версии 0.6.4 Red включает сборщик мусора «Простой GC». [9]

Схема архитектуры красного языка

Введение [ править ]

Красный был представлен в Нидерландах в феврале 2011 года на конференции Rebol & Boron. [10] автор Ненад Ракочевич. В сентябре 2011 года язык программирования Red был представлен широкой аудитории во время Дня свободы программного обеспечения 2011. [11] [12] Ракочевич — давний разработчик Rebol, известный как создатель HTTP-сервера Cheyenne . [13]

Особенности [ править ]

Синтаксис и семантика Red очень близки к синтаксису Rebol . [4] [14] Как и Rebol, он поддерживает метапрограммирование и предметно-ориентированные языки ( DSL ) и поэтому является высокоэффективным инструментом для диалектирования (создания встроенных DSL). Red включает в себя диалект Red/System, язык C-уровня, который предоставляет возможности системного программирования. [7] Red легко интегрируется с другими инструментами и языками в виде DLL (libRed) и очень легкий (около 1 МБ). Он также может выполнять кросс-компиляцию для различных платформ (см. раздел «Кросс-компиляция» ниже) и создавать пакеты для платформ, которые в них нуждаются (например, .APK на Android). [7] Red также включает в себя полностью реактивную кроссплатформенную систему графического интерфейса, основанную на базовом механизме реактивного потока данных, диалекте 2D-рисования, сравнимом с SVG, поддержке макросов во время компиляции и выполнения, а также более 40 стандартных типов данных.

Цели [ править ]

Ниже приводится список целей Red, представленный в День свободы программного обеспечения 2011 года: [11] [12]

  • Простота («Для написания кода не требуется IDE».)
  • Компактность («Высокая выразительность максимизирует производительность»).
  • Скорость («Если она слишком медленная, она не может быть достаточно универсальной».)
  • Будьте «зелеными», занимайте мало места («Потому что ресурсы не безграничны»).
  • Вездесущность («Распространение повсюду»).
  • Портативность. Написание единожды запускается везде («Это меньше всего ожидается от языка программирования».)
  • Гибкость («Не лучший вариант, но хорошо подходит для любой задачи!»)

Коммерческие приложения [ править ]

В настоящее время на Red разрабатываются следующие коммерческие приложения:

  • Диаграммы [15] — Построение диаграмм в реальном времени
  • СмартXML [16] — Инструмент анализа XML.

Развитие [ править ]

Развитие Red планируется проводить в два этапа:

  1. Начальная фаза: компиляторы Red и Red/System, написанные на Rebol 2.
  2. Фаза начальной загрузки : компиляторы Red и Red/System дополнены JIT-компилятором Red, написанным на Red.

Кросс-компиляция [ править ]

В настоящее время Red поддерживает следующие цели кросс-компиляции: [4]

(Примечание: в настоящее время приложения Red являются 32-битными, но в будущем планируется перейти на 64-битные. [4] )

Привет, мир! [ редактировать ]

Программа «Привет, мир!» программа красным цветом:

Красный   [  Название:   «Простой сценарий hello world»  ] 
 print   «Hello, World!» 

Пример факториала [ править ]

ВАЖНО: Они предназначены в качестве примеров синтаксиса. Пока у Red нет поддержки 64-битных чисел переполнит 32-битное , пример целого числа очень быстро целое число. Изменение этого параметра на «float!» пойдет дальше, но это просто для того, чтобы показать синтаксис языка.

Ниже приведен пример факториала в Red:

Красный   [  Название:   "Факториальный скрипт"  ]    ;   Примечание. Название не является обязательным. 

  факториал:   func   [ 
	 x   [  целое число!   ]    ;   Указывать тип аргумента в Red необязательно 
 ][ 
	 либо   x   =   0   [  1  ][  x   *   факториал   x   -   1  ] 
 ] 

Ниже приведен тот же пример факториала в Red/System (в этом очень простом случае исходный код очень похож на версию Red):

Red  /System   [  Название:   «Скрипт факториала»  ] 

 факториал:   func   [ 
	 x         [  целое число!   ]                     ;   Это обязательно в 
	 возврате Red/System:   [  целое число!   ]                     ;   Это обязательно в Red/System 
 ][ 
	 либо   x   =   0   [  1  ][  x   *   факториал   x   -   1  ] 
 ] 

См. также [ править ]

Ссылки [ править ]

  1. ^ «Создатель красного» . Гитхаб .
  2. ^ «Журнал изменений Рэда» . красный язык . Проверено 21 февраля 2024 г.
  3. ^ Перейти обратно: а б с «Начало программирования графического интерфейса с использованием красного языка» . Учеба сегодня вечером . Проверено 17 сентября 2021 г.
  4. ^ Перейти обратно: а б с д Это Бальберт 2018 .
  5. ^ «Интервью с Ненадом Ракочевичем о Red, языке программирования, вдохновленном Rebol» . Не учебник по монадам . 28 августа 2015 года . Проверено 28 августа 2015 г.
  6. ^ Перейти обратно: а б «6 необычных и революционных языков программирования, которые стоит выучить в 2023 году» . makeuseof.com . 18 октября 2023 г.
  7. ^ Перейти обратно: а б с Лукас, Матис (21 июля 2023 г.). «Красный: императивный и функциональный язык программирования, который также является языком с «полной батареей» . Developpez.com . Проверено 16 января 2023 г.
  8. ^ Сасу, Александру (22 ноября 2018 г.). «Обзор Красного» . Софтпедия . Проверено 21 февраля 2024 г.
  9. ^ Люсиндамишель. «0.6.4 Простой сборщик мусора и консоль с графическим интерфейсом Pure Red» . Проверено 16 декабря 2018 г. Основной особенностью версии 0.6.4 является то, что мы называем Simple GC (сборщик мусора). В будущем планируется создать более совершенный GC.
  10. ^ «Новый красный язык программирования получает серверную часть Syllable» , osnews.com , май 2011 г.
  11. ^ Перейти обратно: а б «Красный язык программирования: красный на Дне свободы программного обеспечения 2011» , red-lang.org , 14 сентября 2011 г.
  12. ^ Перейти обратно: а б «День свободы программного обеспечения 2011: Красный язык программирования, новый диалект REBOL» . YouTube . Проверено 17 января 2023 г.
  13. ^ «Что такое Шайенн? » Последнее обращение: ноябрь 2017 г.
  14. ^ «Архитектура динамического картографирования» . ОгайоССЫЛКА . Декабрь 2021.
  15. ^ «DiaGrammar» , red-lang.org , март 2020.
  16. ^ «SmartXML» , redata.dev .

Дальнейшее чтение [ править ]

Внешние ссылки [ править ]

Arc.Ask3.Ru: конец оригинального документа.
Arc.Ask3.Ru
Номер скриншота №: E05CB48C53EAEF9DDE09BDB2B736184C__1716659280
URL1:https://en.wikipedia.org/wiki/Red_(programming_language)
Заголовок, (Title) документа по адресу, URL1:
Red (programming language) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть, любые претензии не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, денежную единицу можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)