stringtranslate.com

Curl (lenguaje de programación)

Curl es un lenguaje de programación reflexivo orientado a objetos para aplicaciones web interactivas , cuyo objetivo es proporcionar una transición más fluida entre el formato de contenido y la programación informática . Permite incrustar objetos complejos en documentos simples sin necesidad de cambiar entre lenguajes de programación o plataformas de desarrollo. La implementación de Curl inicialmente consistía únicamente en un intérprete ; Más tarde se añadió un compilador .

Curl combina marcado de texto (como en el lenguaje de marcado de hipertexto ( HTML )), secuencias de comandos (como en JavaScript ) y computación pesada (como en Java , C# o C++ ) dentro de un marco unificado. Se utiliza en una variedad de aplicaciones internas de empresa, de empresa a empresa (B2B) y de empresa a consumidor (B2C).

Los programas Curl se pueden compilar en subprogramas Curl, que se visualizan utilizando Curl RTE, un entorno de ejecución con un complemento para navegadores web . Actualmente, es compatible con Microsoft Windows . Linux y macOS se eliminaron el 25 de marzo de 2019 (a partir de la versión 8.0.10). [1] Curl admite "applets separados", que es un subprograma implementado en la web que se ejecuta en el escritorio del usuario independientemente de una ventana del navegador, como en Microsoft Silverlight 3 y Adobe AIR .

Arquitectura

El lenguaje Curl intenta abordar un problema de larga data: los diferentes componentes básicos que componen cualquier documento web moderno a menudo requieren métodos de implementación tremendamente diferentes: diferentes lenguajes, diferentes herramientas, diferentes marcos, a menudo equipos completamente diferentes. El último obstáculo, y a menudo el más difícil, ha sido lograr que todos estos bloques se comuniquen entre sí de manera consistente. Curl intenta evitar estos problemas proporcionando una interfaz sintáctica y semántica consistente en todos los niveles de creación de contenido web: desde HTML simple hasta programación compleja orientada a objetos .

Curl es un lenguaje de marcado como HTML, es decir, el texto sin formato se muestra como texto; al mismo tiempo, Curl incluye un lenguaje de programación orientado a objetos que admite herencia múltiple . Las aplicaciones Curl no están obligadas a observar la separación de información, estilo y comportamiento que han impuesto HTML, las hojas de estilo en cascada (CSS) y JavaScript, aunque ese estilo de programación se puede utilizar en Curl si se desea.

Si bien el lenguaje Curl se puede utilizar como reemplazo de HTML para presentar texto formateado, sus capacidades varían hasta las de un lenguaje de programación de sistema compilado, fuertemente tipado y orientado a objetos. [2] Tanto la construcción de creación (nivel HTML) como la de programación de Curl se pueden ampliar en el código de usuario. El lenguaje está diseñado para que las aplicaciones Curl puedan compilarse en código nativo de la máquina cliente mediante un compilador justo a tiempo y ejecutarse a alta velocidad. Los subprogramas Curl también se pueden escribir para que puedan ejecutarse sin conexión cuando se desconectan de una red (ocasionalmente, informática conectada). Curl IDE es una aplicación escrita en Curl.

Sintaxis

Un sencillo subprograma Curl para un "¡Hola, mundo!" programa podría ser:

{Subprograma Curl 7.0, 8.0} {texto color = "azul", tamaño de fuente = 16 puntos, Hola Mundo}

Este código se ejecutará si el usuario tiene instalada al menos una de las versiones de Curl 7.0 u 8.0.

Curl proporciona macros y procedimientos de texto además de procedimientos anónimos y métodos con nombre. Una alternativa que utiliza el párrafo de procedimiento de texto sería:

{párrafo sangría izquierda del párrafo = 0,5 pulgadas, {color del texto = "rojo", tamaño de fuente = 12 puntos, Hola} {color del texto = "verde", tamaño de fuente = 12 puntos, Mundo}}

Recientemente, este estilo de diseño ha sido adoptado por los "constructores" del lenguaje Groovy para la máquina virtual Java (JVM), pero también resulta familiar para los usuarios de CSS o Tcl / Tk . La mayoría de las funciones para aplicaciones web ahora implementadas a través de combinaciones de bibliotecas JavaScript + HTML + CSS ya se encuentran dentro del lenguaje Curl, incluidas funciones generalmente asociadas con Prototype + script.aculo.us , como los paneles de acordeón.

Curl establece devoluciones de llamada de la misma manera adoptada por Groovy:

{Ancho del botón de comando = 100 puntos, altura = 50 puntos, label = {center {bold Invoca un controlador de eventos cuando se hace clic}}, color-control = "naranja", || Adjunte el siguiente controlador de eventos a este CommandButton {en acción hacer {mensaje pop up título = "Tu mensaje", "Este es un cuadro de diálogo de mensaje de usuario". } }}

Los comentarios curl utilizan la barra vertical en varias variaciones. El más simple es el siguiente:

{texto Un comentario puede estar solo en una línea, || Un comentario en una línea por sí solo. o puede estar al final || Un comentario en la misma línea que el código. de una línea.}

Como marcado ligero

Debido a que Curl proporciona tanto procedimientos de texto definidos por el usuario como hojas de estilo , se puede utilizar fácilmente como marcado ligero específico de un dominio . Una ventaja importante sobre el marcado HTML de texto plano es que la codificación del texto se puede configurar en UTF-8 y el texto ingresado en un editor de texto habilitado para Unicode sin caracteres de escape (como JavaScript, Curl es compatible con Unicode). Un ejemplo de poesía es:

{poema || envuelve todo el poema {estrofa || primer verso aquí en cualquier idioma } {estrofa || Otro verso aquí en cualquier idioma. } }

que inicialmente se puede implementar definiendo el marcado del poema y la estrofa como formatos de texto de párrafo. La estrofa podría perfeccionarse aún más para incluir un ancla de navegación oculta para la navegación de la página utilizando Curl {destino}, que es en sí mismo un procedimiento de texto.

Se puede utilizar el mismo marcado para resultados diferentes, ya que se puede diseñar el texto para que sea visible en un contexto e invisible en otro. Curl también permite la inclusión de archivos de nivel superior para que un texto fuente en marcado pueda incluirse en diferentes archivos principales. En educación, por ejemplo, se podría crear un archivo fuente de preguntas de prueba e incluirlo en la versión del texto tanto para el estudiante como para el profesor.

Ver también

Referencias

  1. ^ "Cambios en los sistemas operativos compatibles de los productos Curl RTE". Corporación SCSK. Archivado desde el original el 13 de mayo de 2019 . Consultado el 1 de abril de 2020 .
  2. ^ Sr. Hostetter; D. Kranz; C. Semilla; C. Termán; S. Ward. "Curl: un lenguaje de pendiente suave para la Web". Laboratorio de Ciencias de la Computación del MIT. Archivado desde el original el 24 de diciembre de 2008 . Consultado el 20 de diciembre de 2005 .

enlaces externos