-
Fennel은 Lua 런타임에서 실행되는 프로그래밍 언어임
-
Lua는 간단하면서도 강력한 프로그래밍 언어로, 다른 프로그램에 쉽게 통합되어 사용자에게 재프로그래밍 가능성을 제공함
-
Fennel은 Lua의 단점을 보완하여, 보다 명확하고 오류를 줄이는 대안을 제공함
-
Fennel은 Lisp 계열의 문법을 사용하여, 구문 복잡성을 줄이고 코드의 가독성을 높임
-
Fennel은 변수 재할당, 테이블 표기법, 함수의 인수 검사 등에서 Lua보다 개선된 기능을 제공함
Fennel이란?
- Fennel은 Lua 런타임에서 실행되는 프로그래밍 언어임
- Lua는 간단하면서도 강력한 언어로, 다른 프로그램에 쉽게 통합되어 사용자에게 재프로그래밍 가능성을 제공함
- Fennel은 Lua의 단점을 보완하여, 보다 명확하고 오류를 줄이는 대안을 제공함
Lua의 장점
- Lua는 작고 빠른 언어로, 약 19,000줄의 C 코드로 구성되어 278kb로 컴파일됨
-
개념적 단순성을 유지하면서도 강력한 기능을 제공함
- 다른 프로그램에 쉽게 통합되어 사용자가 프로그램을 재프로그래밍할 수 있게 함
Fennel의 주요 특징
- Fennel은 Lisp 계열의 문법을 사용하여, 구문 복잡성을 줄이고 코드의 가독성을 높임
- 모든 것이 표현식으로 처리되며, 연산자 우선순위나 조기 반환에 대한 모호성이 없음
-
변수: 전역 변수 사용을 어렵게 하여 실수를 줄이고, 변수 재할당 시 var를 사용하여 명확성을 높임
테이블과 루프
- Fennel은 테이블 표기법을 개선하여, 배열과 키/값 테이블을 구분함
- 루프에서 for와 each를 사용하여 명확한 구문을 제공함
함수와 기타 기능
- Fennel은 함수의 인수 검사를 지원하여, 인수 부족 시 오류를 발생시킴
-
구조 분해와 패턴 매칭을 지원하여, 보다 선언적인 조건문 작성이 가능함
-
매크로 시스템을 포함하여, 새로운 구문 형태를 쉽게 확장할 수 있음