Example #1
0
        public void EvalChart(RCRunner runner, RCClosure closure, RCDouble right)
        {
            RCCube result = new RCCube(new RCArray <string> ("S"));

            DoChart <double> (result, RCSymbolScalar.Empty, 0, 0, right);
            runner.Yield(closure, result);
        }
Example #2
0
 public void EvalTo(RCRunner runner, RCClosure closure, RCDouble left, RCDouble right)
 {
     double[] result = new double[(int)right[0] - (int)left[0] + 1];
     for (double i = 0; i < result.Length; ++i)
     {
         result[(int)i] = left[0] + i;
     }
     runner.Yield(closure, new RCDouble(result));
 }
Example #3
0
        public static RCBlock DoAt(RCClosure closure, RCBlock left, RCDouble right)
        {
            RCBlock result = RCBlock.Empty;

            for (int i = 0; i < right.Count; ++i)
            {
                RCBlock next = left.GetName((long)right[i]);
                result = new RCBlock(result, next.Name, next.Evaluator, next.Value);
            }
            return(result);
        }
Example #4
0
        public void EvalTree(RCRunner runner, RCClosure closure, RCDouble right)
        {
            RCCube   result = new RCCube(new RCArray <string> ("S"));
            TreeNode root   = new TreeNode(RCSymbolScalar.Empty, RCSymbolScalar.Empty);

            root.children = new RCArray <TreeNode> ();
            DoTree <double> (root, right, ref root.n, ref root.g, Aread, Formatd);
            LayoutBottomUp(root, 0);
            LayoutTree(0, root);
            WriteTree(result, root);
            runner.Yield(closure, result);
        }
Example #5
0
 static Constant()
 {
     _values[new RCSymbolScalar(null, "pi")]        = new RCDouble(Math.PI);
     _values[new RCSymbolScalar(null, "e")]         = new RCDouble(Math.E);
     _values[new RCSymbolScalar(null, "maxl")]      = new RCLong(long.MaxValue);
     _values[new RCSymbolScalar(null, "minl")]      = new RCLong(long.MinValue);
     _values[new RCSymbolScalar(null, "maxd")]      = new RCDouble(double.MaxValue);
     _values[new RCSymbolScalar(null, "mind")]      = new RCDouble(double.MinValue);
     _values[new RCSymbolScalar(null, "maxm")]      = new RCDecimal(decimal.MaxValue);
     _values[new RCSymbolScalar(null, "minm")]      = new RCDecimal(decimal.MinValue);
     _values[new RCSymbolScalar(null, "nan")]       = new RCDouble(double.NaN);
     _values[new RCSymbolScalar(null, "epsilon")]   = new RCDouble(double.Epsilon);
     _values[new RCSymbolScalar(null, "infinity")]  = new RCDouble(double.PositiveInfinity);
     _values[new RCSymbolScalar(null, "ninfinity")] = new RCDouble(double.NegativeInfinity);
 }
Example #6
0
 public void EvalRange(RCRunner runner, RCClosure closure, RCLong left, RCDouble right)
 {
     runner.Yield(closure, DoRange <double> (left, right));
 }
Example #7
0
 public void EvalRank(RCRunner runner, RCClosure closure, RCSymbol left, RCDouble right)
 {
     runner.Yield(closure, new RCLong(RankUtils.DoRank <double> (Sort.ToDir(left), right)));
 }
Example #8
0
 public void EvalOperator(RCRunner runner, RCClosure closure, RCDouble left, RCDouble right)
 {
     runner.Yield(closure, DoFind <double> (left, right));
 }
Example #9
0
 public void EvalFirst(RCRunner runner, RCClosure closure, RCDouble right)
 {
     runner.Yield(closure, new RCDouble(right[0]));
 }
Example #10
0
 public void EvalSort(RCRunner runner, RCClosure closure, RCSymbol left, RCDouble right)
 {
     runner.Yield(closure, new RCDouble(DoSort <double> (ToDir(left), right)));
 }
Example #11
0
 public void EvalCount(RCRunner runner, RCClosure closure, RCDouble right)
 {
     runner.Yield(closure, new RCLong(right.Count));
 }
Example #12
0
 public void EvalFrom(RCRunner runner, RCClosure closure, RCDouble left, RCBlock right)
 {
     runner.Yield(closure, DoAt(closure, right, left));
 }
Example #13
0
 public void EvalExcept(RCRunner runner, RCClosure closure, RCDouble left, RCDouble right)
 {
     runner.Yield(closure, new RCDouble(DoExcept <double> (left, right)));
 }
Example #14
0
 public void EvalOperator(RCRunner runner, RCClosure closure, RCBoolean left, RCDouble right)
 {
     runner.Yield(closure, DoAt <bool> (closure, left, right));
 }
Example #15
0
 public void EvalFrom(RCRunner runner, RCClosure closure, RCDouble left, RCTime right)
 {
     runner.Yield(closure, DoAt <RCTimeScalar> (closure, right, left));
 }
Example #16
0
 public void EvalFrom(RCRunner runner, RCClosure closure, RCDouble left, RCString right)
 {
     runner.Yield(closure, DoAt <string> (closure, right, left));
 }
Example #17
0
 public void EvalFrom(RCRunner runner, RCClosure closure, RCDouble left, RCDecimal right)
 {
     runner.Yield(closure, DoAt <decimal> (closure, right, left));
 }
Example #18
0
 public void EvalFrom(RCRunner runner, RCClosure closure, RCByte left, RCDouble right)
 {
     runner.Yield(closure, DoAt <double> (closure, right, left));
 }
Example #19
0
 public void EvalSort(RCRunner runner, RCClosure closure, RCDouble right)
 {
     runner.Yield(closure, new RCDouble(DoSort <double> (SortDirection.asc, right)));
 }
Example #20
0
 public void EvalOperator(RCRunner runner, RCClosure closure, RCDouble left, RCDecimal right)
 {
     runner.Yield(closure, DoAt <double> (closure, left, right));
 }
Example #21
0
 public void EvalShuffle(RCRunner runner, RCClosure closure, RCLong left, RCDouble right)
 {
     runner.Yield(closure, new RCDouble(DoShuffle <double> (new Random((int)left[0]), right)));
 }
Example #22
0
 public void EvalOperator(RCRunner runner, RCClosure closure, RCLong left, RCDouble right)
 {
     runner.Yield(closure, DoAt <long> (closure, left, right));
 }
Example #23
0
 public void EvalRepeat(RCRunner runner, RCClosure closure, RCLong left, RCDouble right)
 {
     runner.Yield(closure, new RCDouble(DoRepeat <double> (left, right)));
 }
Example #24
0
 public void EvalInter(RCRunner runner, RCClosure closure, RCDouble left, RCDouble right)
 {
     runner.Yield(closure, new RCDouble(DoInter <double> (left, right)));
 }
Example #25
0
 public void EvalLast(RCRunner runner, RCClosure closure, RCDouble right)
 {
     runner.Yield(closure, new RCDouble(right[right.Count - 1]));
 }
Example #26
0
 public void EvalWhere(RCRunner runner, RCClosure closure, RCDouble left, RCBoolean right)
 {
     runner.Yield(closure, DoWhere <double> (left, right));
 }
Example #27
0
 public void EvalRest(RCRunner runner, RCClosure closure, RCDouble right)
 {
     runner.Yield(closure, new RCDouble(DoRest <double> (right.Data)));
 }
Example #28
0
 public void EvalUnique(RCRunner runner, RCClosure closure, RCDouble right)
 {
     runner.Yield(closure, new RCDouble(DoUnique <double> (right)));
 }
Example #29
0
 public void EvalUnion(RCRunner runner, RCClosure closure, RCDouble left, RCDouble right)
 {
     runner.Yield(closure, new RCDouble(DoUnion <double> (left, right)));
 }
Example #30
0
 public void EvalRank(RCRunner runner, RCClosure closure, RCDouble right)
 {
     runner.Yield(closure, new RCLong(RankUtils.DoRank <double> (SortDirection.asc, right)));
 }