Reason是在Ocaml語言的基礎上修改而來,專門提供給前端開發者使用。javascript
Reason是函數式編程語言,使用Bucklescript編譯器編譯成javascript語言。前端
在我看來,至少有兩大優勢:
1.編譯後的javascript優化得很是好,讓咱們可以高性能地使用函數式編程。
2.強類型和類型推導,讓咱們既不用向Typescript那樣定義不少類型(Reason會幫咱們推導類型),又能夠享受強類型約束的好處(編譯時能檢查更多的錯誤)。java
咱們Wonder已經使用Reason一年半的時間了,全部產品,包括前端後端,都用Reason語言寫,很是好用。linux
下面是一些連接資料:
Reason官網
如何評價 reasonml ? -> Wonder的回答git
建議使用VSCode編輯器來開發Reason,由於它的插件支持得最好。github
具體搭建Reason開發環境的步驟以下:macos
1.安裝VSCodenpm
2.安裝VSCode->OCaml and Reason IDE插件編程
3.安裝reason代碼格式化工具refmt後端
platform | install command |
---|---|
macOS | yarn global add reason-cli@latest-macos |
Linux | yarn global add reason-cli@latest-linux |
For npm users, use:
npm install -g reason-cli@latest-macos //for mac npm install -g reason-cli@latest-linux //for linux
For Windows:
能夠參考Instructions on Getting Started with Windows
或者使用REPL:
1)複製要格式化的代碼到REPL
2)按下"ctrl+shift+i"來格式化代碼
3)把格式化後的代碼複製回VSCode
4.克隆Reason-Example項目,學習如何開始開發:
git clone https://github.com/Wonder-Technology/Reason-Example.git
1)進入Reason-Example項目,按照下面步驟進行build:
npm install -g cyarn --registry=https://registry.npm.taobao.org cyarn install
2)執行"npm run watch"
這樣在寫Reason的時候,會自動編譯爲js。
3)能夠執行"npm run test:watch",進行jest測試。
案例就是咱們Wonder的產品哈,詳見: