[tpm] Fwd: Perl 7
jamex1642 at gmail.com
Tue Nov 14 10:07:18 PST 2017
Meant to reply to the list as well....
---------- Forwarded message ----------
From: James <jamex1642 at gmail.com>
Date: Tue, Nov 14, 2017 at 2:34 PM
Subject: Re: [tpm] Perl 7
To: zoffix at zoffix.com
On Tue, Nov 14, 2017 at 8:16 AM, <zoffix at zoffix.com> wrote:
> Perl 7's already taken, bruh! https://github.com/perl7/perl7/ :)
> Sorry to say, but "+-1" sounds like a terrible name to me. Even worse than
> having a digit and a space as part of the name, it has two
> symbols and an ambiguity on how to spell them: is it "+-" or "±". Also:
It's only a suggestion, so I'm happy you responded.
To clarify, it's +-1.
It's a pun of sorts, in the sense that Perl is an onion, and an abuse
of notation for the successor (predecessor) functions of lambda
What follows is only a hypothesis.
I reserve the right to retract my statements.
In the words of Alan J Perlis:
I think that it's extraordinarily important that we in computer
science keep fun in computing. When it started out, it was an awful
lot of fun. Of course, the paying customers got shafted every now and
then, and after a while we began to take their complaints seriously.
We began to feel as if we really were responsible for the successful,
error-free perfect use of these machines. I don't think we are. I
think we're responsible for stretching them, setting them off in new
directions, and keeping fun in the house. I hope the field of computer
science never loses its sense of fun. Above all, I hope we don't
become missionaries. Don't feel as if you're Bible salesmen. The world
has too many of those already. What you know about computing other
people will learn. Don't feel as if the key to successful computing is
only in your hands. What's in your hands, I think and hope, is
intelligence: the ability to see the machine as more than when you
were first led up to it, that you can make it more.
Quoted in The Structure and Interpretation of Computer
Programs by Hal Abelson, Gerald Jay Sussman and Julie Sussman
(McGraw-Hill, 2nd edition, 1996).
The reason I snarfed the wiki quote on entropy is that we should be
looking, at least in theory, slicing entropy in the sense that UNIX
slices processor time between processes.
Computationally, and computer languages are all about expressing
computation, the +-1 operator is where I think things are headed.
Does Perl 6 exist because of Perl 5, or the other way around?
Does a 386 exist because of some super computer built way into the
future, or the other way around?
Crazy shit. It might be.
However it may be, technology is only a means to a end.
I included a link to a article by Mr Kleene that suggests that there
is an computable number, from which all algorithms can be defined.
It's described right in the abstract of that paper. I think I want to
be focussed on expressing that number. That's my motivation.
There is a such a thing as statistical mechanics, a branch of physics
that deals directly with a universal indicator called entropy. I think
this looks similar to way category theory deals with functions.
I suggested the name because I wanted to grasp the notions of close
enough, when talking about Perl; can we talk about both Perl and Perl
6 at the same time, or for that matter Perl 7.
> * It can't be used as an identifier in many of the languages, so anytime
> anyone would do Perl 6 related
> work in another language they'd have to bastardize the name. This is the
> issue that Larry pointed out with "6lang" as the name.
> * It doesn't look like a name, so it'll inevitably be confusing when used in
> brochures and posters. This is especially
> a pain point because currently we're looking for an *alias*, not a fully
> new name, to be mostly used by Marketing.
Another good point. I wasn't thinking about marketing exactly. But it
could work the other way as well. C++ is a similar name to +-1, and
it's popular. Also, wondering how is the identifier problem described
above currently dealt with in respect to C++.
Just a joke here: C++ = C++;
> * It reminds me about "+1"/"-1" convention used to vote on things in places
> like GitHub. I suspect "+-1" in that scheme would be interpreted as
Now that is something akin to what I'm thinking; Consensus is useful
notation for a language.
> Also, some comments on your comments on reasoning:
> * Perl 6's modules do not need to end with `1`
> * There's no `+-` operator, but `+-1` is two prefix operators
Maybe we are sitting on a interrupted stack, and it's in polish form.
But technically you are right, at this point I'm just imagining an
operator that looks like +-1.
I have a friend who is a math professor and he usually never knows
what I'm talking about either.
It's up to me to make it clear. Sorry for being obtuse.
> But thanks for thinking about it :) I'll add it to the pile of all the other
> name suggestions to look over during 6.d language release.
That's all anyone could hope for.
> Quoting James <jamex1642 at gmail.com>:
>> no responses so far, but honestly i'm only half joking.
>> Summarizing the serious one half:
>> * +-1 could be an operator (successor) in the Church-Turing thesis.
>> * When talking about programming languages we are in fact programming
>> them. (that's why we love Perl!)
>> * If Perl 6 were named +-1 when talking about using it you would leave
>> yourself room for improvement or an escape hatch. :D
>> Meaning this (+-1) is declarative because we don't have enough data
>> yet but we want the computer to do the work.
>> * Perl modules typically end with a value of 1. Exit codes are crucial.
>> * +-1 is pronounced "plus minus one" and means close enough in the
>> sense of epsilon.
>> * I don't think the +- operator is in use yet.
>> * there is an inverse operator -+1
>> What I'm talking about makes most sense in the thermodynamic sense of
>> To see why this is a sensible name for Perl 6 forget the details for a
>> and try to see the concept as involving only direction and magnitude.
>> eg. it's a vector.
>> The driving idea is one of reversibility.
>> BIG QUOTE FOR THOSE INTERESTED IN WHAT I'M TALKING ABOUT.
>> Entropy is an important concept in the branch of science known as
>> thermodynamics. The idea of "irreversibility" is central to the
>> understanding of entropy. Everyone has an intuitive understanding of
>> irreversibility. If one watches a movie of everyday life running
>> forward and in reverse, it is easy to distinguish between the two. The
>> movie running in reverse shows impossible things happening – water
>> jumping out of a glass into a pitcher above it, smoke going down a
>> chimney, water in a glass freezing to form ice cubes, crashed cars
>> reassembling themselves, and so on. The intuitive meaning of
>> expressions such as "you can't unscramble an egg", or "you can't take
>> the cream out of the coffee" is that these are irreversible processes.
>> No matter how long you wait, the cream won't jump out of the coffee
>> into the creamer.
>> In thermodynamics, one says that the "forward" processes – pouring
>> water from a pitcher, smoke going up a chimney, etc. – are
>> "irreversible": they cannot happen in reverse. All real physical
>> processes involving systems in everyday life, with many atoms or
>> molecules, are irreversible. For an irreversible process in an
>> isolated system (a system not subject to outside influence), the
>> thermodynamic state variable known as entropy is never decreasing. In
>> everyday life, there may be processes in which the increase of entropy
>> is practically unobservable, almost zero. In these cases, a movie of
>> the process run in reverse will not seem unlikely. For example, in a
>> 1-second video of the collision of two billiard balls, it will be hard
>> to distinguish the forward and the backward case, because the increase
>> of entropy during that time is relatively small. In thermodynamics,
>> one says that this process is practically "reversible", with an
>> entropy increase that is practically zero. The statement of the fact
>> that the entropy of an isolated system never decreases is known as the
>> second law of thermodynamics.
>> Reaching for my algebra textbook [
>> http://www.hcm.uni-bonn.de/fileadmin/perrin/chap1.pdf ]
>> An algebra A over k is a vector space over k together with a bilinear
>> map A x A => A.
>> x(y + z) = xy + xz
>> (x + y)z = xz + yz for all (x,y,z) belonging to A^3
>> (ax)(by) = (ab)(xy) for all (a,b) belonging to K^2 and (x,y) belonging to
>> I see this as a basic requirement for consistency. In the above k is
>> the system you are modelling.
>> The algebra represents k's "digital" parts.
>> Wikipedia quoth [https://en.wikipedia.org/wiki/Antisymmetric_relation]
>> if R(a,b) and R(b,a), then a = b,
>> As a simple example, the divisibility order on the natural numbers is
>> an anti-symmetric relation. In this context, anti-symmetry means that
>> the only way each of two numbers can be divisible by the other is if
>> the two are, in fact, the same number; equivalently, if n and m are
>> distinct and n is a factor of m, then m cannot be a factor of n.
>> The reason I mention this is that there the order of operands in
>> typical multiplication over integers is undefined.
>> For every algebra, A there is an opposite algebra Aop where (x,y)
>> means yx instead of xy.
>> And I've gone to far in one step, but if you think I'm wack or
>> something check this out, it's a good read:
>> On Sat, Nov 11, 2017 at 12:02 AM, James <jamex1642 at gmail.com> wrote:
>>> This is a post of humour.
>>> I've got the best name for Perl 6.
>> toronto-pm mailing list
>> toronto-pm at pm.org
More information about the toronto-pm