On 05/12/2021 7:22 a.m., Ivan Krylov wrote:
On Sat, 4 Dec 2021 21:26:05 -0500
Avi Gross via R-devel <r-devel@r-project.org> wrote:

In many languages, like PERL, this results in implicated conversion
to make "text1" the result.

FWIW, Perl5 has a separate string concatenation operator (".") in order
to avoid potential confusion with addition. So do Lua (".."), SQL
("||", only some of the dialects) and Raku ("~", former Perl6). Some of
the potential concerns with string concatenation as an operator in R
could be alleviated by introducing a separate operator, just like matrix
multiplication ("%*%") is separate from elementwise multiplication
("*"), nowadays even in Python ("@" and "*", respectively).


People seem to handle the automatic conversion of comparison operators. Occasionally someone is surprised that

  123 < "5"

is TRUE, but mostly people muddle along.

One possible issue is that for some things (e.g. S3 Arith group generic), "+" is grouped with the other arithmetic operators, "-", "*", "^", "%%", "%/%", "/". I don't think it would make sense for any of them to work on strings. But there are exceptions listed for number of arguments among the Math group, so an exception in the Arith group wouldn't be the end of the world.

Duncan Murdoch

______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel

Reply via email to