Elixir有打字稿吗?

时间:2017-02-25 13:00:17

标签: javascript typescript elixir

由于TypeScript是Javascript的超集,因此开发人员可以定义类型,这些类型可以在编译期间进行检查。

是否有Elixir的打字稿,它也是一种动态语言?

Elixir的超集,它在编译期间启用类型检查?

2 个答案:

答案 0 :(得分:3)

在Elixir中有typespec,但我担心,在编译阶段没有工具可以执行类型检查。然而,有一个第三方,众所周知和常用的工具--Dialyzer(用于Erlang)和Dialyxir使得在Elixir项目中使用Dialyzer更容易。它使用提供的typespec来分析您的代码。

请看一下this视频,因为它提供了很好的解释(不仅仅是如何使用Dialyzer,如何理解错误信息,还有如何注释你的功能等)。 / p>

有关Elixir中的typespecs的更多信息,请查看官方documentation页面。

希望有所帮助!

答案 1 :(得分:0)

typespec。它允许您定义自定义类型并指定预期类型的​​函数输入和输出。它不像Haskell的类型系统那么强大,但它可以帮助您围绕代码构建一些安全网。但是你不能声明单个变量的类型,以便在编译时检查它们。

Dialyzer是第三方静态分析工具,可用于检查代码的正确性。除了类型错误,它还会检查无法访问的代码和不必要的测试。在Learn You Some Erlang书中有一个易于理解的chapter透析器,所以如果您有兴趣,我建议您查看它。