Mercurial > repos > tabletprog
diff interp.js @ 213:e00a8bc6361b
Implement match:yield macro
author | Mike Pavone <pavone@retrodev.com> |
---|---|
date | Mon, 02 Dec 2013 00:50:16 -0800 |
parents | d0848563f25d |
children | adad61ea2f3a |
line wrap: on
line diff
--- a/interp.js Sat Nov 30 15:05:24 2013 -0800 +++ b/interp.js Mon Dec 02 00:50:16 2013 -0800 @@ -295,7 +295,11 @@ if (val) { var newnode = makeASTNode(val); if (!(newnode instanceof symbol)) { - newnode = newnode.quote(env); + if ('quote' in newnode) { + newnode = newnode.quote(env); + } else { + throw new Error('Symbol ' + this.name + ' is not bound to a valid AST value, instead it is bound to an object with keys ' + JSON.stringify(Object.keys(newnode))); + } } return newnode; } else {