• APL for Neural Networks (Re: naughty Python)

    From Lars Poulsen@3:633/10 to All on Thu Jan 1 15:52:04 2026
    On 2026-01-01, rbowman <bowman@montana.com> wrote:
    On Wed, 31 Dec 2025 22:34:14 -0000 (UTC), Lars Poulsen wrote:

    On 2025-12-31, c186282 <c186282@nnada.net> wrote:
    Can't wait to see what the AIs are cranking out in a few years ...
    29 levels all bunched together into one gigantic line ? :-)

    Shades of APL.

    https://github.com/ashinkarov/cnn-in-apl

    Although my APL is just a faint memory from 50+ years ago,
    this is quite impressive. I quote:

    Our study shows that, for our CNN, the requisite operations can be
    expressed in ten lines of native APL code, usingjust 22 built-in verbs
    and conjunctions:

    blog?{????1-?}
    backbias?{+/,?}
    logistic?{ö1+*-?}
    maxpos?{(,?)??/,?}
    backavgpool?{2?2/?ö4}?2
    meansqerr?{ö?2+/,(?-?)*2}
    avgpool?{ö?4{+/,?}?(2 2?2)?2??}
    conv?{s?1+(??)-????+/,??(???){s????}???}
    backin?{(d w in)????+/,w{(?in)?(-?+?d)???d}???w}
    multiconv?{(a ws bs)???bs{?+? conv a}?(0,(??a))?ws}

    The quoted APL formulae may be garbled; in my putty->slrn chain,
    many of the greek letters show up on my screen as blank squares
    after I pasted them in from the PDF file.

    Back in my day, I think the names were highly restricted.
    Longer names allow for much more readable code.
    --
    Lars Poulsen - an old geek in Santa Barbara, California

    --- PyGate Linux v1.5.2
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)
  • From Lawrence D?Oliveiro@3:633/10 to All on Thu Jan 1 18:58:39 2026
    On Thu, 1 Jan 2026 15:52:04 -0000 (UTC), Lars Poulsen wrote:

    Back in my day, I think the names were highly restricted.
    Longer names allow for much more readable code.

    I expect Python can do the same thing in just as few statements.

    --- PyGate Linux v1.5.2
    * Origin: Dragon's Lair, PyGate NNTP<>Fido Gate (3:633/10)