Reason
  • 문서
  • 해보기
  • API
  • 커뮤니티
  • 블로그
  • Languages icon한국어
    • 日本語
    • English
    • Deutsch
    • Español
    • Français
    • Português (Brasil)
    • Русский
    • Українська
    • 中文
    • 繁體中文
    • 번역 돕기
  • GitHub

›소개

소개

  • What & Why

Setup

  • 설치
  • 에디터 플러그인

언어 기본

  • 개요
  • Let 바인딩
  • 원시 타입
  • 기본 자료구조
  • 타입
  • 레코드
  • Variant
  • Options and nullability
  • 함수
  • 재귀
  • 비구조화
  • 패턴 매칭
  • Mutable Bindings
  • 반복문
  • Modules

Advanced Features

  • JSX
  • 외부 접근
  • 예외
  • 오브젝트

JavaScript

  • 연동
  • 문법 치트시트
  • Pipe First
  • 프라미스
  • 라이브러리
  • JS에서 변환

추가 사항

  • 자주 물어보는 질문
  • 추가적으로 매력적인 것들
Translate

What & Why

Reason이 뭔가요?

Reason은 OCaml 에서 제공하는 프로그래밍 언어입니다. Ocaml은 강력한 타입 시스템을 가지고 있으며 JavaScript 또는 C 계열 언어를 사용한 개발자에게 친숙한 문법으로 구성되어 있는 언어입니다.

Note: Reason은 refmt를 사용하여 OCaml 언어로 변환할 수 있고 변환될 수 있습니다. Reason에서 가능한 것은 모두 OCaml에서도 가능하며 그 반대도 가능합니다.

왜 Reason을 사용하나요?

Reason이 기반으로 하는 강력한 타입 시스템 덕분에 버그가 줄고 코드의 유지보수성을 높이며 구조 변경이나 수정에 자유로울 수 있습니다.

다른 환경들

이미 Reason(그리고 OCaml) 을 사용하는 다양한 환경의 프로젝트들이 있습니다.

  • 네이티브 실행 파일: 표준 컴파일러를 사용하여 기본 실행 파일을 시스템에서 직접 빌드하고 실행할 수 있습니다.
    • 도구: dune, esy
  • 브라우저: Reason을 브라우저에서 실행할 수 있도록 JavaScript 코드로 컴파일하는 여러 프로젝트가 있습니다.
    • ReScript (formerly BuckleScript)
    • Js_of_ocaml

어디서부터 시작해야 될까요?

  • 언어 기능에 대한 소개는 개요 에서 확인할 수 있습니다.
  • Sketch.sh 온라인 REPL에서 바로 시작할 수 있습니다.

다른 대안들

Reason과 유사한 개념을 공유하는 언어도 있습니다:

  • Rust . Reason과 마찬가지로 ML 계열 언어에서 영감을 얻었지만 GC(가비지 콜렉터)를 지원하지 않습니다. Rust는 특히 병렬 처리를 뛰어난 성능으로 지원합니다.
  • Elm. ML 계열의 또 다른 훌륭한 언어입니다. 웹 애플리케이션을 만드는 데에 중점을 둡니다. Elm 생태계에서 널리 칭찬을 받는 강연인, Let's Be Mainstream 을 참고하면 좋습니다.
  • PureScript. Haskell에서 영감을 받은 언어로 JavaScript로 컴파일됩니다.
  • Fable. OCaml과 밀접한 관련이 있는 F# 언어를 기반으로 동작합니다.
  • ClojureScript. 단순성을 우선시하는 동적 형식 언어입니다.
  • Swift. Apple에서 만든 언어이며 Objective-C와 잘 상호 운용됩니다.
  • Haxe. 기본적으로 게임 개발에 초점을 맞춘 언어로, 모든 것으로 컴파일됩니다.
설치 →
  • Reason이 뭔가요?
  • 왜 Reason을 사용하나요?
  • 다른 환경들
  • 어디서부터 시작해야 될까요?
  • 다른 대안들