官术网_书友最值得收藏!

Static types

There are two possible times when type errors can happen: at compile time and at runtime. This is the crucial difference between static and dynamic type systems: static type systems are so called because they statically analyze programs and try to find type errors, while dynamic type systems are so called because they throw type errors dynamically, while they run the program.

A dynamic type system will definitely find all the type errors in your program, provided it actually runs all the execution paths in it. Any paths that remain unexecuted may contain hidden type errors.

A static type system will try to find as many errors as possible without running your program. Normally, this is not a guarantee that you will catch all type errors before runtime. Some errors may slip through the typechecker and still hit you at runtime. Plus, a type system may make it difficult to express a program that you know is correct because it thinks it's not. You will want to pay close attention when this happens, though, as either the typechecker is correct, or your design will benefit from expressing the program in a different, accepted, way.

主站蜘蛛池模板: 正镶白旗| 阜康市| 蒙阴县| 高阳县| 贡觉县| 阳新县| 公主岭市| 磴口县| 静乐县| 班戈县| 安化县| 临邑县| 睢宁县| 临沧市| 中卫市| 资阳市| 邢台市| 游戏| 鲁甸县| 普定县| 昌都县| 安西县| 雷山县| 甘德县| 安国市| 敦煌市| 高阳县| 阳曲县| 海安县| 栖霞市| 南城县| 九龙坡区| 沁源县| 神木县| 和政县| 盈江县| 文水县| 阿瓦提县| 五家渠市| 山阳县| 临沧市|