-1

我正在編寫一個程序Mathematica它依靠模式匹配來執行工資覈算和付款驗證的保證。問題的關鍵是比較不同的數據文件(包括CSV和XLS)以確保它們包含完全相同的信息,因爲工資由兩個不同的第三方處理。模式匹配的替代語言

我對的使用Mathematica使程序的開發變得非常流暢和有趣,但是在分發級別上令人望而卻步。 CDF格式不是一種選擇,因爲該程序要求用戶導入數據文件,這是WRI在CDF中不允許的。

這個任務的理想編程語言將使我能夠將它打包爲OS X,Linux或Windows的獨立版本,並且能夠進行模式匹配。還需要支持GUI(原始的或廣泛的)。

我想到Python來翻譯我的程序,但我不確定這是否是一個好的選擇。

你有什麼建議?


我唯一的模式匹配的理解是that其中數學documentation教我。

數學完美處理任務的一個例子是:

導入XLS文件,排序的時間和名稱的數據,提取特定的日期和名稱。導入CSV文件,按日期和名稱對數據進行排序,提取某些日期和名稱。

將兩者比較,產生一個很好的格式化輸出,其中包含所需(缺失)的信息。

瀏覽數據Mathematica也非常簡單直觀。

+0

如果通過模式匹配你的意思是正則表達式,Perl的用正則表達式記 – SJuan76 2012-07-11 18:18:33

+0

dessigned序言,二郎神有非常強大的模式在他們匹配,他們是獨立的平臺。也有很多公司使用Prolog來描述你正在描述的確切問題,它非常精確,因爲它證明了這個解決方案的一貫性。 – sean 2012-07-11 18:19:41

+1

更具體。什麼樣的「模式匹配」? – Junuxx 2012-07-11 18:26:30

回答

3

考慮Haskell這似乎有你想要的所有功能,並且是跨平臺的。

1

如果您想要使用更具標準功能的電子表格功能,除非我誤解了這個問題,否則我會建議使用簡單的Java與Apache POI庫,專門用於製作可怕的電子表格格式。另外,它比Haskell要快得多,儘管我想如果你已經知道Mathematica,那麼轉向另一種數學上傾向的語言並不是那麼糟糕。

1

Prolog是一種邏輯編程語言,因爲它實際上是基於您給出的事實做出證明。因此,您是否向其提供了有關warrenty或payroll信息的合理事實,它將能夠證明它們中的任何一個是通過嘗試找到等式兩邊都取消的基本情況。還有更多,但我現在在手機上。

對於您的情況,您將能夠以更易於編程的語言閱讀數據並驗證您在Prolog中的參數,只要您的Prolog事實正確,它將能夠快速驗證您的數據是否有效。它可以被認爲是具有更多功能的類固醇的正則表達式。

http://www.amzi.com/articles/lsapi_design.htm