Live data from Hacker News

Larry Wall Unveils Perl 6.0.0

pigdog.org

281–290 of 336 posts

Re: Larry Wall Unveils Perl 6.0.0

#281
post #2

Larry Wall Unveils Perl 6 and no comments on hacker news an hour later. That's the new headline that sums up Perl: an anachronistic programming language that may never recover from the perl 5->6 decade long 'freeze'. Also the language is crazy to write substantial programs in!

I've spent a year now using Perl exclusively at my job, and I love it. It's incredibly powerful, expressive, concise, and well-documented. It's a lot like js where the language has some cruft but as long as you're not working with any cowboys you can build some really elegant software.

Re: Larry Wall Unveils Perl 6.0.0

#282
post #207

Earlier quoted context omitted.

Not sure why this was downvoted. I'm currently still in Python2 and looking to upgrade to Python3. Having solid automated tests is vital for us to do it confidently.

But do you have tests for your tests? Assuming tests are written in Python2, gotta make sure they don't start testing the wrong things when you upgrade them...

The way I think of it, the code tests the tests. It's the the same way keys and locks verify each other.

Is there some sort of failure mode you're thinking of where I'd still see all the tests run but the test framework would give false success for something?

Re: Larry Wall Unveils Perl 6.0.0

#283
post #212

"If that's what it takes to make Ruby programmers happy..." Completely brilliant.

It's unnecessarily condescending, especially given that Ruby got `?` and `!` suffixes from Lisp, which far predates Ruby, and that Ruby itself is in many ways a descendent of Perl.

The goal of Ruby is to make programmers happy. I started out to make a programming language that would make me happy, and as a side effect it’s made many, many programmers happy. Especially Web developers. But Ruby hasn’t reached developers who work on embedded devices, mobile devices, controllers, things like that. I hope to make them happy too. -- Matz [1]

Larry Wall's comment recognizes Ruby culture and acknowledges that it is a good thing. Not surprising given that Perl 6, like Ruby is an everything-is-an-object language with a lineage from Smalltalk. Programmer productivity/happiness was one of its goals as well.

[1]: http://siliconangle.com/blog/2011/08/31/qa-with-yukihiro-mat...

Re: Larry Wall Unveils Perl 6.0.0

#285

> One of the most impressive things Larry demonstrated was the sequence operator, and Perl 6's ability to intuit sequences. say 1, 2, 4 ... 2**32 > This correctly produced a nice tidy list of just 32 values -- rather than the 4,294,967,296 you might expect. Someone with more time than me needs to find an IQ test that is based around sequence questions like this and plug them all into Perl 6. So we can find out what P…

The range operator (..) is also pretty cool, since we're all lazy now. Here's an infinite lazy list of prime numbers in Perl 6 (declared as a constant because you presumably don't want to change 'em):

    constant primes = grep { .is-prime }, 1 .. *;

Re: Larry Wall Unveils Perl 6.0.0

#286
post #175

Earlier quoted context omitted.

> Perl is awesome for writing big programs in. This isn't even remotely true. No static types, no thank you. Runtime errors due to misspelled methods? Missing hash keys? Hilarious. Boy, I hope this scalar isn't undefined!

Compile time checks are not a replacement for a good test suite.

Who said they were?

Re: Larry Wall Unveils Perl 6.0.0

#287

Earlier quoted context omitted.

With things like this, it makes me glad I write C++ (and that gets bashed enough!). I do not miss the days of maintaining a Perl codebase (and trying to decipher what on earth code was doing). This is insane.

Perl is a language sufficiently different from the main bulk of languages that one must make an earnest effort to learn it before one can read it. Your complaint is similar to someone declaring Japanese insane just because of the way its writing system looks like gigantic and erratic complexity to the inexperienced.

To be fair Japanese writing is insane and they know it. It's far too difficult.

Re: Larry Wall Unveils Perl 6.0.0

#288
post #230
post #4

I honestly did not expect to see the day Perl 6 gets finished. This must have been one of the most difficult - if not the most difficult - births in the history of programming languages. At work, I have been using Perl 5 increasingly often over the past two years, mainly because handling unicode in Python 2 is not a lot of fun (and I still haven't come around to learning Python 3), and I have rediscovered why I used…

If you haven't had the time to learn the transition from Python 2 to 3, don't expect to find time to transition from Perl 5 to 6. Perl 6 is orders of magnitude more different from Perl 5 than Python 3 is from Python 2.

Perl 6 is not different, its a new language. You don't transition from Perl 5 to Perl 6. You learn Perl 6 as a new language and use it.

That's completely different compared to the case of Python, where Python 3 is a continuation from Python 2. But breaks backwards compatibility with the entire ecosystem. Bulk of the language remains same, you are migrating non backwards compatible parts.

Re: Larry Wall Unveils Perl 6.0.0

#289

Earlier quoted context omitted.

> Perl is awesome for writing big programs in. This isn't even remotely true. No static types, no thank you. Runtime errors due to misspelled methods? Missing hash keys? Hilarious. Boy, I hope this scalar isn't undefined!

You don't write a lot of tests, do you?

[deleted]

Re: Larry Wall Unveils Perl 6.0.0

#290

I love Perl [I have been to perl monger meetings and I had to look up how to 'unshift' in python today]. But Python3 is mostly just Python2 with a print function instead of a print keyword. It is occasionally non-trivial to port large existing code bases from Python2 to Python3, but it is practically always trivial for a Python2 programmer to write new code in Python3. I hope Perl 6 will get its own camel book!

learning Python 3 is easier than reading any Perl...

Learning atomic parts of anything is very easy. Its using those atomic parts to build complex systems that is hard.

If there is a operator in Perl 6, which you don't have in Python- Your options are to rewrite those semantics in Python most of them pretty large, and they won't be easy to read either.

Ease of learning is a irrelevant metric. You can't use a needle to replace a saw, if you do you are only going to end up doing more work.

Post reply on HN