검수요청.png검수요청.png

리퀴디티

위키원
bksong990323 (토론 | 기여)님의 2019년 6월 26일 (수) 10:52 판 (활용)
이동: 둘러보기, 검색

리퀴디티(Liquidity)는 테조스(Tezos)를 위한 함수형 프로그래밍 언어이다. 2017년 10월 05일 ver 0.1의 초판이 만들어지고 점차 기능이 추가되는 중이다. 리퀴디티는 완전히 형식화된 함수 언어이며 오카멜(OCaml) 및 ReasonML의 구문을 사용하며, 미켈슨(Michelson)의 보안사항을 엄격히 준수한다.

배경

테조스는 미켈슨이라는 로우 레벨 정적 유형 언어를 사용하여 스마트 컨트랙트를 작성할 수 있었다. 하지만 변수의 유형이 적고 스택 기반의 문법들 때문에 쓰는 것도 읽는 것도 어려워서 테조스는 개발 초기에 더 높은 레벨의 언어가 필요하다는 생각을 가졌다. 그 후 오카멜프로(OCamlPro)에서 개발한 리퀴디티의 프로토타입이 2017년 6월에 처음 개발되었고, 2018년 2월 정식으로 테조스의 알파넷에서 출시되었다.[1]

특징

리퀴디티는 미켈슨의 타입 시스템을 따르지만, 오카멜의 문법을 바탕으로 실행된다. 리퀴디티는 미켈슨으로 변환되는 컴파일러가 포함되어 있으며, 미켈슨으로 쓰인 컨트랙트를 리퀴디티로 변환할 수 있는 디 컴파일러 역시 포함되어 있다. 이는 서로의 호환성을 위함이다.[1] 또한 리퀴디티는 수학적으로 소프트웨어 코드의 오류를 점검하기에 오류가 일어날 확률이 사실상 없다.[2] 리퀴디티는 미켈슨에서 작성할 수 있는 모든 것을 표현할 수 있으며, 스택 조작 대신 로컬변수값을 사용한다. 합계 유형 및 레코드 유형과 같은 유형은 리퀴디티에서 정의되고 사용될 수 있어 높은 수준의 프로그래밍 언어이고 재사용 가능한 코드와 라이브러리를 작성하는 모듈과 계약시스템, 다형성을 가진 강력한 메커니즘, 자바스크립트와 유사한 언어로 작성하기 등 여러 가지를 리퀴디티로 표현하고 활용할 수 있다.

확장자명

  • 리퀴디티 파일 : .liq [1]   
  • 미켈슨 파일 : .tz [1]

활용

스마트 컨트랙트를 작성하는 데 사용, 대표적으로 테조스의 스마트 컨트랙트가 있다.

리퀴디티 관련 홈페이지

각주

  1. 1.0 1.1 1.2 1.3 Skkrypto, 〈(TezosXSkkrypto) 테조스 실습노트 #6〉, 《브런치》, 2019-05-06
  2. 김병윤 기자, 〈테조스 창업자 “안전한 테조스, 금융업과 시너지 확신〉, 《팍스넷뉴스》, 2019-01-28

참고자료

같이 보기


  검수요청.png검수요청.png 이 리퀴디티 문서는 프로그래밍에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.