ReScript

ReScript
パラダイムマルチパラダイム関数型命令型モジュール型オブジェクト指向
初登場2020年7月1日[ 1 ] ( 2020-07-01 )
安定版リリース
12.0.1 [ 2 ] ウィキデータで編集する / 2025年12月9日 (2025年12月9日
実装言語OCaml
ライセンスマサチューセッツ工科大学
ファイル名拡張子.res、.resi
Webサイトhttps://rescript-lang.org/ ウィキデータで編集する
影響を受けた
OCamlReasonJavaScript

ReScriptはJavaScriptトランスパイルする高水準プログラミング言語です。[ 3 ]その構文はOCamlの代替構文であるReasonプログラミング言語から派生しています。

言語特性

ReScriptは、その祖先であるReasonやOCamlと共通の特徴を持っています。ReScriptは、堅牢な型システムを備えた静的型付け言語であり、関数型プログラミングを重視しています。[ 3 ]

しかし、ReScriptの構文はOCamlからJavaScriptへと進化し始めています。例えば、ReScriptは整数と浮動小数点数に同じ算術演算子を使用します(JavaScriptと同様)[ 4 ] 。一方、OCaml [ 5 ]とReason [ 6 ]は別々の演算子を使用します。

ReScriptはJavaScriptにトランスパイルするため、JavaScriptエコシステム全体にアクセスできます。JavaScript関数を呼び出すことも、JavaScriptからReScriptの関数を呼び出すこともできます。[ 7 ] ReScriptは、 JSXを含むReactフロントエンドWebライブラリを直接サポートしています。[ 3 ]

歴史

ReScriptのルーツは、OCamlをJavaScriptにコンパイルするコンパイラであるBuckleScriptに遡ります。BuckleScriptは2016年にBloomberg LPによって初めてリリースされました[ 8 ] [ 9 ]。同年、OCamlの代替構文であり、よりJavaScriptに近いReasonプログラミング言語がリリースされました。両プロジェクトともJavaScriptの影響を受けていたため、ReasonとBuckleScriptはすぐに統合ツールチェーンとなりました[ 3 ] [ 10 ] 。

しかし、BuckleScriptチームとReasonチームの優先順位は異なっていました。ReasonチームはOCamlエコシステムとの互換性を維持したいと考えていたのに対し、BuckleScriptチームはJavaScriptプログラマーに最高の開発エクスペリエンスを提供するために構文を変更できるようにしたいと考えていました。[ 10 ]

2020年、BuckleScriptはReasonから分岐し始めた新しい構文を導入しました。[ 1 ] 1か月後、BuckleScriptチームはツールチェーンをReScriptにリブランドし、JavaScriptエコシステムのみに焦点を当て、本質的にReasonとは異なる独自の言語になりました。[ 3 ] [ 11 ] ReScriptのOCamlコンパイルのサポートはバージョン12で終了し、[ 12 ] 2025年にリリースされました。[ 4 ]

参考文献

  1. ^ a b Lou, Cheng (2020年7月1日). 「BuckleScriptの新しい構文」 . ReScript . 2025年12月21日閲覧
  2. ^ 「リリース 12.0.1」 2025年12月9日. 2025年12月10日閲覧
  3. ^ a b c d e Yang, Danny (2022年12月). 「Introduction」. ReScriptの紹介:Webアプリケーションのための関数型プログラミング. Apress.
  4. ^ a b Curtis, Daniel (2025年12月31日). 「ReScript 12.0が新しいビルドシステムとともにリリース」 . InfoQ . C4Media . 2026年1月3日閲覧
  5. ^ Madhavapeddy, Anil; Minsky, Yaron (2022年10月). Real World OCaml (第2版). Cambridge University Press. p. 10.
  6. ^ Eisenberg, J. David (2019年4月9日). Web Development with ReasonML . Pragmatic Bookshelf. pp.  5– 8.
  7. ^ヤン2022、pp.203–210。
  8. ^ 「BuckleScript: 1.0 リリースがリリースされました!」ブルームバーグ2016年9月8日 . 2025年12月21日閲覧
  9. ^ 「Bloombergのオープンソース:BuckleScriptの紹介」 Bloomberg 2015年5月12日。 2022年9月11日閲覧
  10. ^ a b Zhang, Hongbo (2021年2月7日). 「ReScript (BuckleScript) の小史」 . OCaml Discourse . 2025年12月21日閲覧
  11. ^ ReScriptチーム (2020年8月10日). 「BuckleScriptとReasonのリブランディング」 . ReScript . 2022年9月11日閲覧
  12. ^ 「v12への移行:言語と構文」ReScript . 2025年11月12日閲覧