diff options
-rw-r--r-- | repl.mu | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/repl.mu b/repl.mu index 35bc6f93..54c014fb 100644 --- a/repl.mu +++ b/repl.mu @@ -172,7 +172,9 @@ recipe slurp-string [ break-unless string?:boolean print-character x:address:screen, c:character, 6:literal/cyan result:address:buffer <- buffer-append result:address:buffer, c:character + # make a recursive call to handle nested strings result:address:buffer, tmp:number, k:address:keyboard, x:address:screen <- slurp-string result:address:buffer, k:address:keyboard, x:address:screen + # but if we backspace over a completed string handle it in the caller characters-slurped:number <- add characters-slurped:number, tmp:number, 1:literal # for the leading '[' loop +next-character:label } |