1
7
当某些东西被破坏时,勇敢的语言设计者一定不要害怕破坏向后兼容性。我知道两种很好的方法:
|
2
6
简单:折旧 当新的方法或函数可用时,它们并不是简单地消除旧的方法或函数。他们只是不赞成他们。因此,致力于开发新编译器的开发人员知道,在某种程度上,他们将需要使用这些函数的新版本,或者将来他们的程序将无法编译。通过这种方式,它们是“向后兼容的”,但同时强制使用新功能。 |
3
2
我认为您使用编译器指令是正确的。不过,最好将其打包为编译器的命令行参数。 不管怎样,在您的编译器逻辑中,您可以对如下版本进行测试:
VoiceXML是一种用于指定语音对话框的基于XML的语言,它是将指令放入源代码的一个示例:
由于语法总是格式良好的XML,因此很容易实现,几乎是欺骗, |
4
1
我将成为一个真正严厉的发人深省的声音,并说:你永远不会有足够的用户让它变得重要。对不起,但是统计数字是对你不利的。 在不太可能成为问题的情况下,这些是我见过的解决这个问题的策略
好消息是,这些策略都没有一个非常好的效果,所以你有机会以一种新颖的新方式进行创造性和混乱。 |
5
0
一般来说,您至少要为一个新版本继续支持所有旧特性,但在将来最好是两个版本。然后,这个特性被贬值,在特性从您的语言中删除之前,由您的语言的用户更新它们的应用程序。 |
6
0
我忘记了语言处理向后兼容性的另一种方式:顽固地坚持永不更新语言。请参阅Donald Knuth的Tex以了解此示例。 |
Sudhanva c · 如何提高编码技能?[已关闭] 6 年前 |
hoffm · 为什么Ruby找不到调用方类中定义的常量? 7 年前 |
Thamme Gowda · “lambda”关键字的较短替代项? 7 年前 |
AlphaModder · 有没有带有“不寻常”访问修饰符的编程语言? 9 年前 |
lucasasecas · 有可能静态地使用动态语言吗? 10 年前 |
Eugenio Laghi · 仅由括号、加号和感叹号组成的语言 10 年前 |
dallin · 数组中的逗号运算符是否有名称? 10 年前 |