【要約】静的型付け言語を作った [Qiita_Trend] | Summary by TechDistill
> Source: Qiita_Trend
Execute Primary Source
// Problem
開発者が、モダンなネイティブ言語の設計思想による制約に直面した。
- ・RustやGoなどの主要言語は、継承よりも合成を推奨する。
- ・そのため、クラスの継承を用いた設計を行いたい場合に選択肢が少ない。
// Approach
開発者が、継承とモダンな機能を両立する言語「willow」を開発した。
- ・バックエンドにCraneliftを採用し、コンパイル速度を優先した。
- ・Rust風のResult型によるエラーハンドリングをサポートした。
- ・Goのような軽量スレッドを実現するため、async/awaitを導入した。
// Result
開発者が、ベンチマークにより一定の性能と省メモリ性を実証した。
- ・特定の計算において、RustやC並みの0.11秒という速度を記録した。
- ・メモリ使用量は約3000kbに抑えられている。
- ・GitHubにて、サンプルコードとビルド手順を公開した。
Senior Engineer Insight
> Cranelift採用によるコンパイル速度の向上は、開発体験を改善する。しかし、LLVMに比べ最適化が限定的な点は、高負荷環境での懸念材料だ。また、ベンチマークに計算上の工夫が含まれる点も注意が必要である。現時点では実験的なプロジェクトであり、プロダクションへの投入は時期尚早だ。エコシステムの成熟と、厳密な性能評価を待つべきである。