diff options
author | jsdelfino <jsdelfino@13f79535-47bb-0310-9956-ffa450edef68> | 2009-10-11 00:01:04 +0000 |
---|---|---|
committer | jsdelfino <jsdelfino@13f79535-47bb-0310-9956-ffa450edef68> | 2009-10-11 00:01:04 +0000 |
commit | a64c1ec2a50f62d63872eac6bc740966602e87bd (patch) | |
tree | e4eab2e74b82eb51c4a5d9b3a132506895974f93 /cpp/sca/modules/eval/primitive.hpp | |
parent | 89246640ca239097800fed58e7abc5bc050e3f56 (diff) |
Some code cleanup, removed unused functions, changed == empty-list to isNil to avoid unnecessary construction of empty lists, replaced some casts by generic declarations. Added simple maybe, failable and state monad classes to help return optional objects or failures and carry state around. Added utility functions to zip and unzip list.
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@823981 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/sca/modules/eval/primitive.hpp')
-rw-r--r-- | cpp/sca/modules/eval/primitive.hpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/cpp/sca/modules/eval/primitive.hpp b/cpp/sca/modules/eval/primitive.hpp index c31f276e2f..ece89e077d 100644 --- a/cpp/sca/modules/eval/primitive.hpp +++ b/cpp/sca/modules/eval/primitive.hpp @@ -70,13 +70,13 @@ const value valueEqual(list<value>& args) { } const value valueAdd(list<value>& args) { - if (cdr(args) == list<value>()) + if (isNil(cdr(args))) return (double)car(args); return (double)car(args) + (double)cadr(args); } const value valueSub(list<value>& args) { - if (cdr(args) == list<value>()) + if (isNil(cdr(args))) return (double)0 - (double)car(args); return (double)car(args) - (double)cadr(args); } @@ -95,7 +95,7 @@ const value valueDisplay(list<value>& args) { } const value valueComment(list<value>& args) { - *evalOut << "# " << car(args); + *evalOut << "; " << car(args); return true; } |