A peeve.
Don Schwarz (darkowl@darkowl.pr.mcs.net)
Sat, 21 Dec 1996 22:32:46 PST
On Sat, 21 Dec 1996, Brad Lawrence wrote:
> Why should this happen:
>
> ;;blah = "foo";blah[2] = "";#2:tell(blah)
> #-1:Input to EVAL, line 3: Invalid argument
> .... called from built-in function eval()
> .... called from #59:eval_cmd_string (this == #2), line 21
> .... called from #59:eval*-d (this == #2), line 11
>
If you're either replacing more than one character of a string or you're not
replacing it with a single character, you need to specify a range instead
of a single index. Try:
;;blah = "foo"; blah[2..2] = ""; #2:tell(blah);