With friends like these
blogs.perl.org
blogs.perl.org
Meanwhile, while computing σ(p^a) can be done by summing, it can be done even more simply by noting that this is a geometric series and so sums to (p^(a+1)-1)/(p-1).
Edit: Actually, not sure how this latter way compares to just doing Horner. Probably about the same, I imagine. I guess Horner would be the right way to do it if division is expensive for some reason.
Which my phone unfortunately doesn’t render :(
> Perl 6 aims to let us express ourselves in whichever notation we find most convenient, comfortable, and comprehensible.
Is the reason I’ve always hated Perl once I started using it in a team context vs personal projects. The diversity of code styles even on your own Perl code over the years changes more than other languages I’ve used, let alone taking into account lots of other developers too.
<3 Damian’s articles and talks though, so this isn’t meant as a detractor on him.
return unique flat small-divisors, big-divisors;
are ambiguous even to a human, because '-' is usually used for subtraction, but I guess Perl's parser somehow manages to disambiguate (between a single variable named 'small-divisors', and the subtraction of 'small' and 'divisor')?I remember when this was switched on. Larry Wall tried it out on the entire spectest suite, and nothing broke (or at most one random thing broke), because basically people already put whitespace around their infix operators.
Incidentally, apostrophes are also allowed inside Perl 6 identifiers.
Personally, I used to conservatively use underscore (`_`) in my Perl 6 identifiers for some years. Then I got used to hyphens, and it's hard to go back.
Larry Wall seems hilariously easy-going for a language BDFL!
https://en.wikipedia.org/wiki/Larry_Wall
"While in graduate school at the University of California, Berkeley, Wall and his wife were studying linguistics with the intention of finding an unwritten language, perhaps in Africa, and creating a writing system for it. They would then use this new writing system to translate various texts into the language, among them the Bible. Due to health reasons these plans were cancelled, and they remained in the United States, where Larry instead joined the NASA Jet Propulsion Laboratory after he finished graduate school."
https://en.wikipedia.org/wiki/Cultural_imperialism
https://en.wikipedia.org/wiki/Scramble_for_Africa
FORTH ?KNOW IF HONK ELSE FORTH LEARN THEN
: C(-; LICK SMILE NOSE WINK ;
\ FORTH PAPER TAPE PUNCHER:
: PT# ( L --- L/2 )
DUP 1 AND IF
ASCII @
ELSE BL THEN
HOLD
2/
;
: PT. ( N --- )
<# PT# PT# PT#
ASCII . HOLD
PT# PT# PT# PT#
#> TYPE
;
: CUT
." -----------" CR
;
: PTAPE
CUT
BEGIN
KEY ?DUP WHILE
DUP ." |" PT. ." |" SPACE EMIT CR
REPEAT
CUT
;So you are saying that code like a=b-c+d completely changed its meaning? Would this example become a = b-c + d or a = b-c+d or a=b-c + d or ...?
I just can't imagine how you would change an existing language to such an extent.
“What is b-c, is that a variable or a math?”
“Is it (a=b-c)+d or a=(b-c+d)”
So you simply wouldn’t encounter code written like this, because it’s just as confusing as it is problematic for the hyphen change.
Deciding what things mean based on context is something that humans are very good at.