On Fri, Mar 17, 2023 at 11:11 PM rir <rir...@comcast.net> wrote:
>
> Deprecating 'undefine' is just making something easy more difficult.

I see a problem with `undefine`:

```
my @bar;
say @bar.defined, @bar.DEFINITE; # TrueTrue
undefine @bar;
say @bar.defined, @bar.DEFINITE; # TrueTrue
```

I think a warning about this is the wrong solution.

I think deprecation is the right solution.

----

That said, I'm a bit surprised that the deprecation message isn't something like

Please use `foobar` instead

(where `foobar` does exactly the same thing as `undefine`, just using
a different name).

----

Maybe no one has yet thought of a name that isn't also fraught?

Maybe there is no reasonable name?

Maybe it's only Perl folk who would want `undefine`?

Maybe it's only Perl folk who will see the deprecation message and be unhappy?

Maybe, on balance, it's reasonable to consider it an opportunity to remind Perl
folk that a fresh uninitialized array or hash is NOT undefined?

Dunno. Just keeping an open mind.

Onward...

----

I searched Rakudo's sources for "undefine".

No useful match?!? Looks like GH search goes from bad to worse. Sigh.

----

`say &undefine.file` got me `SETTING::src/core.d/operators.pm6`:
https://github.com/rakudo/rakudo/blob/591157170d29f8a45ef316bb0d065e8437059112/src/core.d/operators.pm6#L1-L9:

Git blame led to this commit:
https://github.com/rakudo/rakudo/commit/72bac6708002f992952ca93e617435482824b95f

The commit message mentions "6.d-prep".

A google for that led to:
https://github.com/Raku/6.d-prep

Results of a GH search included
https://github.com/Raku/6.d-prep/search?q=undefine&type=issues

I ask that no one here comments on the discussions therein unless
they are *very* careful to avoid using inflammatory language.

----

Next I decided to search IRC. That led to this by Larry:

> I think we should s/undefine/clear/, because clarity

(https://irclogs.raku.org/perl6/2015-07-02.html#17:19-0001

----

Liz suggested it was perhaps redundant.

(A similar argument appeared in the 6d prep issues.)

Larry didn't reply. Warnock's dilemma applies though I don't think
Larry ever missed anything. I think he always went with his gut; if
he felt he'd be repeating himself he said nothing.

----

And so we arrive at 2023 and the same issue arises as ever.

Can we be kind to each other even if we don't agree, even if we
are upset about some decision?

----

love, ralph

Reply via email to