about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2015-05-23 12:35:10 -0700
committerKartik K. Agaram <vc@akkartik.com>2015-05-23 12:38:16 -0700
commit60f68dcf1ee09b7fb578516437a1e4c726d30b1f (patch)
tree363f8e9e98ddd204bae331588d65bbd9160eb0b2
parent047296d811b062477715e3435e1b49ae63d54501 (diff)
downloadmu-60f68dcf1ee09b7fb578516437a1e4c726d30b1f.tar.gz
1435
-rw-r--r--060string.mu10
1 files changed, 7 insertions, 3 deletions
diff --git a/060string.mu b/060string.mu
index 338748fc..480f7db5 100644
--- a/060string.mu
+++ b/060string.mu
@@ -311,9 +311,10 @@ scenario integer-to-decimal-digit-negative [
   ]
 ]
 
+# result:address:array:character <- string-append a:address:array:character, b:address:array:character
 recipe string-append [
   default-space:address:array:location <- new location:type, 30:literal
-  # result = new string[a.length + b.length]
+  # result = new character[a.length + b.length]
   a:address:array:character <- next-ingredient
   a-len:number <- length a:address:array:character/deref
   b:address:array:character <- next-ingredient
@@ -494,9 +495,11 @@ scenario interpolate-at-end [
   ]
 ]
 
+# result:boolean <- space? c:character
 recipe space? [
   default-space:array:address:location <- new location:type, 30:literal
   c:character <- next-ingredient
+  # most common case first
   result:boolean <- equal c:character, 32:literal/space
   jump-if result:boolean, +reply:label
   result:boolean <- equal c:character, 10:literal/newline
@@ -557,6 +560,7 @@ recipe space? [
   reply result:boolean
 ]
 
+# result:address:array:character <- trim s:address:array:character
 recipe trim [
   default-space:array:address:location <- new location:type, 30:literal
   s:address:array:character <- next-ingredient
@@ -587,8 +591,8 @@ recipe trim [
     end:number <- subtract end:number, 1:literal
     loop
   }
-  # create result
-  new-len:number <- subtract end:number, start:number, -1:literal  # end-start+1
+  # result = new character[end+1 - start]
+  new-len:number <- subtract end:number, start:number, -1:literal
   result:address:array:character <- new character:type, new-len:number
   # i = start, j = 0
   i:number <- copy start:number