프로젝트 소개
YALCE / YLC(Yet Another Live-Coding Environment)는 오디오 합성 및 OpenGL 그래픽용 라이브러리를 함께 제공하는 함수형 프로그래밍 언어다. 이 프로젝트는 최소한의 기능 집합과 원활한 C 상호 운용성을 갖춘, 작고 단순하며 성능이 좋은 것을 목표로 한다고 밝히고 있다.
프로젝트가 나열한 주요 기능:
- OCaml과 유사한 구문과 일급 함수를 갖춘 함수형 프로그래밍
- 다형성을 갖춘 Hindley-Milner 타입 시스템을 통한 타입 추론
- 네이티브 타깃으로의 LLVM JIT 컴파일
- 반복 개발과 라이브 코딩을 위한 대화형 REPL
- 대수적 데이터 타입을 사용한 패턴 매칭
- 제너레이터와 비동기 반복을 위한 코루틴
설치 옵션으로는 macOS용 Homebrew formula(brew install crawdaddie/yalce/yalce) 또는 소스에서 빌드하는 방법이 있다. 저장소를 클론하고, ./setup.sh를 실행하고, make를 실행한 다음, 빌드된 ylc 바이너리를 PATH에 있는 디렉터리에 심볼릭 링크한다. 문서는 시작하기, 핵심 개념, 예제, 언어 레퍼런스로 구성되어 있다.
README 예제에는 패턴 매칭으로 구현한 Fibonacci, 리스트 뒤집기와 리스트 매핑 헬퍼를 작성하는 데 사용된 일급 함수, 매핑된 리스트를 기대 결과와 비교하는 작은 모듈 기반 테스트가 나와 있다. 구문은 let 바인딩, fn 람다, | 분기를 갖는 match 표현식, 리스트 cons(::), 파이프 연산자(|>)를 사용한다.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.