Perl 5 支持带有 -T 开关的污点模式。脚本将在内部将从脚本外部的源检索的任何值标记为应未污染的污染值。Perl 6 是否支持这样的选项?
No.
设计文档中简要提到了这样的功能。建议是引入taint
性状。
您可以通过搜索 #perl6 日志来查看Larry Wall对此(以及任何其他主题)的最新评论。TimToady提到"污点",透露"我们还没有污点机制来防止滥用"。
Perl 5 会将一个 Scalar 容器标记为受污染,并且该污点可能会也可能不会溢出到其他容器中。它不坚持放入数组中的值的原因是 Perl 5 使用相同的数组来保存它自己的数据。性能损失本来是很大的,以使受污染的模式正常工作。
您可能已经猜到了,受污染模式加入了渡渡鸟。相反,您可以使用受限设置。请参阅Camelia的代码是如何完成的。