Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
b2gills
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
11 ms
·
31.
▲
by
b2gills
5y ago
"Eternal Middle School" is obviously TikTok
32.
▲
by
b2gills
5y ago
I saw a bit of that when someone on P5P mentioned that perltoot (Tom's object-oriented tutorial for perl) didn't exist anymore. His argument for keeping it was simple. https://www.nntp.perl.org/group/perl.perl
33.
▲
by
b2gills
5y ago
It wasn't even stagnant for a full 10 years, let alone 20. Perl 5.8 was released in 2002 Perl 5.10 was released in 2007 It has had a release every year since 5.12 in 2010. The latest was 5.32 on 2020-Jun-20. (Less than a year ago.) The
34.
▲
by
b2gills
5y ago
> Given that the multiple backend strategy only succeeded in replacing an existing backend with another backend several years later without achieving any of the interoperability goals of the JVM or CLR, I'm not even sure how to spec
35.
▲
by
b2gills
5y ago
The MoarVM and JVM backend supporting code was, and still are, very similar. The Parrot backend supporting code was significantly different. So much so that to properly support Rakudo on Parrot would require a rewrite of it. There are var
36.
▲
by
b2gills
5y ago
> Why not just add a "use new_defaults;" pragma or something that just turns on this handful of new options? Umm. Yes exactly. The thing is that it will instead be spelled as: use v7; There is already plenty of prece
37.
▲
by
b2gills
5y ago
Actually `=` sort-of only does one thing. It asks the left argument what it wants to do with the values. my @a = 1,2,3; is almost the same as my @a; @a.VAR.STORE((1,2,3)); --- As for separate positional and associative
38.
▲
by
b2gills
6y ago
The Raku idea is that an operator only does one thing. That way you can tell at a glance what the operator is doing. If you want to do something else, create a new operator. (One of the design mottos was “Similar things should look similar,
39.
▲
by
b2gills
6y ago
You could do it the way Raku does. It's implementation defined. (Rakudo on MoarVM) The way MoarVM does it is that it does NFG, which is sort of like NFC except that it stores grapheme clusters as if they were negative codepoints. If a
40.
▲
by
b2gills
6y ago
cygx incorrectly thinks that the Apocalypses, Synopsys, Exegesis were the specification. There is a reason we don't try to keep them up to date [anymore]. They are historical documents that were used to discuss and understand what the
41.
▲
by
b2gills
6y ago
The specification is the test suite. (Which has been kept up to date.) A text specification like the one C has is bordering on useless. There are plenty of things that are “implementation defined”. I think it was C that had to resort to say
42.
▲
by
b2gills
6y ago
Ironically making it more modern may make things like shell scripting easier. Let's say that Perl gets a real type system, and reflection capabilities. Then I can see something like this come to exist: use v7; use GetOpt::MAI
43.
▲
by
b2gills
6y ago
Raku is a significantly higher level language than most languages. Which tends to lead to slowness. Really it's faster in many places than it has any right to. @a[1]; Is just shorthand for a subroutine call. postcircumfi
44.
▲
by
b2gills
6y ago
Somewhere I have posted code that uses Inline::Perl, Inline::Python, Inline::Ruby, and I think maybe Inline::Go to convert Base64. (Perhaps other language interfaces as well, I don't quite remember) While there were some quirks, It wor
45.
▲
by
b2gills
6y ago
I didn't realize that concatenating two strings was the same exact concept as adding two numbers together. You learn something new everyday. Oh, they're not? Then why are you using the same operator? ... They reused the operator b
46.
▲
by
b2gills
6y ago
There are many good ideas that aren't in one programming language or another. Does that actually mean they are bad ideas? No. It only means that particular language didn't copy that particular idea. There may be bad ideas that a
47.
▲
by
b2gills
6y ago
This is the reason https://metacpan.org/pod/ExtUtils::Command exists.
48.
▲
by
b2gills
6y ago
The problem with types in Python is that the compiler doesn't enforce the types. Perl will actually enforce the types.
49.
▲
by
b2gills
6y ago
The Rakudo implementation actually uses Raku regexes to parse Raku. To be fair though it is a lot easier to do that with the redesigned regexes that Raku has. Basically you can use backreferences for that if you also allow the regex to be r
50.
▲
by
b2gills
6y ago
Raku allows strings inside of strings. Of course it does this by way of embedded closures. "abc{ "def" }" Which allows it to be arbitrarily deep. "a{ "b{ "c{ "d{ "e{ "f"
51.
▲
by
b2gills
6y ago
The Python 3 changes aren't big changes. They are breaking changes however. I know they aren't big because Perl has had to deal with many of those same type of problems, only it didn't have to break old code to do it. Perl
52.
▲
by
b2gills
6y ago
Perl is a write once language for me. In that I write it once and 20 years later it still works even though I upgraded the compiler many times.
53.
▲
by
b2gills
6y ago
Why do you think it is dead?
54.
▲
by
b2gills
6y ago
It could be clearer if you used Raku regexes my $pattern = /:sigspace ^ score $<points> = (\d+) for $<nights> = (\d+) nights? at $<hotel-name> = (.*) $ /
55.
▲
by
b2gills
6y ago
While Raku is generally slower than other languages, there are times when it is is faster than those same languages. There was even one report of it being faster than C/C++. (My guess is that the C/C++ code was doing a lot of stri
56.
▲
by
b2gills
6y ago
I fully expect that Raku will be as influential a language as Perl was before it. --- JavaScript has a `"use strict"` mode, that was copied from Perl5. PowerShell has a `$_` variable that was copied from Perl. Every language that
57.
▲
by
b2gills
6y ago
my %hash-table = ( abc => 1, def => 2, ); for %hash-table { say .key, ' => ', .value; } You can also use sub-signature deparsing. for %hash-table -> $ (:$key, :$value) {
58.
▲
by
b2gills
6y ago
To be fair some of the things in HOP are just features that already exist in Raku. use v5 use Stream 'node'; sub iterator_to_stream { my $it = shift; my $v = $it->(); return unless defined $v;
59.
▲
by
b2gills
6y ago
Correction 15 years. I was using it to an extent in 2009. (I'm sure I was using it before that.) At which point it had only been 9 years in development. --- You can have it fast, good, or cheap. Pick at most 2. Since Perl 6 was entirel
60.
▲
by
b2gills
6y ago
That's exactly what Perl has been doing since 1987. Where do you think the idea for `"use strict"` in JavaScript came from? use v5.8; use strict; use warnings;
More ›