タグ 型検査
人気順 10 users 50 users 100 users 500 users 1000 usersいかにして動的型付けのRubyに静的な型検査を持ち込むか? SteepとRBSが目指すもの - Findy Engineer Lab
Rubyをはじめとする「動的型付け」のプログラミング言語は、ソースコード中に型に関する記述が陽に出てこないことが特徴で、プログラムの実行前に(静的に)型検査をすることはありません。しかし、このようなプログラミング言語においても、大規模な開発における品質の向上や開発体験の改善、実行の高速化のために、静... 続きを読む
TypeScript の型検査にかかる時間を短縮した話
こんにちは。ナレッジワークの torii です。 最近、プロジェクトで使用している TypeScript の型検査にかかる時間を 3 割ほど短縮することに成功しました。 参考までにどのようにボトルネックを調査して改善に繋げたのかを書いてみます! きっかけ 改善のきっかけは、たまたまネットを徘徊していて見つけた Zenn 記事で... 続きを読む
Next.js 型安全なルーティングを使う
Next.js 型安全なルーティングを使う 2024.04.28 Next.js では実験的な機能として、型安全なルーティングを利用できます。この機能を使うことでリンク先のパス名を静的に検査できるため、typo などのエラーを事前に防ぐことができます。 この記事における「型安全」とは、静的な型検査によりランタイムで起こり得るエラ... 続きを読む
JSDocで型チェックする
JavaScriptでも静的な型が求められるようになりTypeScriptやFlowが使われるようになってきました。 しかし、それらが無かったころのJavaScriptのコードやトランスパイラを使わずに開発している人はいてると思います。 この記事はコードの変更なしでJSDocのみで型検査をする方法を紹介します。 TL;DR JSDocの型定義で型チ... 続きを読む
Rustの二次元配列の要素のswap
ボローチェッカーは、GCに頼ることなくメモリ安全性を保障してくれたりデータレースの不在を保障してくれるRustのユニークで有用な機能ですが、現状のボローチェッカーはずいぶん保守的な型検査を行うので、普通に考えるとどう考えても安全なコードが型検査を通せなかったりすることがちょくちょくあります。そんなもの... 続きを読む
TypeScriptの型検査を無効化して型安全性を失わせる落とし穴5つとその避け方 - falsandtruのメモ帳
2016 - 01 - 19 TypeScriptの型検査を無効化して型安全性を失わせる落とし穴5つとその避け方 TypeScript TypeScriptにはanyを使わないよう注意しても型検査が無効化され型安全性が失われるパターンがいくつかあり、中には致命的なものも存在する。今回はこのパターンをいくつか紹介する。 コールバックのvoid戻り値型 コールバックのvoid戻り値型はすべての型を受け... 続きを読む
コンパイルは(テストではなく)証明である - あどけない話
「プログラムのテストはバグの存在を示すことにかけてはとても効率的な方法ですが、バグの不在を示すことにかけては絶望的なほどに不適切です。プログラムの信頼性を顕著に向上させる唯一の方法は、その正当性に対して説得力のある証明を与えることです」 -- Edsger W. Dijkstra静的型付き言語では、コンパイル時に型が検査される。この型検査に関連して型推論という機能を持つ言語がある。型推論は、大きく... 続きを読む