AuDaLa is a recently introduced programming language that follows the new data autonomous paradigm. In this paradigm, small pieces of data execute functions autonomously. Considering the paradigm and the design choices of AuDaLa, it is interesting to determine the expressiveness of the language and to create verification methods for it. In this paper, we implement Turing machines in AuDaLa and prove that implementation correct. This proves that AuDaLa is Turing complete, giving an initial indication of AuDaLa's expressiveness, and by proving the implementation correct this contributes to the creation of verification methods for AuDaLa. Additionally, we give examples of how to add in possible extensions for AuDaLa to increase its expressivity to better match conventional parallel languages, allowing for a smoother and more performant implementation of algorithms.
翻译:AuDaLa是最近提出的一种遵循新型数据自主范式的编程语言。在该范式中,小数据片段自主执行函数。考虑到该范式及AuDaLa的设计选择,确定该语言的表达能力并为其创建验证方法具有重要意义。本文在AuDaLa中实现了图灵机并证明了该实现的正确性。这证明了AuDaLa是图灵完备的,为AuDaLa的表达能力提供了初步依据,且通过证明实现正确性为创建AuDaLa的验证方法做出了贡献。此外,我们举例说明了如何为AuDaLa添加可能的扩展以增强其表达能力,从而更好地匹配传统并行语言,实现更流畅、更高性能的算法实现。