2012-09-17 27 views
0

我在評論將COBOL代碼遷移到.NET運行時的解決方案。我在網上找到的兩個最有前途的解決方案是NetCOBOLMicro Focus Visual COBOLMicro Focus Visual COBOL是否直接編譯到MSIL?

NetCOBOL直接編譯到MSIL,並具有Visual Studio集成。通過「直接編譯」,我的意思是發出的MSIL表示COBOL代碼中的實際調用。這與MSIL代碼對COBOL代碼執行詞法分析然後解釋/執行的方法形成對比。

Micro Focus Visual COBOL絕對具有Visual Studio集成功能,但我無法在網站上找到明確的答案,以確定COBOL代碼是否爲直接編譯爲 MSIL或由解釋器處理。

我不知道我在這裏使用的語義是否100%準確,但是我對如何更清楚地表達「直接編譯」發出的代碼和發出的代碼被「解釋」。

+0

你有沒有試過反編譯的IL,看看它做了什麼? – svick

+0

@svick,該產品已付款,我沒有許可證。這個問題的目的是在購買之前幫助確定其中一種產品是否有明顯的優勢。 – smartcaveman

回答

0

從來沒有真正使用過任何COBOL。我想他們會把它們編譯成CIL,可能使用DLR。因此,也許要留意你分配的系統,如果它的.NET Compact安裝,它將不支持DLR。

我會誠實地用更現代的語言重寫它,因爲你可能不得不改變代碼才能在.NET框架上正常工作,因爲你沒有你的標準庫。除非這些編譯器中的任何一個都實現標準庫包裝器。

C#很容易理解,如果你設置了動態類型,你可以使用IronPython或IronRuby。

如果你使用COBOL,我確定這兩個編譯器都編譯爲CIL,否則它們在技術上就是解釋器或字節碼編譯器。我懷疑任何人都會編譯成CIL的字節碼編譯器/解釋器。