6 ms·
Perl 6 is vaporware. Python 3 is here, it's widely supported, it's faster than Python 2.7, and while Guido didn't do us any favors with his migration strategy,
by ak217 13y ago
Perl 6 is vaporware. Python 3 is here, it's widely supported, it's faster than Python 2.7, and while Guido didn't do us any favors with his migration strategy, I don't see what the big deal is. Python 3.3 makes writing code that is compatible with both almost trivial.
People aren't using Python 3 enough because it's not the default in Debian/Ubuntu. That's about to change with Ubuntu 14.04. I expect that to tip the scales.
- steveklabnik 13y agoI have Ruby and Perl tattoos and now work at a Python (2.7) shop, so I have all of the horses in this race, but is there a significant difference between a language that's vaporware[1] and one that nobody uses? The previous things I've seen also indicated that Python 3 _isn't_ widely supported, though I guess Django finally got support recently, and that it _wasn't_ faster than 2.7. Is this just old information on my part, or is it different for certain kinds of workloads? > it's not the default in Debian/Ubuntu. Yeah, that should have a large impact, for sure. 1: I have seen lots of "check out this Perl 6 code" blog posts, but I don't know to what degree it's ACTUALLY vaporware.
- dragonwriter 13y ago> but is there a significant difference between a language that's vaporware[1] and one that nobody uses? There's a significant difference between a language for which a complete implementation does not exist such that you cannot use it, and one for which an implementation exists but few people currently choose to use it because there is a closely-related predecessor language that still has a stronger ecosystem. As an stage in the development of a language out of an existing, widely-used predecessor, the "vaporware" stage tends to precede the "available but not popular due to predecessors ecosystem advantage" stage, which tends to precede the "displaces predecessor" stage. Its obviously possible for a language to stop progressing at any of the earlier stages before reaching the last stage.
- steveklabnik 13y agoQuite fair.
- wiremine 13y ago> Perl 6 is vaporware Perl 6 is not vaporware, you can run it today: http://perl6.org/compilers/features http://perl6.org/compilers/features Is it 100% feature complete or fast? No. But there working code and new, stable releases on a monthly basis.
- greenlakejake 13y ago> Is it 100% feature complete or fast? No. If it's not feature complete it's vaporware.
- steveklabnik 13y agoBy that definition, basically all software is vaporware.
- coldtea 13y agoWell, if they are programming languages, are still unstable 10 years late, have near zero adoption and are missing half of the promised features, then yes.
- kamaal 13y agoUnfortunately languages like Rust perfectly fit your definition. Because Rakudo was started around the same time as Rust and Rust is aiming for may be 1% of the feature set Perl 6 aims to achieve.
- chromatic 13y agoRakudo was started around the same time as Rust That's moving the goalposts a bit! What's currently called "Rakudo" is at least the sixth or seventh attempt at an implementation, not counting Pugs, viv, v6, or Niecza.
- coldtea 13y agoRust appeared publicly as a project to build a language in 2010 (it was a personal, private, project kept under wraps by Graydon a few years before which is irrelevant). Perl 6 was first started on 2000. I've been reading Larry's apocryphal descriptions of its "features to be" for 4 times more years than Rust exists. Rakudo is just a particular attempt at Perl 6, not the first and neither it consists of first time the language was announced publicly.
- agentultra 13y ago> People aren't using Python 3 enough because it's not the default in Debian/Ubuntu. That's about to change with Ubuntu 14.04. I expect that to tip the scales. I doubt it will tip that much. The enterprise customers we develop for still ship on CentOS and have auditing departments that have to scour each library and package a system depends on. Adding a dependency hurts in this environment. These institutions only upgrade their interpreters once every 5 - 8 years if you're lucky.
- kamaal 13y agoComparing Perl 6 with Python 3 is a big joke. Even a cursory look at the Perl 6 specification and implementations like rakudo will tell you Perl 6 is attempting to go to a place where Python may like likely go in the next 40 years, with 10 Python 3 like disasters. Its an exceptionally ambitiously project which they are in no hurry in finishing. And that is for a good reason.
- chromatic 13y agoIts an exceptionally ambitiously project which they are in no hurry in finishing. And that is for a good reason. Way back in the early days, the goal was to release a usable 6.0 in a couple of years. The "there's no hurry" line is a post hoc justification from around 2006 or so.
- kamaal 13y agoBut has the goal of Perl 6 as a project remained static? I'm relatively new to the Perl community. I know you are around since a very long time. But I think the goal has changed from "Let's fix Perl 5" to being a more bigger goal of developing a language what Perl 5 would likely look after say 3 decades of iterations. I can't say if that is good from a purely practical perspective. But it does sound like worthwhile goal to chase. Lets take a look at Python 3 itself. Yes they finished the project, but 5 years after that- Now what? Users don't seem to a have a valid reason to move away from 2.x series for merely small time incremental improvements, while forced to migrate bulk of the infrastructure and code for nearly ~0% productivity gains. Perl 6 could have come out by 2005-2006, and if it were to be merely a incremental non-backwards compatible change over p5. We would be having similar posts about p6 as we are having now about Python 3. Imagine a refined, yet not that beneficial p5 breaking CPAN. I am sure you wouldn't like such a situation.
- chromatic 13y agoBut has the goal of Perl 6 as a project remained static? The idea that it would be a series of incremental improvements to Perl 5 ended around 2001, and certainly by 2002 at the latest: http://www.perl.com/pub/2000/11/perl6rfc.html http://www.perl.com/pub/2000/11/perl6rfc.html The grand unification of runtimes (Ponie) had failed long before the announcement of its demise in 2006: http://www.nntp.perl.org/group/perl.ponie.dev/2006/08/msg487.html http://www.nntp.perl.org/group/perl.ponie.dev/2006/08/msg487... I suspect but can't entirely prove that the appearance, rapid ascent, and even more rapid burnout of Pugs made a lot of people realize that this would be a long slog. Even so, if you look back at mailing list messages or conference talks or blog posts in 2006, 2007, 2008, whenever, you'll see that the party line has always been "It's only a year or two away."