Python 模式匹配的替代语言

Python 模式匹配的替代语言,python,programming-languages,wolfram-mathematica,pattern-matching,Python,Programming Languages,Wolfram Mathematica,Pattern Matching,我正在用Mathematica编写一个程序,它依赖于模式匹配来执行工资单和付款凭证验证。问题的关键是比较不同的数据文件(CSV和XLS),以确保它们包含完全相同的信息,因为支付由两个不同的第三方处理 我对Mathematica的使用使程序的开发变得非常精简和有趣,但在发行级别上是禁止的。CDF格式不是一个选项,因为程序要求用户导入数据文件,而WRI在CDF中不允许这样做 对于这个任务来说,一种理想的编程语言将使我能够将它打包为独立的,适用于OS X、Linux或Windows,并且能够进行模式匹

我正在用Mathematica编写一个程序,它依赖于模式匹配来执行工资单和付款凭证验证。问题的关键是比较不同的数据文件(CSV和XLS),以确保它们包含完全相同的信息,因为支付由两个不同的第三方处理

我对Mathematica的使用使程序的开发变得非常精简和有趣,但在发行级别上是禁止的。CDF格式不是一个选项,因为程序要求用户导入数据文件,而WRI在CDF中不允许这样做

对于这个任务来说,一种理想的编程语言将使我能够将它打包为独立的,适用于OS X、Linux或Windows,并且能够进行模式匹配。还需要对GUI(原始或扩展)的支持

我想用Python来翻译我的程序,但我不确定这是否是一个好的选择

你有什么建议


我对模式匹配的唯一理解是Mathematica教给我的

Mathematica完美处理的任务示例如下:

导入XLS文件,按日期和名称对数据排序,提取某些日期和名称。导入CSV文件,按日期和名称对数据排序,提取特定日期和名称

比较两者,生成包含所需(缺失)信息的格式良好的输出


在Mathematica中浏览数据也非常简单和直观。

考虑一下它似乎具有您想要的所有功能,并且是跨平台的。

如果您想使用一种更标准的语言,它具有一些处理电子表格的功能,除非我误解了这个问题,我建议只使用简单的Java和ApachePOI库,专门针对可怕的电子表格格式。此外,它比Haskell的学习速度要快得多,不过我想如果你已经了解Mathematica,那么转向另一种有数学倾向的语言也没那么糟糕。

Prolog是一种逻辑编程语言,它实际上是根据你给出的事实进行证明的。因此,若你们为它提供了沃伦蒂或工资信息的适当事实,它将能够通过尝试得出一个基本情况来证明它是其中的一个,在这个基本情况下,等式的双方都会相互抵消。还有很多,但我现在正在打电话

对于您的情况,您将能够以更易于编程的语言读取数据,并在Prolog中验证您的参数,并且只要您的Prolog事实正确,它将能够快速验证您的数据是否有效。它可以被看作是类固醇上的正则表达式,具有更多的功能


如果模式匹配指的是正则表达式,Perl是在mindProlog中用正则表达式设计的,Erlang中有非常强大的模式匹配,并且它们与平台无关。另外,许多公司使用Prolog来解决您所描述的确切问题,它非常准确,因为它证明了解决方案的正确性。请更具体一些。什么样的“模式匹配”?Python有一个正则表达式库
re
,还有一个图形用户界面库
tkinter
。你在寻找什么类型的模式匹配?你并没有真正用Prolog构建一个独立的程序,尽管你可以,你可以编写Prolog来匹配你需要的情况,然后你可以从各种其他语言调用它,主要是我用过的C语言。因此,您可以在C中从prolog运行匹配,如果匹配,则可以在C程序中继续。