Branch: refs/heads/master Home: https://github.com/perl6/specs
Commit: 8ef142f7f49fc62be17dd0569d34e7e17e02bc7b https://github.com/perl6/specs/commit/8ef142f7f49fc62be17dd0569d34e7e17e02bc7b Author: Carl Masak <cma...@gmail.com> Date: 2011-12-30 (Fri, 30 Dec 2011) Changed paths: M S32-setting-library/Str.pod Log Message: ----------- [S32/Str] removed '%C' directive from sprintf The '%C' directive allows you to go in and change the arguments to &sprintf during the &sprintf call itself, using callbacks with rw parameters. I'm removing this feature, for the following reasons: - There's no use case for this feature. - The Parrot people got distressed just thinking about refactoring the sprintf code enough to make this addition at the Parrot level. - TimToady got a large number of furrows on his brow just thinking about the implementation specifics of this feature, its security aspects, and its Unicode abstraction level. - A far simpler idea than changing the &sprintf arguments mid-flight would be to change them *before* the call. This requires no extra syntax, and no additional features. It would probably result in much simpler code, too. I challenge the world to come up with a use case for '%C'. Until then, it's an ex-feature.