Well... it's easy enough to model:

l2r=:{{0!:0;,&LF@(;:inv)&.><;._1;:'.. ',y}}

   l2r 'echo 1+1 .. echo 2+2 .. echo 3+3'
2
4
6

Note that if this model were presumed to be strict, this would mean
that sentences separated by .. would not implicitly return values. I
am not sure if this matches your expectations or not.

Take care,

-- 
Raul

On Mon, Jul 26, 2021 at 10:44 AM 'Michael Day' via Programming
<[email protected]> wrote:
>
> APL lives/d with the diamond separator,  which works from left to
> right,  in addition to
> left tack and right tack (in Dyalog anyway) which are similar to J's [
> and  ]  .
>
> So this modification might help recruit any APL-ers still averse to or
> unaware of J.
>
> Cheers,
>
> Mike
>
> On 26/07/2021 14:47, Eric Iverson wrote:
> > Michal,
> > I slightly favor having a statement separator. Others are violently
> > opposed. You have started an interesting discussion that might take a while
> > to pick up steam. Don't give up yet!
> >
> > There are some complicating issues, such as debug.
> >
> > On Mon, Jul 26, 2021 at 4:57 AM Michal Wallace <[email protected]>
> > wrote:
> >
> >> Come on... :) Obviously I know how to write the code I wrote. :D
> >> Yes, I can write the whole thing like this:
> >>
> >> puts@']' fgc@9 puts 4 {. s=.1|.s [ fgc@15 puts@'[' goxy xy [ bgc 4 [ fgc 9
> >>
> >> I'm just saying it looks backwards and awkward to me.
> >>
> >> This thing draws a string on the screen that looks like   [.oOo] in
> >> various colors, and the .oOo part is extracted from a larger string
> >> so it looks like a little indicator that the machine is still doing
> >> something
> >> or waiting for you to do something. (Or rather, this draws one frame of the
> >> animation)
> >>
> >> If I were putting that string together without setting the colors and
> >> moving the cursor, i'd write:
> >>
> >> echo '[', (s=.1|.s), ']'
> >>
> >> But with the color and cursor stuff, I seem to have to break it into
> >> multiple lines, or write it backwards.
> >>
> >> In this particular case, what I plan to do instead is write a little
> >> language that lets me set colors
> >> and move the cursor in the natural order, so it's not a big deal... (Maybe
> >> for J, i'll just make a
> >> "left-to-right" verb that operates on gerunds or something...)
> >>
> >> But... lately, I've also been working on some parser combinators, and a
> >> small virtual machine.
> >> In all these cases, I have bits and pieces of the code which are more
> >> naturally expressed as
> >> sequences of imperative operations, rather than function compositions, and
> >> I find myself
> >> wanting this same statement separator.
> >>
> >> I use K every day at work, and it uses the semicolon for this purpose. I
> >> often find myself wishing K
> >> had forks, and J had statement separators. (and native dictionaries, and a
> >> literal syntax for symbols.. :))
> >>
> >> Anyway, I noticed '..' was free now and it seems to have a nice symmetry
> >> with '{{' and '}}'
> >> and I thought it might be a good notation for this.
> >>
> >> I don't really expect this proposal to make it into the language (for one
> >> thing, it's not clear to me that
> >> there's an actual process by which language decisions get made), but... I
> >> also didn't expect we'd
> >> ever get anything like {{ and }} (which I've also wanted forever), so I'm
> >> asking.
> >>
> >>
> >>
> >> On Sun, Jul 25, 2021 at 9:45 PM 'robert therriault' via Programming <
> >> [email protected]> wrote:
> >>
> >>> Hi Michal,
> >>>
> >>> In your first line you are already doing what I would do, which is to use
> >>> [ to separate the different results.
> >>>
> >>> goxy xy [ bgc 4 [ fgc 9
> >>>
> >>> You can continue to do that as long as you get the order right and lower
> >>> things vertically would precede the upper ones
> >>>
> >>> fgc 15 [ puts '[' [ goxy xy [ bgc 4 [ fgc 9
> >>>
> >>> or perhaps I am misunderstanding what you are trying to do.
> >>>
> >>> Cheers, bob
> >>>
> >>>
> >>>
> >>>> On Jul 25, 2021, at 17:00, Michal Wallace <[email protected]>
> >>> wrote:
> >>>> I love the new '{{' and '}}' ...
> >>>>
> >>>> what are the chances we could bring '..' back as a statement separator,
> >>> at
> >>>> least inside these new double curly braces?
> >>>>
> >>>> Often I have a bunch of really short lines that I would love to just
> >>> stick
> >>>> on one line, like this demo code from the terminal library I'm working
> >>> on:
> >>>>   while. -. keyp'' do.
> >>>>     goxy xy [ bgc 4 [ fgc 9
> >>>>     puts '['
> >>>>     fgc 15
> >>>>     puts 4{. s=.1|.s
> >>>>     fgc 9
> >>>>     puts']'
> >>>>     sleep 150
> >>>>   end.
> >>>>
> >>>> I can easily stick these on one line with @ or [: but the code winds up
> >>>> feeling very backward, so I find myself just using newlines and
> >> wasting a
> >>>> lot of vertical space on my screen.
> >>>>
> >>>> One answer here is to make a mini-language for terminal operations
> >> that I
> >>>> can just pass as a string, but there are other places where I find
> >> myself
> >>>> wishing I could just write a sequence of expressions (evaluated
> >>>> right-to-left as usual) but all on one line, and sequence them from
> >> left
> >>> to
> >>>> right... (I use K at work, and this is a pretty natural style)
> >>>> ----------------------------------------------------------------------
> >>>> For information about J forums see http://www.jsoftware.com/forums.htm
> >>> ----------------------------------------------------------------------
> >>> For information about J forums see http://www.jsoftware.com/forums.htm
> >>>
> >> ----------------------------------------------------------------------
> >> For information about J forums see http://www.jsoftware.com/forums.htm
> >>
> > ----------------------------------------------------------------------
> > For information about J forums see http://www.jsoftware.com/forums.htm
>
>
> --
> This email has been checked for viruses by Avast antivirus software.
> https://www.avast.com/antivirus
>
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to