Modula-2开发人员?

时间:2009-05-04 01:46:32

标签: legacy-code modula-2

猜猜没有新的项目在Modula,Ada,Oberon等语言中实现了(对吧?)。但仍然存在遗留下来的遗留系统,在这里和那里寻找他们的创造者。他们找不到他们,因为他们可能会在一个享受自己的地方的海滩上退休。

严重:
1)我想知道是否还有活跃的(经验丰富的)Modula程序员? 2)任何人都有将Modula代码移植到新硬件代码的经验吗? 3)有没有人知道可以重新设计的工具,意味着以图形方式映射程序和Mod文件。这些工具可用于例如。 C程序。

当然,与今天的.net和Java API相比,Modula语法与1000的方法相比并不令人惊叹,但是如果有人在你身上丢弃大约100,000行几乎没有记录的酸性代码(很好地混合了大约8000行汇编程序),你会更好知道你是否最好拒绝它。我有这个要求,我非常抗拒。 (选项:端口并保留模块源或在9个月内迁移到其他语言!)

欢呼声

7 个答案:

答案 0 :(得分:5)

1)我想知道是否还有活跃的(经验丰富的)Modula程序员?

它们很多,但您必须进行一些网络搜索才能找到它们。如果您搜索“简历”(或“恢复”)和“Modula-2”,应该有足够的点击量。此外,任何有Oberon,Pascal或Delphi经验的人都可以使用Modula-2。

还有活跃的Modula-2项目,最值得注意的是:

2)是否有人将Modula代码移植到新的硬件代码?

询问GNU Modula-2邮件列表。许多GNU Modula-2用户拥有16位DOS系统的Modula-2代码,他们喜欢移植到现代平台。 GNU Modula-2网站将此列为GM2的一个重要动机。 GM2邮件列表位于:

还有Modula-2 Usenet新闻组,您可以通过Google界面

访问它

最后但并非最不重要的是,Freenode有一个Modula-2 IRC频道

  • IRC://irc.freenode.net/#modula-2

3)如何评估100.000行Modula-2源代码

“如果有人丢弃了大约100,000行几乎未记录的酸性代码(很好地混合了大约8000行汇编程序),你最好知道你是否最好拒绝它。我有这个请求而且我非常抗拒。(选项:端口和在9个月内保持模块化源或迁移到其他语言!)“

你可能想联系着名的Modula-2学者和书籍作者Rick Sutcliffe,他也是Modula-2常见问题解答的维护者,他声称他受聘于评估Modula-2的咨询工作。公司接管情况下的源代码。在我看来,您的情况可能足够相似,可以聘请专家来确定为您提供的软件的价值。

答案 1 :(得分:4)

  

1)我想知道是否还有活跃的(经验丰富的)Modula程序员?

是的,我是一个人。但我已经有了一份工作: - )

  

2)是否有人将Modula代码移植到新的硬件代码?

不清楚是否意味着移植代码或移植编译器。移植Wirth的Modula-2编译器(或Oberon编译器)应该很容易。 Ada和Modula-3是另一个故事。

  

3)有没有人知道可以重新设计的工具,意味着以图形方式映射程序和Mod文件。这些工具可用于例如。 C程序。

我不明白这个问题。如果您希望可视化Modula-2程序的导入图形,您可以轻松编写要发出dot的内容。可视化调用图是另一个故事。

这是我对Modula-2和Oberon的底线:

  1. 任何值得他或她的盐的C程序员都可以快速学习足够的Modula-2来维护大型遗留应用程序。奥伯伦的另一个故事;它的导出名称和类型扩展模型与其他OO语言中的对象模型不同。

  2. Wirth作为语言设计师的天才是为编写编译器的人提供方便。所以如果你需要工具,任何好的编译器编写器都可以生成它们。 Wirth的编译器应该可用且易于移植。

  3. Ada不值得与Modula-2和Oberon同时提及。

答案 2 :(得分:2)

Ada仍然是一门非常活跃的语言。自1995年以来,我在自己的研究中以及自去年以来在大学的讲座中使用它。

答案 3 :(得分:1)

我自己对Modula知之甚少,但我在巴西的一个研究中心工作,该研究中心有一个完全用Modula-2创建的分组交换网络项目(Compac)。如果我没有弄错,他们甚至自己开发了编译器/链接器。由于我不自觉地指向特定的人,我建议你在谷歌搜索“compac”和“cpqd”,我几乎可以保证你会找到参与其中的人的名字。从80年代末开始,对它的引用已经很老了,应该不足为奇了。

答案 4 :(得分:1)

Modula-2在架构上与C不同。熟悉C的程序员应该很难搞清楚Modula-2。鉴于您的应用程序具有大量的汇编代码,那么无论如何您都需要具有低级技能的人。

IIRC Modula-2的语法是LL(1)或几乎是如此,因此编写解析器来生成Modula-2代码库的调用图并不是人类的智慧。 Graphviz是您的朋友,如果您想要一种快速简便的方法来显示呼叫图。同样,这表明您正在使用'real programmer'来进行移植工作。

如果你需要一个相当可行的Modula-2编译器,你可以看看Amsterdam Compiler Kit哪个有一个能胜任的Modula-2编译器,可以针对各种各样的平台,虽然它不支持Win32 IIRC 。

我建议记录和移植现有的Modula-2代码库可能比尝试在C中重写它更容易。但是,如果你需要转移到不同的处理器架构,那么你将不得不重写无论如何,汇编语言位。这确实改变了移植的价值主张。

如果您正在进行移植,那么您可以考虑分两步完成。

  1. 安排客户做一个实用程序来生成调用图,并给他们一个可行性研究,建议做什么和估计范围。

  2. 执行端口,移植代码库或重写代码。请记住,如果您在现代计算机上运行它,则可能不需要整个代码库的低级语言。你可以用(比如说)Python和C的混合物来完成它,而不是纯粹用C语言重写所需的努力。

答案 5 :(得分:1)

烨。

我意识到你很久以前就问了这个问题,但我也知道没有人愿意处理的项目会有所延迟......

我用了十年的时间在Modula-2中建立了几个大型系统,并且有这种疯狂的习惯来承担不可能完成的任务。

我已经十年没碰过它,但我绝对肯定我可以把你的系统移植到几乎任何其他平台上。如果您还有兴趣,为什么不与我取得联系呢?

哦是的 - 更好的是,我们都在新加坡: - )

答案 6 :(得分:0)

ADW Modula-2现已作为免费软件发布。 http://www.modula2.org/adwm2/因为它是免费的并支持32& 64位Windows应用程序(我知道Modula-2),我已经把它用于小型实用工作我想成为64位Windows二进制文件(我的大部分工作都是Java和.Net) ,这很好,但有时纯二进制是最好的。我已经使用MASM32 32位二进制Windows应用程序。)

修改

现在还有一个项目正在进行中(在很早的时候,截至编辑之日尚未使用),现在可以在JVM上编译Modula-2(具有转换为Java选项)。 https://github.com/m2sf/m2j