Live data from Hacker News

Larry Wall Unveils Perl 6.0.0

pigdog.org

91–100 of 336 posts

Re: Larry Wall Unveils Perl 6.0.0

#91
post #89

I'm really surprised this site is the source y'all chose to upvote. Not only was the second-newest article published in 2012, they also have an assortment of other questionable content[0][1]. Advertising from rotten.com and a category named "Jonny Jihad" are also professional touches. I mean, whatever floats your boat, but HN, is this really one of your go-to trusted news sources? [0] http://www.pigdog.org/in_the_pin…

What source would you recommend?

Re: Larry Wall Unveils Perl 6.0.0

#93
post #84
post #74

Earlier quoted context omitted.

Method modification is trivially done through "alias" and then just redefining the method in Ruby, if you re-open the same class. If you subclass, then "super" is sufficient. I'm curious what you actually mean here. As for writing your own constructors, you only need to do so if you actually need to initialize something, and since instance variables can be used without having initialized them in a constructor (they'l…

> Method modification is trivially done through "alias" and then just redefining the method in Ruby I don't know how to convert this into ruby then without needing to manually gensym a bunch of names: use Class::Method::Modifiers; sub foo { 2 } before foo => sub { warn "before foo 1" }; around foo => sub { my ($orig, $self) = (shift, shift); warn "around foo"; (1, $orig->$self(@_), 3); }; before foo => sub { warn "be…

> I don't know how to convert this into ruby then without needing to manually gensym a bunch of names

Sounds like you want something like: https://github.com/nicknovitski/modifiers

> Which is required if you're going to use value objects as much as possible rather than spraying mutable state everywhere.

Using Ruby's Struct class for this often avoids needing explicit constructors.

Re: Larry Wall Unveils Perl 6.0.0

#94
post #64
post #49

Earlier quoted context omitted.

> but I want to see what "Perl" is like > get that they're different languages I'm not sure you do get it, unless you are talking about the "feel" of using it, in which case use either. They aren't just different languages because there's some things that break backwards compatibility, they are vastly different in many ways. If you want to know what current deployed Perl is like, look at Perl 5. If you want to look a…

I was talking about the "feel", indeed. So for example, if someone wanted to experience what a Lisp is like, I could point them to Scheme. I want to know what "Perl" is like, but the fact that Perl 5 and 6 share the same name is a tad confusing for a newcomer. Precisely because I have no idea what "standard" Perl is. I guess Perl 5 it is, since it's already on my machine.

The Modern Perl book[1] is highly recommended.

For web development, check out Mojolicious[2] or Dancer2[3]

And Task::Kensho[4] lists recommended modules for various tasks.

[1] http://modernperlbooks.com/books/modern_perl_2014/

[2] https://metacpan.org/release/Mojolicious

[3] https://metacpan.org/release/Dancer2

[4] https://metacpan.org/pod/Task::Kensho

Re: Larry Wall Unveils Perl 6.0.0

#95

> 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…

> This correctly produced a nice tidy list of just 32 values

33, not 32, right? (20 through 232, inclusive)

Re: Larry Wall Unveils Perl 6.0.0

#96
post #79
post #62

Earlier quoted context omitted.

> I still haven't come around to learning Python 3 I'm not using it everyday yet either, but it's not a whole new language. More like just a few cleanups to sensitive portions of the API.

I would love to see a concise document with the differences.

http://sebastianraschka.com/Articles/2014_python_2_3_key_dif...

Re: Larry Wall Unveils Perl 6.0.0

#97
So is this a real thing? I've never seen this pigdog website before, it's second newest article was published in 2012, and there's no mention of this on the perl 6 home page or in the perl 6 announcements mailing list..

Re: Larry Wall Unveils Perl 6.0.0

#98

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!

I'd love it if there was, I'd love to kick a couple bucks to Randal after hearing he lost his house.

Re: Larry Wall Unveils Perl 6.0.0

#99
post #72

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!

> it is practically always trivial for a Python2 programmer to write new code in Python3. Until you need to use some library that doesn't support python3. I think I've made the transition from python3 to python2 more than I have the other way around.

Or until you trip over the API differences between str and bytes in Python 3 that do not exist in Python 2 (because str == bytes in Python 2). Chiefly, printf-style formatting...

  >>> b"%u" % 5
  Traceback (most recent call last):
    File "", line 1, in 
  TypeError: unsupported operand type(s) for %: 'bytes' and 'int'

Re: Larry Wall Unveils Perl 6.0.0

#100
post #72

Earlier quoted context omitted.

> it is practically always trivial for a Python2 programmer to write new code in Python3. Until you need to use some library that doesn't support python3. I think I've made the transition from python3 to python2 more than I have the other way around.

I've been writing forward compatible py2 code for years using the __future__ imports to ensure proper semantics are preserved. When all my external dependencies have py3 support it becomes a breeze to upgrade using 2to3 and the rare occasional manual fixup.

And your tests will validate nothing was broken, right? You have thorough tests?
Post reply on HN