Racketプログラミング言語
- Racketは成熟しており、実用的で、拡張可能で、堅牢かつ洗練されたプログラミング言語である
- Racketは言語指向プログラミング(Language-Oriented Programming)のための言語であり、次のような特徴がある:
- 高階発生型付け(higher-order occurrence typing)をサポート
- ドキュメント生成のためのScribble言語を内蔵
- Datalogのようなロジックプログラミングをサポート
- 小さなマクロから大きなマクロ、容易なDSL作成、あらゆる構文のサポートなど、マクロシステムが強力
- Racketのエコシステムは、ソフトウェア、チュートリアルとドキュメント、コミュニティ、書籍、教育、スワッグなどで構成される
- RacketはNSF、DARPA、FIPSE、Exxon財団、Microsoft、Mozilla、Googleなど、さまざまな団体や個人から支援を受けてきた
GN⁺の意見
- Racketの最大の長所の一つは、言語指向プログラミングをサポートしている点である。これによりドメイン固有言語(DSL)を容易に作成でき、生産性向上に役立つ
- ただし、Lisp系言語の特性上、括弧が多用されるため、初めて触れる人には可読性が低く感じられるかもしれない。Clojureのように括弧の代わりとなる別の構文を導入するとよいかもしれない
- チュートリアルとドキュメントがよく整備されており、学習しやすい。教育用途としても多く使われている
- 汎用プログラミング言語として使うこともできるが、DSL作成やSICPなど教育用途に特化した側面がある。実際の本番環境で使うには、まだライブラリなどが不足しているように見える
- 関数型言語を始めたい人には学習用として勧められる。ただし、実務ではHaskell、OCaml、F#なども検討するとよいだろう
1件のコメント
Hacker Newsの意見
要約: