Re^2: -Ofun times
by moritz (Cardinal) on Apr 12, 2014 at 07:58 UTC
|
I get it -- optimization is a fun game. But isn't one of the rules of Optimization Club to implement the spec first, and optimize once that's been done?
That's only if you do waterfall-style development, and if you have well-financed dev team.
But we are volunteer-driven dev team, and so we must also keep those developers happy. And having a dog slow compiler frustrates people, and drives them away. And if volunteer devs have no users and no fun, they stop developing.
Another point is that we're listening to user feedback. When we first released the Rakudo Star distribution, we got lots and lots of feedback. Most of it was "this is very cool, but please make it much, much faster (and less memory hungry)".
Also, while Rakudo isn't feature complete, most user complaints these days concern performance and reliability, not features. Most missing things are very much orthogonal (and on a higher level) than the current optimization, so we don't expect much friction from adding those features later. Quite the opposite; since Rakudo is a partially self-hosting compiler, optimizing it speeds up the development cycle, which makes it easier to add more features.
Finally I'd like to point to other languages and compilers, like C++ with gcc and clang, and C# with mono/roslyn, and java with OracleJVM/OpenJDK + javac. The compiler (and VM) developers spend quite some time optimizing for performance. Yet none of the languages are feature complete, they are all being developed constantly. And not just the languages, the compilers have to catch up on those features too. Do you think they are all wrong too?
| [reply] |
|
TIL that #perl6 believes that comparing perl-6 to C++, C#, or Java doesn't make perl-6 look like a horrible, mismanaged, irrelevant death march.
Mind blown.
Well played. Perhaps those other three languages will eventually have real world users too someday? It will be interesting to see if they also get documentation, libraries, backwards compatibility, stability, tooling, packaging, and project management.
| [reply] |
|
That's only if you do waterfall-style development, and if you have well-financed dev team.
How is that true? Does agile say that you requirements be never frozen?
And having a dog slow compiler frustrates people, and drives them away.
How big is your user base and how many have been driven away? There are slower tools, like Scala. Which many people have no problem in using. Mainly because they can atleast use it, instead of a product that isn't complete but promises to be. I guess you don't realize you have a literally zero user base, apart from a few people who like to write one liners on IRC or write toy programs to implement commonly known algorithms on Forums which no one takes seriously. Which explains why they are happy with a sub set of features. Because for most toy programs you don't need much, but the existing ones to run fine
Also, while Rakudo isn't feature complete, most user complaints these days concern performance and reliability, not features.
Also who are these users? Can you show us at least on serious use of Perl 6 in the wild? A big company, A start up? Anything?
C++ with gcc and clang, and C# with mono/roslyn, and java with OracleJVM/OpenJDK + javac. The compiler (and VM) developers spend quite some time optimizing for performance. Yet none of the languages are feature complete
They are incomplete in the same sense iPhone, or your TV is incomplete. It doesn't mean iPhone's or TV's aren't usable now. It only means they may get a few feature based on the competition they face in the future
Perl 6 is just incomplete. Its a bit like shipping an iPhone without a feature to store phone numbers. That's a very different kind of incompleteness than the former.
| [reply] |
|
Also who are these users?
We get feedback on IRC, twitter, mailing lists, blogs, and on conferences in real life. I don't know what all of those people do with Perl 6, only some. Some of them write IRC bots, others write Perl 6 code that refactors their java code, again others manipulate CAD file with Perl 6, for their own consulting business.
Some of those projects are developed and maintained over years, and make their owners money. IMHO that's "serious".
Anyway, are you trying to imply that we shouldn't listen to user feedback because there are no facebook-scale Perl 6 installation? That it's OK to be annoyingly slow because we don't have a huge user base? And instead listen to a rather aggressive, anonymous poster on perlmonks?
Anyway, I'm afraid I'm wasting my time here. If we implement new features, people complain that rakudo is unusable because it's too slow and buggy; if we spend time optimizing it, people complain that we should make it feature complete first. Whatever we do, we'll get hate and pushback from random people on the Internet, so there's nothing left to do but do what we think is best.
| [reply] |
|
|
|
|
|
|
|
I would like to say that:
I am one of those users which don't use Rakudo mostly because it is too damn slow.
Last month I switched back from Scala to Perl 5 one of my projects because the scala compiler/toolset was so slow I couldn't bear it anymore.
I don't mind about the incomplete parts, I could add them myself if required. Perl 5 is also quite incomplete in several ways.
Yea, I like implementing algorithms!
| [reply] |
Re^2: -Ofun times
by CountZero (Bishop) on Apr 12, 2014 at 10:49 UTC
|
| [reply] |
Re^2: -Ofun times
by raiph (Deacon) on Apr 13, 2014 at 05:03 UTC
|
Hi davido,
If what I write below is not helpful (or worse), please accept my apologies.
I have long wanted to believe that Perl6 is destined for belated success. But I'm going to have to give up that position, and resign myself to the more realistic view that it's only destined for belatedness.
It does indeed sound like it might be time for you to let your P6 hopes go. Believing something about the future of P6 is faith really, and if you're in the dark about what's actually going on right now then it's blind faith, which I think you'll agree is ultimately unhealthy.
If you want to inspire people to regain hope and enthusiasm
I'm not trying to inspire people to regain hope and enthusiasm. I'm occasionally (about once a month) informing monks about what's going on in the P6 world and encouraging readers to consider exploring P6 -- especially the friendly and productive #perl6 vibe that Audrey bequeathed us (and which bares no recognizable relationship to the dumb drunks caricature one monk in particular would have the world believe).
And then a post announcing and congratulating progress in an aspect of the project that seems tangential to its success comes along, and I really believe it does the project a disservice, further turning people off to it.
I've reread my OP and I don't see how I was congratulating anyone. That certainly wasn't my intent. I'd appreciate clarification of what you saw as congratulatory.
I can see how my posts have put you off, and seem to you like a disservice to everyone, given that you were worried that P6 might not succeed and believed that what I have focused on was tangential. So, while I respectfully disagree, at least about my OP of this thread, I do get that my posts can leave you feeling discouraged or worse.
However, you can hopefully see things from my perspective too: I see what's actually going on with P6 because I follow the project; I want to occasionally (once a month or so) share P6 tidbits at the monastery; I post in this section because it says "if you want to share or discuss ... Perl 6 development, this is the place"; and my posts usually get positive votes with no significant downvotes, as is the case for this one at the time I write this.
As I said at the start, I think it might be healthy for you to let go of your hopes for P6. Then, the moment you notice a P6 post, and you don't like it, you'll be able to just ignore it because it won't matter to you. And if a post is interesting, well, you can read it without pain because you won't be getting your hopes up based on blind faith.
| [reply] |
|
| [reply] |
|
I never said "dumb drunks." That's just your paranoia talking, Ralphie boy. I think the people who are actually programming are very smart, just irresponsible and not interested in ever releasing anything "useful and usable".
But for fun, search the logs for "beer" and "tutorial":
#perl6 beer
#perl6 tutorial
I also searched for "book" and "documentation" but those results were too noisy to suggest anything interesting. But you can see from skimming the results that #perl6 spends far more time talking about consuming beer than it does talking about writing a useful tutorial. Unless Moritz edited the logs again to remove Jonathan cursing people out.
Which probably explains why the Rakudo has approximately zero users and keeps getting rewritten. Ballmer Peak anyone?
| [reply] |