Aren't certain modules included in the PHP core distribution, like the mysqli extension that you enable using --with-mysqli?
Could we not include the PHP5 namespace as an extension with the PHP distribution, and have it enabled by default, but provide a --disable-legacy-namespace option? Then in future versions of PHP, we could switch the option to --enable-legacy-namespace instead. Thoughts? On Tue, Jul 17, 2012 at 11:04 AM, Anthony Ferrara <ircmax...@gmail.com>wrote: > I dislike this idea from the ground up. > > While I think having a legacy implementation is definitely worth while, it > needs to be in core. So PHP6 would introduce the new syntax, and include > the legacy functionality in as close to 100% backwards compatible way as > possible. From there, we'd only remove the legacy functionality from core > in 7 (which could be 4 or 5 years out). > > We don't want to be in the same situation with 6 that python was in with 3, > and perl was in 5. We want to encourage adoption. Having a PECL extension > needed for adoption is not going to fly too well. But if we can add the new > functionality and give people an easy migration path, adoption will be > easier. It still may take years, but it will at least be fairly smooth as > the majority of existing code will still work. Of course some BC breaks may > be necessary (a-la what happened with PHP5), but they should be fairly > localized and pretty easy to handle... And they should be justified > (breaking BC for the sake of it, as with these legacy functions, would be a > mistake)... > > My $0.02 at least. > > Anthony > > On Tue, Jul 17, 2012 at 9:41 AM, Andrew Faulds <ajf...@googlemail.com > >wrote: > > > This is an excellent idea. Full BC yet without legacy cruft. Old code > runs > > on legacy support extensions, new code doesn't need it. > > On Jul 17, 2012 1:51 PM, "Leigh" <lei...@gmail.com> wrote: > > > > > > Basically, the current function library is moved to the legacy > > > > namespace. The default setting is import the functions of the legacy > > > > namespace into the root namespace for BC. But with that setting > > > > turned off all the existing functions go away to be replaced with a > > > > designed API, instead of a grown one, correcting the mistakes that > > > > have accumulated over the years. > > > > > > Is there any reason why this cannot / should not be implemented as a > > > PHP 5 compatibility extension? > > > > > > I think those who never want to use it (PHP 6 purists) shouldn't have > > > to have their binaries bloated by legacy code. It would also mean that > > > the legacy implementation can be developed away from the new core, and > > > not have any (negative) influence on it. > > > > > > -- > > > PHP Internals - PHP Runtime Development Mailing List > > > To unsubscribe, visit: http://www.php.net/unsub.php > > > > > > > > > -- *Brandon Wamboldt* Programmer / Web Developer StackOverflow Careers Profile<http://careers.stackoverflow.com/brandonwamboldt>- GitHub Profile <https://github.com/brandonwamboldt> - LinkedIn<https://github.com/brandonwamboldt> - My Blog <http://brandonwamboldt.ca/>