In a discussion on the #lisp IRC channel recently, someone wanted to remove
a certain substring from a larger string. In Lisp, the solution is to
simply use cl-ppcre and remove by regex.
But, I started thinking about how to do this in APL, and this is what I
came up with:
RemoveSubstrings ← {,/ ⍵ ⊂⍨ ↑~∨/ (-⍳⍴⍺) °.⌽ ⊂⍺⍷⍵}
Is this a good way of solving the problem? I realise that I have a bug when
the resulting string is empty:
* "foo" RemoveSubstrings "foo"*
DOMAIN ERROR
λ1[1] λ←,/⍵⊂⍨↑∼∨/(-⍳⍴⍺)°.⌽⊂⍺⋸⍵
^ ^
Does anyone have a better solution?
Regards,
Elias