InfoQ

InfoQ

新闻

我的书签

登录注册 以永久保存书签。

该内容已经被标记书签!

标记书签错误,请重试!

任何人都可合法实现C#与CLI规范

作者 Abel Avram 译者 王波 发布于 2009年7月8日

领域
企业架构,
运维 & 基础架构,
架构 & 设计,
语言 & 开发
主题
C# ,
Mono ,
开放源代码 ,
.NET ,
编程 ,
法律案件

近日,微软宣布为C#和CLI的相关规范即ECMA 334ECMA 335,提供公众承诺(Community Promise),这确保了任何人都可以用任何语言和方式来实现它们,而不会受微软侵犯知识产权及专利权的诉讼。这与开源.NET项目Mono息息相关,直到目前为止它的合法性仍未澄清。具体的公众承诺如下:

微软不可撤销地承诺不对制造、使用、销售、提供销售、进口或分发任何实现而进行索赔。本承诺直接适用于所有制造、使用、销售、提供销售、进口或分发相关细节的个人或组织。目的在于授权开源的实现。

该公众承诺比起开放规范承诺的自由度要低些,因为公众承诺“要求实现的内容必须符合所有细节的规定部分”。但开发人员无需和微软签署任何许可协议或通知微软关于他们实现C#和CLI规范的详情。

Peter Galli在Port25站点上作出声明来解释当中的含义

在公众承诺下,我们注意到任何人都可以用他们的技术、代码和解决方案来自由地实现这些规范。

我们不需要签署许可协议,抑或告诉微软我们是如何实现这些规范的。

该承诺适用于开发人员、经销商以及涉及相关实现的用户,与实现的开发模型、版权许可类型和业务模型无关。

一周前,GNU之父Richard M. Stallman才刚刚警告过包括Mono在内的开源项目

Debian打算把Mono包含在GNOME的主要安装过程中,由于该应用程序用C#编写,会让开源社区冒上极大的风险。依赖C#非常的危险,所以我们并不鼓励用户使用。
问题不仅仅在Mono;所有免费的C#实现都会面临同样的问题。微软很可能迫使所有免费C#实现的地下组织获得软件许可。
我们应该有条不紊地少用免费的C#实现。换句话说,我们不鼓励人们用C#编写程序。因此,我们不应该在GNU/Linux默认安装或者GNOME安装的主要方式中包含C#实现,我们应该尽可能推荐用户使用非C#应用程序。

Miguel de Icaza就微软澄清Mono许可的问题做出如下报告

几个月前,我们在微软接触过Bob Muglia和Brian Goldfarb,要求他们就ECMA标准中包括的C#和CLI作出说明。

由于Mono不仅仅实现了这两个ECMA标准,故Icaza还是有所担心:

在未来的几个月,我们将把庞大的Mono源代码大部分拆分为两份单独的源代码。一个是ECMA,另一个则会包含我们对ASP.NET、ADO.NET、WinForm和其他部分的实现。
由于获取Mono的方式不同,也许你已经拿到这个拆分的版本或者还没有。

把C#和CLI置于公众承诺之中说明微软不会针对开源开发人员和Linux经销商实现相关规格或者包含Mono到经销产品当中的行为进行诉讼。到目前为止,公众承诺仅包含了VBA语言规范、HealthVault服务规范、UI自动控制1.0和XPS规范1.0。

查看英文原文:Anybody May Legally Implement the C# and CLI Specifications

译者 王波 是匆匆IT过客,涉足于.NET编程技术,潜心研究和译书,与友人共译《C# 3.0揭秘》 。

热烈欢迎 发表人 Shichao Liu 发表于
  1. 返回顶部

    热烈欢迎

    发表人 Shichao Liu

    我新写的游戏服务器框架是基于.net的.