@Adám managed to solve that question from yesterday, I'm currently at '.!'[?6⍴2]∘{⎕←'Sending 5, 100-byte ICMP Echos, timeout is 2 seconds:',⎕TC[2],⍺[⍳⍵]⊣⎕DL 2}¨⍳6. Any clear golfs anyone can see?
@J.Sallé If you're allowed trailing spaces, change ⎕ML back to 1, and just '.!'[?6⍴2]∘{⎕←↑'Sending 5, 100-byte ICMP Echos, timeout is 2 seconds:'(⍵↑⍺)⊣⎕DL 2}¨⍳6
Okay, final code is '.!'[?5⍴2]∘{⍵≤5:⎕←↑'Sending 5, 100-byte ICMP Echos, timeout is 2 seconds:'(⍵↑⍺)⊣⎕DL 2⋄⎕←'Success rate is ',⍕(100×d÷5),'percent (',(⍕d←+/'!'⍷⍺),'/5)'}¨⍳7
@mroman Your question was: why use APL? Using APL dosn't mean "golf your code". True, sometimes the shortest approach is terribly inefficient, but that doesn't detract from short code being a plus as long as it stays readable, of course. Usually, APL doesn't do constraint-based computations (there's only one exception to that, and you have to be explicit about it if you want it).
@mroman Rather a team of geniuses can optimise low-level algorithms in the interpreter, and then everybody who uses the interpreter gains a speed-up at no further cost to them.
but you can offer a lot of those things using libraries in languages.
For example extension functions in C# (LINQ).
I mean.. the benefit of using a language would have to outweight the cost of learning the language.
either that or it has a huge DSL character.
(such as some languages are mainly used because they ship with a lot of utility in some area.... like statistics)
I do agree that short code vs long code may have some readability advantage in the sense that you can pack more information into a single line of code.
Reading nested loops across a hundred lines of code with dozens of function call is pretty much less readable than when you have a high-level concept for this stuff in your language.
on the other hand working on such a language and getting paid for it sounds like fun :D.
We are back from Dyalog ’18 and the video recordings for the event are being processed. We plan to release 3-5 videos per week - with each batch introduced via a blog post. The introductory blog post with links to the first batch of videos is at https://www.dyalog.com/blog/2018/11/welcome-to-the-dyalog-18-videos/