diff options
| author | Joel Martin <github@martintribe.org> | 2015-02-08 13:18:08 -0600 |
|---|---|---|
| committer | Joel Martin <github@martintribe.org> | 2015-02-08 23:51:22 -0600 |
| commit | 6d12affa8bc91a6662e8d4bdcc66a6963b77e947 (patch) | |
| tree | 644d5a482081600faafc09e679fb1006796de659 /matlab/core.m | |
| parent | d6624158bdf41e047ad8d0a9942238dc80649901 (diff) | |
| download | mal-6d12affa8bc91a6662e8d4bdcc66a6963b77e947.tar.gz mal-6d12affa8bc91a6662e8d4bdcc66a6963b77e947.zip | |
matlab: all step4 except optional.
Diffstat (limited to 'matlab/core.m')
| -rw-r--r-- | matlab/core.m | 38 |
1 files changed, 33 insertions, 5 deletions
diff --git a/matlab/core.m b/matlab/core.m index 968b9a4..8a64934 100644 --- a/matlab/core.m +++ b/matlab/core.m @@ -1,16 +1,44 @@ classdef core methods(Static) + function str = pr_str(varargin) + strs = cellfun(@(s) printer.pr_str(s,true), varargin, ... + 'UniformOutput', false); + str = strjoin(strs, ' '); + end + function str = do_str(varargin) + strs = cellfun(@(s) printer.pr_str(s,false), varargin, ... + 'UniformOutput', false); + str = strjoin(strs, ''); + end + function ret = prn(varargin) + strs = cellfun(@(s) printer.pr_str(s,true), varargin, ... + 'UniformOutput', false); + fprintf('%s\n', strjoin(strs, ' ')); + ret = types.nil; + end + function ret = println(varargin) + strs = cellfun(@(s) printer.pr_str(s,false), varargin, ... + 'UniformOutput', false); + fprintf('%s\n', strjoin(strs, ' ')); + ret = types.nil; + end + function n = ns() n = containers.Map(); - n('=') = @(a,b) a==b; + n('=') = @types.equal; + + n('pr-str') = @core.pr_str; + n('str') = @core.do_str; + n('prn') = @core.prn; + n('println') = @core.println; n('<') = @(a,b) a<b; n('<=') = @(a,b) a<=b; n('>') = @(a,b) a>b; n('>=') = @(a,b) a>=b; - n('+') = @(a,b) a+b; - n('-') = @(a,b) a-b; - n('*') = @(a,b) a*b; - n('/') = @(a,b) floor(a/b); + n('+') = @(a,b) a+b; + n('-') = @(a,b) a-b; + n('*') = @(a,b) a*b; + n('/') = @(a,b) floor(a/b); n('list') = @(varargin) varargin; n('list?') = @iscell; |
