静态类型检查的设计模式

发布于 2024-10-30 18:02:35 字数 1539 浏览 0 评论 0原文

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

软甜啾 2024-11-06 18:02:35

我认为最有用的、值得称为“设计模式”的东西之一是“幻像类型”技术。这是一种在类型参数中编码静态信息的或多或少系统的方法。请参阅一些示例:

您可能还对相关的 Oleg Wondertrick 感兴趣:轻量级静态功能(与单忠杰)。

I think one of the most useful things that would deserve the name "design pattern" is the "phantom types" technique. It is a more-or-less-systematic way to encode static information in a type parameter. See some examples :

You may also be interested in a related Oleg wondertrick : Lightweight static capabilities (with Chung-chieh Shan).

扛刀软妹 2024-11-06 18:02:35

您可以查看 Haskell 的设计建议,特别是一些关于将强属性嵌入到类型系统中的最新研究论文:

  • Putting Curry-Howard to Work
    Tim Sheard,2005 年 ACM SIGPLAN Haskell 研讨会论文集。爱沙尼亚塔林,74 - 85,2005
  • 通过表达类型进行基于语言的程序验证
    马丁·苏尔兹曼和拉兹万·沃伊库。在编程语言中满足程序验证(PLPV'06)
  • 函数式编程的类型化合约
    拉尔夫·辛兹 (Ralf Hinze)、约翰·杰林 (Johan Jeuring) 和安德烈斯·洛 (Andres Loh)。
  • Haskell 中的轻量级信息流安全库
    A·鲁索,K·克莱森,J·休斯。

尽管有很多关于个别问题的很好的例子,但这里还没有标准的方法。

You might look at the design advice for Haskell, and specifically, some of the more recent research papers on embedding strong properties into the type system:

  • Putting Curry-Howard to Work
    Tim Sheard, Proceedings of the 2005 ACM SIGPLAN workshop on Haskell. Tallinn, Estonia, 74 - 85, 2005
  • Language-Based Program Verification via Expressive Types
    Martin Sulzmann and Razvan Voicu. In Programming Languages meet Program Verification (PLPV'06)
  • Typed Contracts for Functional Programming
    Ralf Hinze, Johan Jeuring and Andres Loh.
  • A Library for Light-weight Information-Flow Security in Haskell
    A Russo, K Claessen, J Hughes .

There's no standard methodologies here yet, though there are many many nice examples of individual problems.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文