Live data from Hacker News

Is Perl 6 Being Renamed?

blogs.perl.org

281–290 of 424 posts

Re: Is Perl 6 Being Renamed?

#281

Earlier quoted context omitted.

Here's the difference. If I said "what's an implementation of Common lisp?" You'd say SBCL. If I Said "What's an implementation of C" you'd say GCC. If I said "What's an implementation of Javascript?" You'd say V8, Spidermonkey, etc. When I ask "What's an implementation of Perl6" The answer is "Nothing implements perl 6, isn't that wonderful!" It used to take forever diving around to find something that could run som…

> When I ask "What's an implementation of Perl6" The answer is Rakudo (compiler) and Rakudo Star (full distribution). Both of which have been production-ready since shortly after the Perl 6.c spec release in December 2015. Your rant would be understandable back before there was a stable spec, especially long before when the in-process language description and the various implementations were sometimes far apart. But…

When a project has been going on for decades, things that have only changed in the last few years are not going to be immediately and obviously understood by people.

The legacy of confusion and weirdness around the Perl 6 project is a legit problem, even/especially if it's no longer true and now Perl 6 is like a normal language.

Re: Is Perl 6 Being Renamed?

#283

> Perl 6 performance has now gotten to the point where it's often comparable to Perl 5 or surpasses it. It still needs some work in this area, but the work is clear, the goals are straightforward, and Perl 6 is going to easily oustrip Perl 5 in terms of performance. If the Perl 6 community wants to rename, it's perhaps the perfect time to do so. It doesn't look like a bad choice if performance is a primary concern. P…

"As fast as Perl 5" means "faster than python and ruby".

Every time someone complains about python performance they are usually told that it doesn't matter. If performance was really that important, people that wanted dynamic languages would all be using luajit, SBCL, chez scheme (or any of the other 10 schemes that run laps around python/ruby) and lately also JavaScript.

Re: Is Perl 6 Being Renamed?

#284
post #155

I want to write some scripts that are _slightly_ too complicated for bash. Basically just implementing some simple scripts that have a couple options/args and I want to use another tool. How good would perl 5/6 be for this? If not perl, anything similar that's not python? I want to learn something new.

This is a _perfect_ case -- to get started, you can just put `shell` in front of every line

  #!/bin/bash
  echo hello
change to

  #!/usr/bin/env perl6
  shell "echo hello"

then for arguments, try making `foo.p6`

  #!/usr/bin/env perl6
  unit sub MAIN($name,:$times,:$language);
  say $name, $time, $language
and run

  ./foo.p6 --help

Re: Is Perl 6 Being Renamed?

#285
post #35

Earlier quoted context omitted.

What good reason is that?

Off the top of my head: 1. CPAN was great 20 years ago, but it's a joke compared to modern dependency management systems. 2. Functions don't have explicit parameters, and still shift off of @_. (This can be kind of a catch-all for all the "things that are useful for scripts, but suck for programming in the large" design decisions in Perl 5, because I honestly don't remember all of them at this point.)

> 1. CPAN was great 20 years ago, but it's a joke compared to modern dependency management systems.

How so? I use npm/yarn daily and think they are mostly giant insecure playgrounds for teenagers with too much time on their hands. Browsing through node_modules on a large project is enough to make you give up software development and take up heavy drinking. Half the code I see in node_modules wouldn't pass a PR review at my own company. Yet we still depend on it daily.

> 2. Functions don't have explicit parameters, and still shift off of @_.

Never been a problem in my experience. The expected arguments are generally at the top of the sub. You must really not like functional programming then, with heavy use of curried functions and whatnot.

The bigger problem is with passing around an %options hash, and this is true of JavaScript as well, is that the keys can be easily mistyped leading to bugs. Not even TypeScript fixes this (because developers are generally horrible about defining types, which have to be defined perfectly).

Re: Is Perl 6 Being Renamed?

#286
post #127

Earlier quoted context omitted.

If Perl6 is ever performant, I'll be dropping Python for a lot of Scripting uses. Perl6 is a big language, but has a lot of power and beauty.

Yeah too bad it's slow. I write Perl 5 code at work on a daily basis and really wanted to like Perl6. Too late, too slow.

Some things are already significantly faster, but there are other common operations that are still slower.

I wonder if the JIT will interfere with scripts where startup time is not acceptable?

Re: Is Perl 6 Being Renamed?

#287
post #261

Earlier quoted context omitted.

Lizormato and some other folks have put in hundreds of performance fixes...I think these things just take time. The language might have been in development and design since the 90's, but it only just got to 1.0 or a "stable release" in 2017 I think. I'm surprised Larry Wall hasn't written a Perl6 book yet. Plenty of other authors have, but I was really looking forward to something from him or Damien Conway.

I've installed just about every release since 2017. It's a nice language but still slow and lacking library support. The best thing about it is probably the rational math.

Thanks for the information!

Yea... libraries are always good (especially for math and analysis), but I find that powerful languages need far fewer libraries to get things done. APL can do something with a few characters that might commonly be implemented as a lengthy function or library in some languages.

Windows Powershell can surprisingly do a lot of what Perl 6 can do and people mostly understand the limitations. You can automate processes, build your own DSL, have full OO support, full .NET interop, concurrency, you can pipe data around kind of like with FP...etc. It doesn't have some of the more perlish features though.

Re: Is Perl 6 Being Renamed?

#288

Earlier quoted context omitted.

I think there's a greater underlying dichotomy here that's relevant to your tailor-made suit analogy: the people who love Perl tend to be the people who are building and maintaining mostly only their own tooling and (usually small) codebases, and the people who don't love Perl tend to be the ones that are responsible for maintaining large piles of other people's code. A language that's "tailor-made" for the individua…

Do you have any data to back up the claim that it's "a far more expensive language to develop software in than all of the alternatives"? I feel like most scripting languages are pretty similar in terms of productivity based on my own experiences anyway...

I was stating a syllogism there: understanding and working with different coding styles is difficult, increased difficulty adds increased expense, and Perl supports many different coding styles.

As far as I know, nobody's done a comprehensive cost analysis of similar software built using different languages, methodologies, or architectures. Certainly nothing recent. I've harped on this before quite loudly and I think it's one of the reasons our industry can't be called "engineering".

People's individual experiences just don't make for good enough data because there are too many confounding variables.

Re: Is Perl 6 Being Renamed?

#289

Earlier quoted context omitted.

# copy stdin to stdout, except for lines starting with # while left_angle_right_angle: if dollar_underscore[0] =eq= "#": continue_next; } print dollar_underscore; } Hilarious...

The opening block with `:` and ending block with `}` literally killed me.

figuratively

Re: Is Perl 6 Being Renamed?

#290

Earlier quoted context omitted.

> FWIW, C++ is a different language from C It's been 20 years so my information could be very much out of date, but at that time anyway I would not have said this statement was true. C++ then was a superset of C, and any C++ compiler was capable of compiling ANSI C.

Even back then, C++ introduced new keywords, so valid C code like int new; would not compile in C++.

That's true, as a superset it reserved words that had not been reserved before... still think it's a stretch to call it a different language though.
Post reply on HN