论文标题

Eiger:可审核,可执行,灵活的法律法规

Eiger: Auditable, executable, flexible legal regulations

论文作者

Bernauer, Alexander, Eisenberg, Richard A.

论文摘要

尽管沟通和自动化最近取得了进步,但法规仍以自然语言散文编写,符合歧义,不一致和不完整。我们如何精确地制定法规?我们的解决方案体现在Eiger,这是一种嵌入Haskell中的特定领域的编程语言。域专家与软件工程师配对,以在Eiger编写法规。域专家只需要读取和审核代码,而不需要编写。首先,有限的用户研究表明,这在实践中效果很好,因为Eiger代码大多看起来像具有简单SQL查询的Excel公式。 艾格(Eiger)构成了一种新战略的内核,以增加自动化和精确度以提高我们的专业服务业务中的客户价值。该框架是可执行的:基于客户数据,我们可以使用Eiger来推断如何最好地适应新的法规,然后保持合规性。本文回顾了Eiger的设计,并介绍了其实施。为了保留直接的表面语法,但使用单声学语义,我们利用了高级功能,包括GHC.Generics,新的OverloadRocordRecordDot扩展名,以及在运行时进行类实例选择的新颖方法。

Despite recent advances in communication and automation, regulations are still written in natural-language prose, subject to ambiguity, inconsistency, and incompleteness. How can we craft regulations with precision? Our solution is embodied in Eiger, a domain-specific programming language embedded in Haskell. A domain expert pairs with a software engineer to write regulations in Eiger. The domain expert needs only to read and audit the code, but not write it. A first, limited, user study suggests that this works well in practice because Eiger code mostly looks like Excel formulas with simple SQL queries. Eiger forms the kernel of a new strategy to deliver value to clients in our professional services business with increased automation and precision. The framework is executable: based on client data, we can use Eiger both to deduce how best to adapt to a new regulation and then maintain compliance. This paper reviews the design of Eiger and walks through its implementation. To preserve a straightforward surface syntax but with monadic semantics, we have leveraged advanced features, including GHC.Generics, the new OverloadedRecordDot extension, and a novel approach to performing class instance selection at run-time.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源