라이브스크립트(프로그래밍 언어)

LiveScript (programming language)
라이브스크립트
패러다임멀티벤더, 기능적, 객체 지향적
설계자제레미 아시케나스, 무라카미 사토시, 조지 자하리예프
개발자제레미 아시케나스, 무라카미 사토시, 조지 자하리예프
처음 등장2011; 12년 전 (2011)
안정적 방출
LiveScript 1.6.1 / 2020년 7월 14일; 3년 전 (2020-07-14)[1]
타이핑 분야동적, 약한
OS크로스 플랫폼
면허증.MIT
파일 이름 확장명.ls
웹사이트livescript.net
의 영향을 받은
자바스크립트, 하스켈, 커피스크립트, F#

LiveScript는 JavaScript로 변환되는 기능적인 프로그래밍 언어입니다.커피스크립트를 만든 Jeremy Ashkenas가 무라마키 사토시, 조지 자하리예프 [2]등과 함께 만들었습니다. (이 이름은 자바스크립트의 베타 이름에 대한 오마주일 수도 있습니다. 1995년 몇 달 동안 공식 출시 전에는 라이브스크립트로 불렸습니다.)[3]

구문

라이브스크립트는 CoffeeScript[4]간접적인 후손입니다.다음 헬로 월드 프로그램은 라이브스크립트로 작성되었지만 커피스크립트와도 호환됩니다.

안녕하세요. = ->   콘솔.로그. '안녕, 세상이여!' 

함수 호출은 빈 괄호로 수행할 수 있지만,hello()LiveScript는 느낌표를 인수가 0인 함수 호출에 대한 단일 문자 단축형으로 처리합니다.hello!

라이브스크립트는 수많은 다른 호환되지 않는 관용구들을 소개합니다.

이름망글링

컴파일 시 LiveScript 파서는 kebab 대소문자(대소문자 변수 및 함수 이름)를 암시적으로 kamel 대소문자로 변환합니다.

헬로 월드 = ->   콘솔.로그. 안녕, 세상아! 

이 정의를 사용하면 다음 통화가 모두 유효합니다.그러나 동일한 점선 구문을 사용하여 호출하는 것이 좋습니다.

안녕, 세상이여! 안녕 월드! 

이것은 개발자가 명시적으로 낙타 케이스를 사용하거나 케이스를 사용하는 것을 배제하지 않습니다.그러나 점선 이름은 관용적인[5] LiveScript에서 일반적입니다.

파이프

F#Elixir같은 수많은 다른 함수형 프로그래밍 언어들처럼 라이브스크립트는 파이프 연산자를 지원합니다. >연산자의 왼쪽에 있는 식의 결과를 오른쪽에 있는 식의 인수로 전달합니다.F#에서는 전달된 인수가 마지막 인수이고 Elixir에서는 첫 번째 인수입니다.

"안녕하세요!" > 대문자로 쓰다 > 콘솔.로그. > 안녕하세요! 

함수로서의 연산자

괄호로 묶으면 다음과 같은 연산자가 표시됩니다.not또는+파이프라인에 포함하거나 함수인 것처럼 호출할 수 있습니다.

111 > (+) 222 # > 333  (+) 1 2 # > 3 

레퍼런스

  1. ^ "LiveScript Releases". GitHub. Retrieved 21 February 2021.
  2. ^ "LiveScript contributors page". GitHub. Retrieved 20 June 2015.
  3. ^ "Chapter 4. How JavaScript Was Created". speakingjs.com. Archived from the original on 2020-02-27. Retrieved 2017-11-21.
  4. ^ "LiveScript - a language which compiles to JavaScript".
  5. ^ "prelude.ls - a functionally oriented utility library in LiveScript".

외부 링크