Hacker Newsnew | past | comments | ask | show | jobs | submit | markrushing's commentslogin

I agree that the packaging of Perl 6 needs to be improved, particularly for Windows. It's easy in Linux and Mac.

Languages are a specification and implementation. Perl's been implemented in Rakudo, which runs on MoarVM and the JVM. It's handy being able to run on multiple VMs so that you can take advantage of their strengths, and in particular, places that deploy the JVM for Java will be simpler to integrate with, and apparently you can do stuff across with Java libraries even, though I haven't played with that at all myself.

http://rakudo.org/how-to-get-rakudo/#Installing-Rakudo-Star-... that's how I get it. Rakudo::Star is just a bundle of Rakudo with a bunch of commonly used modules which can be handy to have already installed.

Right now you get your choice of MoarVM or JVM to use as the tie into your OS, and MoarVM gets selected by default. It's started showing up in Linux distributions now too.


There's a .msi installer for Windows here http://perl6.org/downloads/


This is a question of coding standards, which is applicable to every language. Some places had strict standards eventually for Perl <= 5 but there was a lot of legacy stuff. But Perl 6 is certainly not Perl 5 :) All languages need some standards imposed on the programmers when you're working in tight teams. Languages that give people a great deal of flexibility and power even moreso. Actually, I'd argue for a collection of local-use libraries... ;)


I just started playing with Perl6 a couple weeks ago, and I am completely loving it now. It's the strangest process to get used to. I haven't had this much fun programming in a long time. Some frustration every one in a while until I can wrap my head around some new concept, but that's to me what this language is all about. SO much conceptual stuff in it. Very, very rich.

I've been converting some old stuff to it to learn it, and it crazy how much more compact things can become. Working with grammars has been amazing. And I'm just now getting hit over the head with how flexible class roles with parameters can be to consolidate methods that do similar, but slightly different things.

I haven't even started into the concurrency bits yet... something about "promises" and "supplies". But I'm actually looking forward to it at this point. And that's really a surprising thing to me ;)

Anyway, my 2 cents on it at least. I'm not sure it matters if Perl is ever a poster child for anything. I think it kinda just doesn't matter.


> I've been converting some old stuff to it to learn it, and it crazy how much more compact things can become

Oh gosh that sounds scary. A lack of compactness was never Perl's problem, quite the opposite in fact.


Yeah, I didn't mean compact as in, oh let's see how few letters we can use. I meant compact in the way you can organize even VERY complex stuff, especially using their concept of grammars. You can write whole languages and protocols pretty neatly with those.

Or like type. I've been loving their type system. You can use Perl as a heavily typed and enforced language, or not at all. And it's really easy to make up your own types, which you can also easily use for handling arbitrary constraints you might need.

  subset Even of Int where * mod 2 == 0;
  (1..1000).map: { when .is-prime { .say }
                   when Even      { say 'EVEN Num' }
                   default        { say 'no'}
                 }
Like there I just made up an new type called "Even", and used it when printing out stuff about numbers between 1 and 1000. But the really cool thing is you can use the exact sort of stuff for all kinds of variable types and even structures. It's just amazingly weird and open wonderful. I admit I've really fallen for it. ;)


There is an operator to check if one number is divisible by another.

    subset Even of Int where * %% 2;
You also don't have to write the where clause as a lambda.

    subset Even of Int Where $_ %% 2;


woot! :) still learning stuff ;) - though I'll use the first.


No one talking about Perl 6 compactness means golfed code! Just naturally translating over say a Java program with the OO design intact will be hugely compact. In a way that means the code is written at a succinct conceptual and declarative level. Perl 6 is incredibly declarative, you say what you want, not how to get there. The core features cover nearly all of what you want out of the box too.


Larry has talked of this[1] as Clean Golf:

> one should do token golf, not keystroke golf

> would be a nice cultural hack to start the Clean Golf meme

http://irclog.perlgeek.de/perl6/2014-03-11#i_8417918


Well, Perl 6 throws defined exceptions by default for most stuff like this, and would be very explicit as to why it couldn't open a file. Tests are part of the IO stuff too, to see if it exists beforehand if you like, or check permissions. Also, if you like you can do all the steps of using a normal file open and iterate over each line and split the words yourself if you want to. Your choice. ;)


And then just perusing anything that shows up in listbugs before an update? Hopefully problems would be noticeable without having to sift through tons of reports. I've never used that before. It's astonishing how many bugs there are in Ubuntu, yet they still release it. They have tended to get them fairly well settled over a span of time, though, after a release. But right now, I'm very happy to be back in Debian stable. It does feel like home. Well, much less cluttered than home, actually. ;)


Perusing sounds a little more involved than what the process actually entails. Its not a list of all bugs; its a list of bugs found in the version you are about to upgrade to. That means there are rarely more than one or two bugs. Most of the time its pretty easy to tell if the bug is relevant and if it is you can just pin the package to the old version, restart apt-get and upgrade away. Definitely worth checking out.


Yeah, I haven't looked at what backports has in it right now, but that's certainly a thought. I was thinking Mint might be a "first line" against any breaks that might show up in unstable, but it seems many people are very happy with unstable. I sure don't mind spending a few hours every couple years fixing some breakage - it's worth it for keeping updated. Totally agree about Ubuntu - serious bloat. I'm back in Debian stable right now, and it's incredibly more agile on the same hardware. There's not a thing I miss about Unity, either. Mint, BTW, couldn't install on an LVM/raid setup. Thanks icebraining....


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: