컬(프로그래밍 언어)

Curl (programming language)
Curl logo.gif
패러다임멀티패키지: 객체 지향, 마크업
설계자스티브 워드(MIT
개발자주식회사 스미쇼 컴퓨터 시스템즈 주식회사 SCSK
처음 등장한1998
안정된 릴리스
2019년 8월 10일 / 8월 30일, 2년 전(2019-08-30)
타이핑 분야강한.
OSLinux, MacOS, Windows
웹 사이트www.curl.com
사투리
없음.
영향을 받다
HTML, JavaScript, Lisp

인터랙티브어플리케이션용 반사형 객체 지향 프로그래밍 언어이며 포맷과 프로그래밍 간의 원활한 전환을 목적으로 합니다.프로그래밍 언어 또는 개발 플랫폼 간에 전환할 필요 없이 복잡한 객체를 간단한 문서에 삽입할 수 있습니다.Curl 구현은 처음에는 단지 인터프리터로 구성되었지만 나중에 컴파일러가 추가되었습니다.

컬은 텍스트 마크업(HTML), 스크립팅(JavaScript), 헤비듀티 컴퓨팅(Java, C# 또는 C++)을 하나의 통합 프레임워크 내에 결합합니다.다양한 내부 엔터프라이즈, B2BB2C 애플리케이션에서 사용됩니다.

컬 프로그램은 웹 브라우저용 플러그인이 있는 런타임 환경인 Curl RTE를 사용하여 볼 수 있는 Curl 애플릿으로 컴파일할 수 있습니다.현재 Microsoft Windows에서 지원됩니다.LinuxmacOS는 2019년 3월 25일(버전 8.0.8부터)[1]에 폐기되었습니다.Curl은 Silverlight 3 및 Adobe AIR와 마찬가지로 브라우저 창과는 무관하게 실행되는 웹 전개 애플릿인 "Detached Applets"를 지원합니다.

아키텍처

Curl 언어는 오래된 문제에 대처하려고 합니다.현대 웹 문서를 구성하는 다양한 구성 요소에는 대부분 다른 언어, 다른 도구, 다른 프레임워크, 완전히 다른 팀 등 매우 다른 경우가 많습니다.가장 어려운 마지막 장애물은 이 모든 블록들이 일관된 방식으로 서로 통신하도록 하는 것이었습니다.Curl은 단순한 HTML에서 복잡한 객체 지향 프로그래밍까지 모든 웹 콘텐츠 작성 수준에서 일관된 구문 및 의미 인터페이스를 제공함으로써 이러한 문제를 해결하려고 합니다.

컬은 HTML과 같은 마크업 언어입니다.즉, 일반 텍스트는 텍스트로 표시되며, 동시에 컬에는 여러 상속을 지원하는 객체 지향 프로그래밍 언어가 포함되어 있습니다.HTML, Cascading Style Sheet(CSS) 및 JavaScript에 의한 정보, 스타일 및 동작의 분리를 감시하기 위해 컬 어플리케이션이 필요한 것은 아닙니다.다만, 이러한 스타일의 프로그래밍은, 필요에 따라서 컬로 사용할 수 있습니다.

Curl 언어는 HTML을 대체하여 포맷된 텍스트를 표시할 수 있지만, 그 기능은 컴파일된 강력한 형식의 객체 지향 시스템 프로그래밍 [2]언어에 이르기까지 다양합니다.Curl의 제작(HTML-level)과 프로그래밍 구성 모두 사용자 코드로 확장할 수 있습니다.이 언어는 저스트타임 컴파일러에 의해 클라이언트 머신의 네이티브 코드로 Curl 어플리케이션을 컴파일하여 고속으로 실행할 수 있도록 설계되어 있습니다.또, 네트워크로부터 떼어내도 오프라인으로 동작하도록, 컬 애플릿을 쓸 수도 있습니다(가끔 접속된 컴퓨팅).사실 Curl IDE는 Curl로 작성된 어플리케이션입니다.

구문

HelloWorld의 간단한 Curl 애플릿은 다음과 같습니다.

 {Curl 7.0, 8.0 애플릿} {텍스트 색상 = "파란색", 글꼴 크기 = 16pt, Hello World}

이 코드는 사용자가 Curl 버전 7.0 또는 8.0 중 하나 이상을 설치한 경우 실행됩니다.

Curl은 익명 프로시저와 명명된 메서드 외에 매크로와 텍스트 프로시저를 모두 제공합니다.텍스트 절차 단락을 사용하는 다른 방법은 다음과 같다.

 {문단-left-size=0.5in, {텍스트 색상="빨간색", 글꼴 크기=12pt, Hello} {텍스트 색상="녹색", 글꼴 크기=12pt, World}

최근 이 레이아웃 스타일은 JVM용 Groovy 언어로 "빌더"에 의해 채택되고 있지만 CSS 또는 Tcl/Tk 사용자들에게도 친숙합니다.현재 JavaScript 라이브러리 + HTML + CSS의 조합을 통해 구현되고 있는 웹 응용 프로그램의 대부분의 기능은 아코디언 창 등의 프로토타입 + script.aculo.us과 관련된 기능을 포함하여 이미 Curl 언어 내에 있습니다.

컬은 Groovy에서도 채택된 방식으로 콜백을 설정합니다.

 {CommandButton width=100pt, 높이 = 50pt, 레이블 = {center {bold로 클릭하면 이벤트 핸들러가 호출됩니다}, control-color = "control", 다음 이벤트 핸들러를 이 CommandButton {on Action do {message title = "Your Message", "This is user message }}}}에 연결합니다.

컬 코멘트는 세로 막대를 몇 가지 변형으로 사용합니다.가장 간단한 것은 다음과 같습니다.

 {text A 코멘트는 그 자체로 줄에 있을 수도 있고, A 코멘트는 그 자체로 줄에 있을 수도 있고, A 코멘트는 그 끝에 줄의 코드와 같은 줄에 있을 수도 있습니다.}

경량 마크업으로 컬링

Curl은 사용자 정의 텍스트 프로시저와 스타일시트를 모두 제공하기 때문에 Curl은 도메인별 경량 마크업으로 쉽게 사용할 수 있습니다.일반 텍스트 HTML 마크업보다 큰 장점은 텍스트 인코딩을 UTF-8로 설정할 수 있으며, 텍스트는 문자를 벗어나지 않고 유니코드 지원 편집기에 입력할 수 있다는 것입니다(JavaScript와 같이 Curl은 Unicode와 친숙합니다).시의 예는 다음과 같습니다.

 {nothers는 시 전체를 {nother first verse here any language} {nother verse any language }

처음에는 시와 스탠자 마크업을 단락 텍스트 형식으로 정의하여 구현할 수 있습니다.Stanza는 텍스트 프로시저인 Curl {destination}을(를) 사용하여 페이지 탐색을 위한 숨겨진 탐색 앵커를 포함하도록 추가로 세분화할 수 있습니다.

같은 마크업을 다른 결과에 사용할 수 있습니다.한 컨텍스트에서는 텍스트를 표시하고 다른 컨텍스트에서는 보이지 않도록 스타일을 지정할 수 있기 때문입니다.또한 컬을 사용하면 최상위 수준의 파일을 포함할 수 있으므로 마크업의 원본 텍스트를 다른 상위 파일에 포함할 수 있습니다.예를 들어, 교육에서는 시험 문제의 소스 파일을 만들어 학생과 교사 버전의 텍스트에 모두 포함할 수 있습니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ "Changes to Supported Operating Systems of Curl RTE Products". SCSK Corporation. Archived from the original on 2019-05-13. Retrieved 2020-04-01.
  2. ^ M. Hostetter; D. Kranz; C. Seed; C. Terman; S. Ward. "Curl: A Gentle Slope Language for the Web". MIT Laboratory for Computer Science. Archived from the original on 2008-12-24. Retrieved 2005-12-20.

외부 링크