Live data from Hacker News

Is Perl 6 Being Renamed?

blogs.perl.org

251–260 of 424 posts

Re: Is Perl 6 Being Renamed?

#251

To my mind, the blockers for Perl 6 adoption in order of importance have been: 1. The name, saddling it with the legacy of Perl. (I say this as someone who really liked working with Perl back in the waning years of the old millennium, and believes that Perl was visionary in pointing the way to the state of modern programming... but also that it had some limitations that have only become more glaring over the years.)…

SBCL is not Common Lisp. ChickenScheme is not Scheme, nor is guile Scheme. GCC is not C. V8 is not JavaScript. Neither is SpiderMonkey. clang is also not C. tcc is not C. Visual C++ is not C or C++. Delphi is not Object Pascal. Pypy is not Python, nor is Jython, nor is Stackless Python, nor is IronPython. JRuby is not Ruby. yasm and fasm are not x86 assembly or x86_64 assembly or ARM assembly. I'm seeing a pattern of…

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 some subset of perl 6, usually with the disclaimer of "This isn't really perl 6, but rather a language that seems like perl 6" And you'd get the same thing from the mailing lists/etc.

Re: Is Perl 6 Being Renamed?

#252
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.

Sounds like the perfect opportunity to check out P6. It's stable enough and has a lot of cool features if you want to learn something new.

It even has built-in multi-dispatch command-line arg-processing: https://docs.perl6.org/language/create-cli

Re: Is Perl 6 Being Renamed?

#253

Earlier quoted context omitted.

> if you insist on a language that is Perl-like but also modern Here's your perennial reminder that the word "modern" is a thought smell. > it's a language with a small ecosystem that doesn't seem to provide any groundbreaking advantage compared to existing languages I'd almost prefer this conception went uncorrected, because Perl6 is not just Ruby or Python in different clothes, and it's not just Perl5 with nicer ae…

> "modern" is a thought smell Sometimes it's a thought smell, but sometimes it's shorthand for "has learned the lessons of recent history", which is indeed valuable.

"Code smell" isn't an automatic "something is definitely wrong," it's an indication that maybe something is wrong.

By analogy, "modern" might indeed sometimes mean "has learned the lessons of recent history."

One can even sometimes test this by asking people what they mean by "modern."

My experience is that they usually don't know, or have a conception uncomfortably close to "it was released more recently" or "it's more like what everybody does right now," which are both certainly worth observing... but stopping there is where the thinking becomes distinctly less so.

Re: Is Perl 6 Being Renamed?

#254
post #189

Earlier quoted context omitted.

Feels like the big blocker is that it seems to only be useful if you insist on a language that is Perl-like but also modern, but most Perl programmers probably moved to other languages already and don't care about whether their language is Perl-like, and the remaining ones are probably mostly maintaining Perl 5 codebases that they don't want to rewrite. Ignoring the Perl angle, it's a language with a small ecosystem…

> if you insist on a language that is Perl-like but also modern Here's your perennial reminder that the word "modern" is a thought smell. > it's a language with a small ecosystem that doesn't seem to provide any groundbreaking advantage compared to existing languages I'd almost prefer this conception went uncorrected, because Perl6 is not just Ruby or Python in different clothes, and it's not just Perl5 with nicer ae…

Sorry, what is a "thought smell?"

Not familiar with the term and can't find it elsewhere.

Re: Is Perl 6 Being Renamed?

#255

Earlier quoted context omitted.

> Until Perl6 is actually released, it doesn’t really matter what they call it. > (yes, I know they have functional snapshot builds, but as long as there’s not a final "6.0" (or "1.0") release, expect most devs to steer clear of it. Few people (masochists, mostly) want to use an ‘experimental’ programming language for important work). The “1.0” for the Perl 6 spec (6.c, because reasons) was released in 2015; the stab…

Then it should have been called "1.0". Calling it "DEFINITELY NOT 1.0" while deciding that that is secret P6 code for "really means 1.0" is awfully bad marketing. (More seriously, slow performance, missing features, bugs, etc. were part of the reason for not calling it "1.0", but I would agree that to be really successful, the language needs a release that is called 1.0 and acts like it.)

> Then it should have been called "1.0".

6.c was described, both before and after its release, as being the “1.0” release of the Perl 6 language.

> More seriously, slow performance, missing features, bugs, etc. were part of the reason for not calling it "1.0"

No, they weren't.

The first “production-ready” release of Rakudo Star release was shortly after the 6.c spec release, in version 2016.01 (Rakudo Star uses date-based versions numbers.) If they were using semver-ish numbering for Star releases rather than dates, this would have been the 1.0 implementation (as opposed to spec) release.

Re: Is Perl 6 Being Renamed?

#256
post #107
post #27

I haven't looked at Perl in years, having long ago switched to Python/SciPy, but now I see that Perl 6 doesn't have GIL, something that Python has been unable to shed. So now a language that nobody cares about anymore solves the #1 problem that I have with Python. We are truly blessed to have so many shitty implementations of dumb programming languages to choose from these days!

I am a Perl user not Raku, and Perl had almost the opposite problem where its threads are concurrent but too badly designed to be useful. But from what I have seen, Raku is second to none in this capability.

Being able to do a multi-threaded map() would be divine. In Python, you're creating/destroying a new process and using IPC to seed the state info and return the results for each element in the iterable arg. If the function in question runs quickly, it ends up being faster to do it single threaded.

Re: Is Perl 6 Being Renamed?

#257

I think it was CPAN that killed Perl, at least that was a major nail in the coffin for me. I have no idea what the CPAN of today is like, but back in the mid-late 90's it was horribly unreliable. There were dozens, if not hundreds of modules that did the same thing, and a lot of them had major bugs. But installing one was the big issue, as it would always choose the latest release of any module in the dependency chai…

> But installing one was the big issue, as it would always choose the latest release of any module in the dependency chain, including the perl interpreter itself.

You are mistaken. No cpan client is capable of upgrading perl itself. If a cpan module declares a dependency on a perl version later than what you are currently running, the installation simply fails (as what would happen if there is a dependency declaration on a module that is shipped with core and is not upgradable separately, e.g. 'strict' or 'POSIX').

Re: Is Perl 6 Being Renamed?

#258

To my mind, the blockers for Perl 6 adoption in order of importance have been: 1. The name, saddling it with the legacy of Perl. (I say this as someone who really liked working with Perl back in the waning years of the old millennium, and believes that Perl was visionary in pointing the way to the state of modern programming... but also that it had some limitations that have only become more glaring over the years.)…

> The insistence on branding sub-components of it and exposing that branding. Yes, it has a VM. Yes, it has a compiler. But why do people talk about ParrotVM and Rakudo as if they're different things? Java has a compiler and a VM, they're called "javac" and "jvm." This wifty "no, Perl 6 is the standard, the software you're running is Rakudo and Parrot" distinction is totally irrelevant to anyone actually wanting to w…

> So, Perl 6 is the standard

Well, more accurately, it's the language name (like SQL).

Standards include Perl 6.c, and Perl 6.d (Like SQL-2011 and SQL-2016)

Re: Is Perl 6 Being Renamed?

#259

Earlier quoted context omitted.

You can tell that the parent post understands all that, right?

As per usual, the GP sees the matter from a purely technical perspective, which occludes the larger business insight that the top-level comment provides.

I very specifically pointed out that some of it was based on the relationship between the projects. I wasn't defending the situation, as much as providing context of why it was done that included non-technical reasons.

To spell it out, Parrot the project started around the same time as Perl 6 the project. Initially, a lot of Parrot's purpose in reality was to be a VM for Perl 6, but Parrot also had a goal of being a good general VM for dynamic languages. From that perspective, I think they were often mentioned together because neither wanted to be overshadowed by the other to the point of obscurity, and they wanted to draw on the general audience each might bring (and there were quite a few people doing stuff in Parrot with nothing to do with Perl 6 eventually).

Did it cause problems? Probably, even if you ignore the eventual blowout they had. That doesn't mean it was it was entirely a stupid technical reason by technical people ignoring marketing concerns, as part of the reason I think it was done was purely for marketing. Initially, it might have even helped (a VM for dynamic languages was a big idea back then, I know I saw a lot of people excited about it).

Re: Is Perl 6 Being Renamed?

#260
post #188

Earlier quoted context omitted.

> The insistence on branding sub-components of it and exposing that branding. Yes, it has a VM. Yes, it has a compiler. But why do people talk about ParrotVM and Rakudo as if they're different things? Java has a compiler and a VM, they're called "javac" and "jvm." This wifty "no, Perl 6 is the standard, the software you're running is Rakudo and Parrot" distinction is totally irrelevant to anyone actually wanting to w…

> So, Perl 6 is the standard. There have been multiple implementations to varying degrees of completeness, including but not limited to Rakudo, Pugs, and Niecza. Those implementations have generally targeted one or more VM targets, including Parrot, MoarVM, Java, .Net and custom VMs. That sounds like a really solid foundation to build a business on... I think if people are willing to look with an unbiased eye, there…

Perl 6 -> SQL

Perl 6.c, Perl 6.d -> SQL-2011, SQL-2016

Rakudo Star -> MySQL

Rakudo compiler backends (for MoarVM, JVM, JS) -> MySQL storage engines (InnoDB, MyISAM, ...)

Having different names for languages, language spec versions, language implementations, and backends doesn't seem unknown in successful projects.

Other than the problem of “Perl” in the name, all of this is fairly boringly normal.

Post reply on HN