diff options
| -rw-r--r-- | docs/bqn.js | 5 | ||||
| -rw-r--r-- | test/cases/prim.bqn | 3 |
2 files changed, 7 insertions, 1 deletions
diff --git a/docs/bqn.js b/docs/bqn.js index b64ea1cc..0f310dbd 100644 --- a/docs/bqn.js +++ b/docs/bqn.js @@ -227,7 +227,10 @@ let m1 = m=>{let r= f =>setrepr(()=>[4,f,r ], m(f )); r.m=1; return r;} let m2 = m=>{let r=(f,g)=>setrepr(()=>[5,f,r,g], m(f,g)); r.m=2; return r;} let ctrans = (c,t) => String.fromCodePoint(c.codePointAt(0)+t); let plus = (x,w) => { - if (!has(w)) return x; + if (!has(w)) { + if (!isnum(x)) throw Error("+: Argument must be a number"); + return x; + } let s=typeof w, t=typeof x; if (s==="number" && t==="number") return w+x; if (s==="number" && t==="string") return ctrans(x,w); diff --git a/test/cases/prim.bqn b/test/cases/prim.bqn index 2b8ccdf7..6201414c 100644 --- a/test/cases/prim.bqn +++ b/test/cases/prim.bqn @@ -8,6 +8,9 @@ 'a'≡¯2+'c' ! % 'a'+'c' ! % F←-⋄f+2 +¯4≡+¯4 +! % +'x' +! % F←-⋄+f ¯∞≡1e6-∞ 4≡-¯4 ¯∞≡-∞ |
