Curl (язык программирования)

редактировать
Curl
Curl logo.gif
Paradigm multi-paradigm : объектно-ориентированный, разметка
Разработано Стивом Уордом, MIT
Разработчик Curl, Inc., Sumisho Computer Systems Corp., SCSK Corporation
Впервые появилось1998
Стабильный выпуск 8.0.10 / 30 августа 2019 г.; 13 месяцев назад (2019-08-30)
Печатная дисциплина строгий
OS Linux, MacOS, Windows
Веб-сайтwww.curl.com
Диалекты
нет
Под влиянием
HTML, JavaScript, Lisp
  • Curl в Викиучебках

Curl - это рефлексивный объектно-ориентированный язык программирования для интерактивных веб-приложений, цель которого - обеспечить более плавный переход между форматированием и программированием. Это позволяет встраивать сложные объекты в простые документы без необходимости переключения между языками программирования или платформами разработки. Реализация Curl изначально состояла только из интерпретатора, но позже был добавлен компилятор.

Curl сочетает в себе разметку текста (как в HTML ), создание сценариев (как в JavaScript ) и высокопроизводительные вычисления (как в Java, C#, или C ++ ) в одной единой среде. Он используется в ряде внутренних корпоративных приложений, B2B и B2C.

Программы Curl могут быть скомпилированы в апплеты Curl, которые просматриваются с помощью Curl RTE, среды выполнения с плагином для веб-браузеров. В настоящее время он поддерживается Microsoft Windows. Linux и macOS были удалены 25 марта 2019 г. Curl поддерживает «отдельные апплеты», который представляет собой веб-апплет, который запускается на рабочем столе пользователя независимо окна браузера, как в Silverlight 3 и Adobe AIR.

25 марта 2019 года SCSK объявил, что Curl прекратит выпуск новых выпусков в Linux и MacOS, что означает, что Curl больше не будет работать в Linux и MacOS с версии 8.0.8.

Содержание

  • 1 Архитектура
  • 2 Синтаксис
  • 3 Curl как облегченная разметка
  • 4 См. также
  • 5 Ссылки
  • 6 Внешние ссылки

Архитектура

Язык Curl пытается решить давнюю проблему: различные строительные блоки, из которых состоит любой современный веб-документ, чаще всего требуют совершенно разных методов реализации: разные языки, разные инструменты, разные фреймворки, часто совершенно разные команды. Последним - и зачастую самым трудным - препятствием было заставить все эти блоки согласованно общаться друг с другом. Curl пытается обойти эти проблемы, предоставляя последовательный синтаксический и семантический интерфейс на всех уровнях создания веб-контента: от простого HTML до сложного объектно-ориентированного программирования.

Curl - это язык разметки как HTML, то есть простой текст отображается как текст; в то же время Curl включает объектно-ориентированный язык программирования, который поддерживает множественное наследование. Приложения Curl не обязаны соблюдать разделение информации, стиля и поведения, которое наложили HTML, каскадные таблицы стилей (CSS) и JavaScript, хотя этот стиль программирования можно использовать в Curl при желании.

Хотя язык Curl можно использовать в качестве замены HTML для представления форматированного текста, его возможности простираются до возможностей скомпилированного, строго типизированного, объектно-ориентированного языка системного программирования. Как авторские (уровень HTML), так и программные конструкции Curl могут быть расширены в пользовательском коде. Язык разработан таким образом, чтобы приложения Curl могли компилироваться в собственный код клиентской машины с помощью оперативного компилятора и выполняться на высокой скорости. Аплеты Curl также могут быть написаны таким образом, чтобы они работали в автономном режиме при отключении от сети (, иногда подключенные вычисления ). Фактически, Curl IDE - это приложение, написанное на Curl.

Синтаксис

Простым апплетом Curl для HelloWorld может быть

{Curl 7.0, 8.0 applet} {text color = "blue", font-size = 16pt, Hello World}

Этот код будет запущен, если у пользователя установлена ​​хотя бы одна из версий Curl 7.0 или 8.0.

Curl предоставляет макросы и текстовые процедуры в дополнение к анонимным процедурам и именованным методам. Альтернативный вариант использования абзаца текстовой процедуры:

{абзац-левый-отступ = 0,5 дюйма, {цвет текста = "красный", размер шрифта = 12 пунктов, Привет} {цвет текста = "зеленый", шрифт -size = 12pt, World}}

Недавно этот стиль компоновки был принят «строителями» языка Groovy для JVM, но он также знаком пользователям CSS или Tcl / Tk. Большинство функций для веб-приложений, которые теперь реализованы с помощью комбинаций библиотек JavaScript + HTML + CSS, уже присутствуют в языке Curl, включая функции, обычно связанные с Prototype + script.aculo.us, например панели гармошкой.

Curl устанавливает обратные вызовы таким же образом, как и в Groovy:

{CommandButton width = 100pt, height = 50pt, label = {center {bold Вызывает обработчик событий при нажатии}}, control-color = " апельсин », || Прикрепите к этой кнопке CommandButton следующий обработчик событий {on Action do {popup-message title = "Ваше сообщение", "Это диалоговое окно сообщения пользователя". }}}

В комментариях Curl вертикальная черта используется в нескольких вариантах. Самый простой из них:

{текст Комментарий может находиться в отдельной строке, || Комментарий к отдельной строке или может быть в конце || Комментарий к той же строке, что и код строки.}

Curl как упрощенная разметка

Поскольку Curl предоставляет как пользовательские текстовые процедуры, так и таблицы стилей, Curl можно легко использовать как упрощенную разметку для конкретной области. Основным преимуществом перед разметкой обычного текста HTML является то, что кодировка текста может быть установлена ​​в UTF-8, а текст, вводимый в редакторе с поддержкой Unicode, без экранирования символов (например, JavaScript, Curl поддерживает Unicode). Пример поэзии:

{стихотворение || оборачивает все стихотворение {строфа || здесь первый стих на любом языке} {строфа || здесь еще один стих на любом языке}}

, который можно изначально реализовать, определив разметку стихотворения и строфы как форматы текста абзаца. Станца может быть дополнительно доработана, чтобы включить скрытую навигационную привязку для навигации по страницам с помощью Curl {destination}, которая сама по себе является текстовой процедурой.

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

См. Также

Ссылки

Внешние ссылки

В Викиучебнике есть книга по темам: Curl
  • MIT Curl Project, результаты исследовательского проекта Curl в лаборатории компьютерных наук MIT.
  • Curl, Inc. и Curl International Corp. разрабатывает и распространяет набор коммерческих продуктов, основанных на результатах исследований Массачусетского технологического института. Принадлежит SCSK Corporation, контрольному пакету акций Sumitomo Corp.
  • Обзор InfoWorld Curl 6.0 Мартина Хеллера. InfoWorld присудил Curl награду «Технология года 2008» в категории Rich Internet Application.
Последняя правка сделана 2021-05-16 11:36:44
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте