If anyone is interested in a more readable version of APL, I think python/numpy qualifies. Their first few examples can be expressed the same way in standard numpy:

    arange(6) # Same as ⍳5
    add.reduce(arange(6)) # Same as +/⍳5
    add.accumulate(arange(6)) # Same as +\⍳5
I've gone partway through this document (up to chapter 3, plus skimming other bits) and have not found any examples that don't translate into standard numpy code.

From what I can tell, the core learning one takes from J/K/etc is the concept of an array language and treating arrays as first class objects. And nowadays Python/R/Julia provide this same functionality in a more verbose/more readable/more mainstream package.

It'd be a fun project to write a an APL-like that compiles down to NumPy. Would it be pointless? Another interesting project might be to make an APL-like for probabilistic programming.

There's a start for this in Julia[0], where custom string literals mean that you can actually write APL in native Julia:

    julia> apl"ι5"
    1:5

    julia> apl"+/ι5"
    15
You can even just get the function that represents the `+/` operation and apply it to any Julia object:

    julia> apl"+/"(rand(100))
    52.17866879741195
0. https://github.com/shashi/APL.jl