ReScript란 무엇인가
ReScript(구 BuckleScript/ReasonML)는 OCaml에서 파생된 언어로, JavaScript로 컴파일됩니다. 40년간 타입 시스템의 발전을 지켜본 저로서는 ReScript가 ML 계열의 강력한 타입을 JavaScript 세계에 자연스럽게 가져왔다고 평가합니다. Facebook의 React 팀과 Bloomberg가 지원했습니다. 빠른 컴파일, 작은 출력 크기, 친숙한 문법이 특징입니다.
ReScript의 핵심 특징
ReScript는 100% 타입 커버리지를 제공합니다. 타입 추론 덕분에 대부분 타입을 명시하지 않아도 됩니다. 패턴 매칭과 variant 타입으로 안전한 코드를 작성합니다. null/undefined가 없고 Option 타입을 사용합니다. 컴파일이 매우 빨라 대규모 프로젝트에서도 즉각적입니다. 생성된 JavaScript가 읽기 쉽고 디버깅이 가능합니다.
JavaScript/React 통합
ReScript는 JavaScript 상호 운용에 중점을 둡니다. @module, @val 같은 어트리뷰트로 JavaScript 바인딩을 선언합니다. JSX를 네이티브로 지원하여 React 개발이 자연스럽습니다. ReScript-React는 React 바인딩을 제공합니다. npm 패키지를 쉽게 사용할 수 있습니다. 기존 JavaScript 프로젝트에 점진적으로 도입할 수 있습니다.
ReasonML에서 ReScript로
ReasonML은 OCaml을 JavaScript에 친숙한 문법으로 감싼 것이었습니다. ReScript는 여기서 더 나아가 독자적인 언어로 발전했습니다. 문법이 JavaScript에 더 가까워졌고, OCaml의 복잡한 기능을 단순화했습니다. 이름 변경과 함께 JavaScript 생태계에 더 집중합니다.
ReScript 학습하기
ReScript를 배우려면 공식 문서 rescript-lang.org가 잘 정리되어 있습니다. JavaScript와 React 경험이 있으면 빠르게 적응할 수 있습니다. 문법이 익숙하여 TypeScript보다 진입 장벽이 낮을 수 있습니다. 타입 시스템은 TypeScript보다 더 사운드(sound)합니다. 타입 안전한 프론트엔드 개발을 원한다면 좋은 선택입니다.
댓글
0