plusto operator definition missing?

chris hermansen clhermansen@gmail.com
Sun Jul 13 23:19:02 GMT 2025


It's been awhile, but...

On Sun, Jul 13, 2025 at 2:04 PM Jose E. Marchesi <jemarch@gnu.org> wrote:

>
> > Thank you Jose,
> >
> > On Sun, Jul 13, 2025 at 1:24 PM Jose E. Marchesi <jemarch@gnu.org>
> wrote:
> >
> >>
> >> > Hello all,
> >> >
> >> > I was going through Lindsey a couple of days ago and noticed the
> plusto
> >> > operator definition on p. 244.  Here is what it says:
> >> >
> >> > operator priority mode of a  mode of b  mode of result  meaning
> >> > plusto       1      string  ref string    ref string   b := a + b
> >> > +=:                  char   ref string    ref string
> >> >
> >> > (I hope that shows up ok in peoples' email; I did it in fixed width
> text)
> >> >
> >> > I have a version of the procedure "whole" that I use with GNU Algol 68
> >> that
> >> > has the line
> >> >
> >> > digit_string := digit_char + digit_string
> >> >
> >> > in it, and I thought I'd try +=: instead, as in:
> >> >
> >> > digit_string +=: digit_char
> >> >
> >> > However, ga68 complains:
> >> >
> >> > testl.a68:277:50: error: CHAR cannot be coerced to REF STRING in this
> >> > context
> >> >   277 |                                 digit_string +=: digit_char;
> >> >
> >> > I am supposing that this is due to not having the second version of
> the
> >> > operator defined - the one that works with a char on the right hand
> side.
> >> >
> >> > Am I missing something?  Thanks in advance.
> >>
> >> I think you mean:
> >>
> >>     digit_char +=: digit_string;
> >>
> >> Which works as expected.
> >>
> >
> > My apologies.  Too many years of admiring the sacred nature of the left
> > hand side...
>
> :)
>
> MARY had right-associative assignations, which actually made it possible
> to treat them as regular dyadic operators and therefore overloadable:
>
>     foo =: bar;
>
> instead of:
>
>     bar := foo;
>

... I seem to recall that R lets you do either

x <- a + 42
a + 42 -> x


-- 
Chris Hermansen · clhermansen "at" gmail "dot" com

C'est ma façon de parler.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://gcc.gnu.org/pipermail/algol68/attachments/20250713/7495e9f6/attachment-0001.htm>


More information about the Algol68 mailing list